> 데이터 베이스 > MySQL 튜토리얼 > 二进制-mysql 数据库中 blob 类型存储数字 无法正常插入更新

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

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
풀어 주다: 2016-06-06 09:34:07
원래의
1154명이 탐색했습니다.

二进制数据库存储mysql

事情是这样的,在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 转换而来并且不被当做字符串处理的。

谢谢大家,在线等。

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿