【发布时间】:2012-10-20 12:03:24
【问题描述】:
function populateDB(tx)
{
tx.executeSql('DROP TABLE IF EXISTS test');
tx.executeSql('CREATE TABLE IF NOT EXISTS test(course TEXT, grade INTEGER)');
tx.executeSql('INSERT INTO test(course,grade) VALUES ("Geography, World",90)');
tx.executeSql('INSERT INTO test(course,grade) VALUES ("Health",92)');
tx.executeSql('INSERT INTO test(course,grade) VALUES ("Literature, English",91)');
tx.executeSql('INSERT INTO test(course,grade) VALUES ("Math 201",85)');
tx.executeSql('INSERT INTO test(course,grade) VALUES ("Science 202",95)');
}
function queryDB(tx)
{
tx.executeSql('SELECT * FROM test',[],querrySuccess,errorCB);
}
function querrySuccess(tx,results)
{
var len = results.rows.length;
alert("test TABLE: "+ len +"row(s) found");
for(var i=0;i<n;i++)
{
console.log("Row = " + i + " COURSE = " + results.rows.item(i).course + " GRADE = " + results.rows.item(i).grade);
}
}
function errorCB(err)
{
alert("Error processing SQL"+err.code);
}
function successCB()
{
alert("Success!");
}
function create_database()
{
var db = window.openDatabase("Database","1.0", "Demo DB", 200000);
db.transaction(populateDB,errorCB,successCB);
db.transaction(queryDB,errorCB);
}
在上面的代码中,我正在创建一个名为 test 的新数据库。当我的 html 表单加载时,函数 create_database() 被调用。我的问题是,它显示了显示行数的警报,但随后它给出了一个警报“错误处理 SQL”,即它被重定向到 errorCB 函数。是吗?我做错了吗? 提前致谢
【问题讨论】:
标签: javascript sqlite cordova