0

我已成功将表添加到 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 + ')');
4

2 回答 2

0

你需要逃避测试。如果您考虑您的 SQL:

插入车辆检查(检查字段,类)值(测试,1)

您可以看到 Test 周围的单引号丢失。

不要忘记您也可以使用绑定参数。一个例子在这里:http ://www.raymondcamden.com/index.cfm/2011/10/20/Example-of-PhoneGaps-Database-Support

于 2013-07-26T00:27:46.543 回答
0

试试这个插入

tx.executeSql("insert into vehiclecheck(checkfield, class) values(?,?)",["Test",'1']);
于 2013-07-26T06:02:34.580 回答