首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >预准备语句中布尔列的C数据类型是什么?

预准备语句中布尔列的C数据类型是什么?
EN

Stack Overflow用户
提问于 2019-03-14 09:10:50
回答 1查看 128关注 0票数 0

可以使用Create boolean column in MySQL with false as default value中详细介绍的BOOLEAN数据类型创建列。例如:

代码语言:javascript
复制
CREATE TABLE Persons (
  ID int NOT NULL,
  LastName varchar(255),
  FirstName varchar(255),
  Married boolean DEFAULT false
);

MySQL数据类型,如MYSQL_TYPE_INTMYSQL_TYPE_STRING,在23.8.9.1 C API Prepared Statement Type Codes的手册中有详细介绍。但是,本手册没有讨论BOOLEAN数据类型,也没有讨论如何在预准备语句中使用它。例如:

代码语言:javascript
复制
#include <stdbool.h>
#include <mysql/mysql.h>

MYSQL_BIND bind[1];
...

bool val = false;
unsigned long len;
len = sizeof(???);

bind[0].buffer_type= MYSQL_TYPE_<???>;
bind[0].buffer= (char*)&val;
bind[0].buffer_length = len;
bind[0].is_null= 0;
bind[0].length= &len;

我们对BOOLEAN类型使用什么数据类型,以及如何计算MYSQL_BIND.buffer_length

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-14 09:14:36

在MySQL中,BOOLEAN is a synonym for TINYINT(1)

因此,您将使用MYSQL_TYPE_TINY绑定类型。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55153466

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档