Sqlite3 查找的数据能不能够得到数据长度

Sqlite3 查找的数据能不能够得到数据长度

问题描述:

如果我用sqlite3_column_text读取数据库中的16进制数据,不免要读到0x00这种在char*看来是结束符的数据。
能不能读到查询的数据长度呢?

补充一下:数据库是别人的,还是经过加密的。我真心的修改不了数据库,又不能外部获取数据长度

找到答案了:sqlite3_column_bytes

你不能再追加一个字段用来存储长度么?如果是16进制数据而不是字符串,又是使用的定长的方式存储,显然不能将metadata和data混在一起。

一般都是用一个长度字段来表示数据长度