gpt4 book ai didi

JavaScript 显示 Sq lite 数据插入错误

转载 作者:行者123 更新时间:2023-12-03 08:48:08 26 4
gpt4 key购买 nike

如果捕获,我正在尝试在警报中显示 SQL 错误,但我不确定如果我添加错误处理程序,我会在哪里出错,尽管唯一列中存在重复的值条目,但什么也没有显示。

JS Fiddle Demo

 var db = openDatabase("demo", "1.0", "demo", 200000);

db.transaction(function(tx) {
tx.executeSql( "CREATE TABLE IF NOT EXISTS test (Slno INTEGER PRIMARY KEY AUTOINCREMENT, column1 TEXT UNIQUE, column2 TEXT UNIQUE, column3 TEXT UNIQUE, column4 TEXT UNIQUE, column5 TEXT UNIQUE)");
});

插入查询:

db.transaction(function(tx) {
tx.executeSql("INSERT INTO test (column1, column2 ,column3, column4,column5) VALUES ('insert1','insert2','insert3','insert4','insert5'),
('insert1','insert2','insert3','insert4','insert5');",errorHandler);
});

错误处理程序:

function errorHandler(transaction, error) {
alert("Error : " + error.message);
}

最佳答案

我读到SQLTransaction - JavaScript API Documentation并发现这段代码可以工作。

 var db = openDatabase("demo", "1.0", "demo", 200000);

db.transaction(function(tx) {
tx.executeSql( "CREATE TABLE IF NOT EXISTS test (Slno INTEGER PRIMARY KEY AUTOINCREMENT, column1 TEXT UNIQUE, column2 TEXT UNIQUE, column3 TEXT UNIQUE, column4 TEXT UNIQUE, column5 TEXT UNIQUE)");
},errorHandler);

db.transaction(function(tx) {
tx.executeSql("INSERT INTO test (column1, column2 ,column3, column4,column5) VALUES ('insert1','insert2','insert3','insert4','insert5'),('insert1','insert2','insert3','insert4','insert5');");
},errorHandler);


function errorHandler(error) {
alert("Error : " + error.message);
}
  • errorHandler 不应传递给 tx.executeSql,而应传递给 db.transaction
  • error 对象作为 errorHandler 的第一个参数传递,而不是第二个参数。

此代码适用于我的 Google Chrome 45.0.2454.99 m(64 位)。

关于JavaScript 显示 Sq lite 数据插入错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32797282/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com