Javascript SQLite插入到表中,带有JSON.stringyfy。使用带引号的字符串中断

Javascript SQLite插入到表中,带有JSON.stringyfy。使用带引号的字符串中断,javascript,json,sqlite,Javascript,Json,Sqlite,我正在使用SQLite进行移动,主要用于混合移动应用程序开发 我将数据存储到这样一列中 var QueryToInsert = JSON.stringify(object) // where object is defined as below INSERT OR REPLACE INTO Table (id,data) VALUES ('1', " ' " + QueryToInsert + " ' " ); 这就变成了 INSERT OR REPLACE INTO Table (id,d

我正在使用SQLite进行移动,主要用于混合移动应用程序开发

我将数据存储到这样一列中

var QueryToInsert = JSON.stringify(object) // where object is defined as below

INSERT OR REPLACE INTO Table (id,data) VALUES ('1', " ' " + QueryToInsert + " ' " );
这就变成了

INSERT OR REPLACE INTO Table (id,data) VALUES ('1','[{"name":"Romeo","lastName":"Juliet"}]')
虽然这是可行的,但如果我有这样一个对象:

var object = {"name": "In connection with this appellative of 'Whalebone Whales' , it is of great..." }  
注意字符串中的'

现在如果我这样做了

 INSERT OR REPLACE INTO Table (id,data) VALUES ('1', " ' " + JSON.stringify(object) + " ' " );
这给了我一个错误:

{“code”:5,“message”:“near\“whalbone\”:语法错误”}

我尝试过的解决方案:

在进行查询之前,用一些字符替换所有的
。它确实可以工作,但是当有很多数据和表时,替换所有的
是一个缓慢的过程


我正在寻找任何能帮助我解决这个问题的解决方案

在SQL中,字符串中的单引号必须通过加倍来转义:

INSERT ... VALUES ('... of ''Whalebone Whales'' ...');
但是,通过使用参数可以更容易地避免此类格式问题:

tx.executeSql("INSERT OR REPLACE INTO Table (id,data) VALUES (?, ?);",
              ['1', JSON.stringify(object)],
              onSuccess, onError);

哦,我的错。我已经删除了我的答案:)谢谢你的澄清。