annan211 2016-02-26 16:02 采纳率: 0%
浏览 2989
已结题

mysql 数据库中 blob 类型存储数字 无法正常插入更新

事情是这样的,在Mysql数据库中有个字段是blob类型的,里面存放的是 8字节无符号整数,
类似于 33454690,45672389,这样一类数值,我使用select 语句select conv(hex(bc.DataTimeStamp) ,16,10) as DataTimestamp 是可以正常显示的,现在我想把
33454690 这个数字 查找出来,加1,变为 33454691,再存放回去。

使用语句 insert into VALUES (33454691) 或者 insert into VALUES (conv(33454691 ,10,16)) 或者 insert into VALUES (concat('0x',hex(33454691))) ,都是不行的,在更新之后 查询,发现都变了样 编程不是我想要的。

原因是 mysql 的转换函数 conv 、concat 函数都是返回的字符串,mysql 会把返回的结果 当做字符串 再进行二进制转换 保存进入 blob,结果就是错的了。

我仅仅是想实现 insert into values (0x22C304) ,但是我不知道 0x22C304 是怎么由 33454691 转换而来并且不被当做字符串处理的。

谢谢大家,在线等。

  • 写回答

2条回答 默认 最新

  • threenewbee 2016-02-26 22:49
    关注

    insert into VALUES (hex(33454691))
    不需要加上0x

    评论

报告相同问题?

悬赏问题

  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?