[mysql] 二进制数据编辑方法
来源:互联网 发布:java判断float整数 编辑:程序博客网 时间:2024/05/16 11:50
需求:按C++格式保存如下结构到mysql blob 字段
typedef struct _MailSubAttachHead{BYTE byType;BYTE byIdx;WORD wDataLen;INT iData1;INT iData2;}TMailSubAttachHead;
MYSQL 中的存储过程处理(注意变量定义要指定为CHARACTER SET 'latin1',否则会出现错误:DB默认是utf8)
ERROR 1366 (HY000): Incorrect string value: '\xE8\x03\x00\x00' for column '__AttachContent' at row 1
DROP FUNCTION IF EXISTS clr_int2byte;DELIMITER $$create function clr_int2byte(_data int unsigned )returns binary(4)begin return concat(char(_data & 0x000000FF),char(_data>>8 & 0x000000FF),char(_data>>16& 0x000000FF),char(_data>>24& 0x000000FF));end$$DELIMITER ;DROP FUNCTION IF EXISTS clr_word2byte;DELIMITER $$create function clr_word2byte(_data SMALLINT unsigned )returns binary(2)begin return concat(char(_data & 0x00FF),char(_data>>8 & 0x00FF));end$$DELIMITER ;DROP PROCEDURE IF EXISTS Prws_Game_CreateMail;DELIMITER $$CREATE DEFINER=`root`@`%` PROCEDURE test()BEGINDECLARE __AttachContent VARCHAR(2048) CHARACTER SET 'latin1' DEFAULT '';-- byType byIdx wDataLen iData1 iData2SET __AttachContent = CONCAT(__AttachContent, CHAR(1),CHAR(0),clr_word2byte(8), clr_int2byte(100) , clr_int2byte(200) );SET __AttachContent = CONCAT(__AttachContent, CHAR(1),CHAR(1),clr_word2byte(8), clr_int2byte(1100), clr_int2byte(2200));END;$$DELIMITER ;call Prws_test (1000);
- [mysql] 二进制数据编辑方法
- linux下二进制编辑方法
- MySQL存储二进制数据
- MySQL存储二进制数据
- mysql存取二进制数据
- C++ MySQL存储二进制数据
- thinkphp 读取mysql数据 编辑
- xhr获取二进制数据方法
- 57章:编辑和删除现有的二进制数据
- MySQL使用二进制日志来恢复数据
- MySQL中的二进制数据的存取
- MySQL--binlog二进制日志恢复数据
- MySql通过二进制日志文件恢复数据
- mysql 通过二进制日志恢复数据
- mysql数据库存储二进制数据 linux
- MySql如何插入和查询二进制数据
- MySql通过二进制日志文件恢复数据
- mysql中二进制形式保存文件数据
- Hibernate 一对多问题
- SqlHelper使用方法(转)
- 设置PATH
- 程序员怎么样才算成功呢?
- hdu 4350 Card 规律题 多校联合赛事
- [mysql] 二进制数据编辑方法
- 连续邮资问题
- CMP指令详解
- ava.lang.OutOfMemoryError: PermGen space及其解决方法(转)
- 内存对齐
- CSS中DIV定位
- c#, 枚举,Enum
- hdu_1253 胜利大逃亡(BFS)
- 一些iphone基础知识的整理