mysql用C++开发获取bit类型字段值方法

mysql用C++开发获取bit类型字段值方法,第1张

最近开发要用一个标志数据,就选择了mysql的BIT(1)数据类型,默认想着是整数类型的范畴,按整数数值来处理,结果不行,遇到了问题,这里整理给大家。

问题表现,用常用的办法获取到的字符是个方块,方块转布尔类型,根本转不了,值是错误的。普通的整数转换代码如下:

用上面的代码转换atoi转的是个方块,得不到数据库里的值,但是用mysql的客户端workbench正常没问题。

认真分析了取值用到的数组类型情况,用以下代码解决了问题:

上面代码对应的mysql是phpstudy里mysql 5.5.38版本,其它版本是不是这样不太确定。

另外可以用CAST进行数据类型转换,比如:

但这样写sql语句麻烦,不如直接用字段名方便,但改sql语句和改C++取值代码,看个人喜好,都可以解决问题。

整体代码如下:

如果需要这一套开发环境,也可以联系我,VS2010,MFC,mysql连接库,构造连接字符串,连接,执行sql语句,返回结果。

MySQL的数据类型

主要包括以下五大类:

整数类型:BIT、BOOL、TINY INT、SMALL INT、MEDIUM INT、 INT、 BIG INT

浮点数类型:FLOAT、DOUBLE、DECIMAL

字符串类型:CHAR、VARCHAR、TINY TEXT、TEXT、MEDIUM TEXT、LONGTEXT、TINY BLOB、BLOB、MEDIUM BLOB、LONG BLOB

日期类型:Date、DateTime、TimeStamp、Time、Year

其他数据类型:BINARY、VARBINARY、ENUM、SET、Geometry、Point、MultiPoint、LineString、MultiLineString、Polygon、GeometryCollection等


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/7257492.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-03
下一篇2023-04-03

发表评论

登录后才能评论

评论列表(0条)

    保存