我正在成功地将一个表添加到sql lite数据库中,但是我正在努力将语法写入表中,请查看下面的代码并告诉我正确的语法。
抱歉代码!
var db = window.openDatabase("Database", "1.0", "GBA", 200000);
db.transaction(populateDB, errorCB, successCB);
}
// Populate the database
//
function populateDB(tx) {
tx.executeSql('DROP TABLE IF EXISTS vehiclecheck');
tx.executeSql('CREATE TABLE IF NOT EXISTS vehiclecheck (id INTEGER PRIMARY KEY AUTOINCREMENT, checkfield VARCHAR(12), class INTEGER)');
tx.executeSql('INSERT INTO vehiclecheck (checkfield, class) VALUES (' + 'Test' + ',' + 1 + ')');
答案 0 :(得分:0)
你需要逃避测试。如果你考虑你的SQL:
INSERT INTO vehiclecheck(checkfield,class)VALUES(Test,1)
您可以看到Test周围的单引号丢失。
不要忘记你也可以使用绑定的params。这里有一个例子:http://www.raymondcamden.com/index.cfm/2011/10/20/Example-of-PhoneGaps-Database-Support
答案 1 :(得分:0)
尝试此插入
tx.executeSql("insert into vehiclecheck(checkfield, class) values(?,?)",["Test",'1']);