Sqlite 关于blob数据存储,存入的数据长度不对

希望存的是上万的byte数组,但是存进去的只有一小部分。直接上代码和图:
CString tmp;
tmp.Format("insert into DigiSprInfo( samplecount,"\
"lat,long,heigh,radarheigh,ggcount,ggtime,sprttotalnum,"\
"sprttype,data) values(%d,%f,%f,%f,%f,%d,%d,%d,%d,?);",

DataInfo_all->SampleCount,
DataInfo_all->Long,
DataInfo_all->Lat,
DataInfo_all->Height,
DataInfo_all->Radaheight,
DataInfo_all->GGCount,
DataInfo_all->GGTime,
DataInfo_all->SprtTotalNum,
DataInfo_all->SprtType,
DataInfo_all->DataSpr);
//插入数据
sqlite3_prepare(m_pGlobalDB,tmp,-1,&stmt,&pzTail); //准备执行语句,实际并不执行
sqlite3_bind_blob(stmt,1,DataInfo_all->DataSpr,DataInfo_all->datalen-108,NULL); //附加值
//sqlite3_bind_blob(stmt,1,DataInfo_all->DataSpr,DataInfo_all->datalen-108,NULL); //附加值
int JG = sqlite3_step(stmt); //执行prepare语句
if ( JG !=SQLITE_DONE )
{
JG = 111;
}
sqlite3_finalize(stmt); //释放对象

sqlite3_close(m_pGlobalDB);
执行的结果:是只有几个数据

存到数据库的只有 01 01 02 00 00 00 00 00 EE 01 15 01 A9 00 7A 这么长,求解!!!

是不是参数给错了? 大概看了下SQLITE的文档,sqlite3_bind_blob函数的第二个参数应该是SQL语句中参数的序号(从1开始)。 参见: https://sqlite.org/c3ref/bind_blob.html。 部分内容节选如下: The second argument is the index of the SQL parameter to be set. The leftmost SQL parameter has an index of 1. When the same named SQL parameter is used more than once, second and subsequent occurrences have the same index as the first occurrence. The index for named parameters can be looked up using the sqlite3_bind_parameter_index() API if desired. The index for "?NNN" parameters is the value of NNN. The NNN value must be between 1 and the sqlite3_limit() parameter SQLITE_LIMIT_VARIABLE_NUMBER (default value: 999).