Javascript 从WebSQL命令捕获错误
为了进一步了解WebSQL,我在javascript代码中遇到了一个“ErrorUndefined”。我已经测试了代码,似乎找不到错误。但是,将创建数据库“To Do”,而不是表“Tasks”。有人能帮忙吗Javascript 从WebSQL命令捕获错误,javascript,html,web-sql,Javascript,Html,Web Sql,为了进一步了解WebSQL,我在javascript代码中遇到了一个“ErrorUndefined”。我已经测试了代码,似乎找不到错误。但是,将创建数据库“To Do”,而不是表“Tasks”。有人能帮忙吗 <!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>Untitled Document</title>
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
<script type="text/javascript" src="../js/jquery.js"></script>
<script>
var db = null;
var db = openDatabase('To Do', '1.0', 'To Do', 2 * 1024 * 1024);
db.transaction(function(tx) {
tx.executeSql('CREATE TABLE IF NOT EXISTS tasks (id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, create unique, name, description, due DATETIME)');
});
$('document').ready(function() {
var db = openDatabase('To Do', '1.0', 'To Do', 2 * 1024 * 1024);
db.transaction(function(tx) {
tx.executeSql('SELECT * FROM tasks', [], querySuccess, errorCB);
});
function querySuccess(tx, results) {
var len = results.rows.length;
if(len > 0) {
}else{
alert("You Have No Tasks");
}
}
function errorCB(err) {
alert("Error" + err.code);
}
});
</script>
</head>
<body>
<h1>Hello World!</h1>
</body>
</html>
无标题文件
var-db=null;
var db=openDatabase('To Do','1.0','To Do',2*1024*1024);
数据库事务(功能(tx){
tx.executeSql('CREATE TABLE IF NOT EXISTS tasks(id INTEGER NOT NULL主键自动递增,CREATE unique,name,description,due DATETIME));
});
$('document').ready(函数(){
var db=openDatabase('To Do','1.0','To Do',2*1024*1024);
数据库事务(功能(tx){
tx.executeSql('SELECT*fromtasks',[],querySuccess,errorCB);
});
函数查询成功(发送,结果){
var len=results.rows.length;
如果(len>0){
}否则{
警惕(“你没有任务”);
}
}
函数errorCB(err){
警报(“错误”+错误代码);
}
});
你好,世界!
调试程序时遇到的主要问题是错误回调的签名不正确,它传递两个参数,一个是事务,另一个是错误(类似于成功回调传递事务和结果的方式)
如果将错误CB
更改为
function errorCB(tx,err) {
console.log(err);
}
您将看到错误是:
SQLError{代码:5,消息:“无法准备语句(1没有这样的表:任务)”}
实例:
如果您向原始CREATE TABLE
提供相同的回调,您将看到
SQLError{代码:5,消息:“无法准备语句(1靠近“create”:语法错误)”}
实例:请提供代码。我正在尝试为离线网站构建一个html5关系数据库,仅供内部使用,而不使用后端服务器。这是我到目前为止所有的代码。我无法通过javascript中的“ErrorUnfind”错误。