websql
使用HBuider写了一个测试websql的app,发现一个问题:同样的sql语句在chrome中可以成功执行,在ios app中就报错,记录一下。
function websqlCreateTable(tablename){
var creatTableSQL = 'CREATE TABLE IF NOT EXISTS '+ tablename+' (rowid INTEGER PRIMARY KEY AUTOINCREMENT,NAME,AGE,HEIGHT,WEIGTH)';
dataBase.transaction(function(ctx,result){
ctx.executeSql(creatTableSQL,[],function(ctx,result){
alert("表创建成功:"+tablename);
},function(tx,error){
alert("表创建失败:"+tablename+" " +error.message);
});
});
}
function websqlInsertDataToTable(tablename,name,age,height,zhong){
var insertTableSQL='INSERT INTO ' + tablename + ' (name,age,height,weigth) VALUES (?,?,?,?)'
var ret = 0;
dataBase.transaction(function(ctx){
ctx.executeSql(insertTableSQL,[name,age,height,zhong],function (ctx,result){
console.log("插入" + tablename + name + "成功");
},
function (tx, error) {
alert('插入失败: ' + error.message);
console.log(error.message);
ret = 1;
});
});
return ret;
}
以上代码在iso app中能成功执行。
如果将最后一个字段值 weigth改为其他名称,如:web, APP就报错了 could not prepare statement (1 table websqlTable has no column named web),,但是在chrome中调试时可以的。很奇怪,没找到解决办法,希望知道的能回复下。
浙公网安备 33010602011771号