C++ sqlite3 0x00007FF9DA42F621 (ucrtbased.dll)处(位于 TestSqlite.exe 中)引发的异常: 0xC0000005: 读取位置 0x000000

最近使用C++ Sqlite3,通过回调函数获取查询的结果时报的错。
搞了一上午不知道什么情况,后来发现是因为创建sqlite3时没有创建自增主键id,而sqlite3自动创建了一个id字段,但是该id不是必须存在自增的,所以返回null.
导致通过column_value[i]获取值时报的错误

sqlite3创建自增主键id语句

string createsql = "create table if not exists dtable  (id  INTEGER PRIMARY KEY AUTOINCREMENT  NOT NULL,name varchar(50),comment text,_id varchar(50))";

你可能感兴趣的:(C++,sqlite3,C++,sqlite3,自增)