- 论坛徽章:
- 0
|
请问如何把一段报文(中间有0x00)插入到数据库表的BLOB类型的字段中,原来是方式是:
EXEC SQL BEGIN DECLARE SECTION;
char blobMsg[100];
SQL TYPE IS BLOB_LOCATOR blobMsg;
EXEC SQL END DECLARE SECTION;
EXEC SQL include sqlca;
EXEC SQL include sqlda;
int testBlob()
{
memset(&blobMsg, 0, sizeof(blobMsg));
blobMsg[0] = 0x30;
blobMsg[1] = 0x30;
blobMsg[2] = 0x00;
blobMsg[3] = 0x30;
blobMsg[4] = 0x30;
......
/*转换为BLOB类型*/
EXEC SQL VALUES(BLOB(:blobMsg)) INTO :blobMsg;
EXEC SQL INSERT INTO TBL_TEST_BLOB VALUES(:blobMsg);
}
表只有一个BLOB字段,这样数据是可以插入,但是从blobMsg[2]后面的数据就没保存进去,相当于遇到0x00就被截断了,请高手解答。
或者有类似经历的大侠分享下经验,谢谢 |
|