Bug:Sqlite3插入时由于json不能识别传入的单引号字符串引起的问题

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chinaclock/article/details/48516733

由于现有的sqlite3在实际使用中被封装了一层,昨天在调试写测试例子时碰到一个问题,

sqlie3_exec函数在执行sql的insert语句时,总是报错,不能识别字符串.\

经过检查:

由于封装的上层输入参数是通过Json来作为各个参数,或者记录输入的.

而传入时,

json::value rec;

rec['filed']='string';

insert(rec);

这样写的原因是,当时直接从sqlite3里把原有数据库中的记录导出来,想直接使用,而数据中的记录时由于sqlite3中是直接使用单引号括起来的(当然实际输入时字符串用单引号或者双引号括起来,其实sqlite3都能识别.).但是在json的使用中,这样就会造成传入的值不符合要求,json无法识别单引号包裹的字符串.

改成如下,就ok了:

rec['filed']="string";


阅读更多
换一批

没有更多推荐了,返回首页