解决方法
从
sqllite documentation:
The pointers returned are valid until a type conversion occurs or until sqlite3_step() or sqlite3_reset() or sqlite3_finalize() is called. The memory space used to hold strings and BLOBs is freed automatically. Do not pass the pointers returned by sqlite3_column_blob() into sqlite3_free().