PhoneGap 中的数据库条目出现问题
Issue with database entry in PhoneGap.
我正在使用PhoneGap开发相机应用程序。
我试图完成的事情是,当我的应用程序拍照并将图片存储在应用程序目录中时,我想在数据库中插入一个条目,其中包含文件名、路径和上传的标志条目。
我这样做有问题。而且我不确定问题发生在哪里。
用于创建数据库和表然后插入条目的代码如下所示。我在文件已经保存在应用程序目录中后调用"insertInTable"函数。
function insertInTable(name, path)
{
var db = window.openDatabase('taukydb', '1.0', 'Tauky Database', 200000);
db.transaction(populateDB, errorCB, successCB);
//db.transaction(successCB, errorCB, );
//return();
}
function populateDB(tx) {
tx.executeSql('CREATE TABLE IF NOT EXISTS taukytb (name UNIQUE, path, uploaded)');
tx.executeSql('INSERT INTO taukytb (name, path, uploaded) VALUES (filename, filepath, 0)');
}
// Transaction success callback
function successCB() {
alert("Hurrey!!!");
//this is just for testing
var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000);
db.transaction(queryDB, errorCB);
}
function queryDB(tx) {
tx.executeSql('SELECT * FROM taukytb', [], querySuccess, errorCB);
}
function querySuccess(tx, results) {
var len = results.rows.length;
alert(len);
}
// Transaction error callback
function errorCB1(err) {
alert("Error 11111 processing SQL: "+err.code);
//console.log("Error processing SQL: "+err.code);
}
// Transaction error callback
function errorCB(err) {
alert("Error processing SQL: "+err.code);
//console.log("Error processing SQL: "+err.code);
}
当我运行此代码时,函数"succesCB"永远不会被调用,也不会调用错误CB。
请看一下这个。我是移动开发的新手,从现在开始我就一直坚持这个问题。
提前致谢
我做了一些更改来使其工作。
tx.executeSql('INSERT INTO taukytb (name, path, uploaded) VALUES ("'+filename+'", "'+filepath+'", 0)');
此更改将在查询执行正常时调用successCB
。
function successCB() {
alert("Hurrey!!!");
//this is just for testing
var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000);
db.transaction(queryDB, errorCB);
}
function queryDB(tx) {
tx.executeSql('SELECT * FROM taukytb', [], querySuccess, errorCB);
}
但是,此方法不会按预期工作,因为您正在创建第二个数据库,提供该数据库的事务,但随后查询第一个数据库的表。
下面是完整的源代码示例,它创建两个数据库,其中两个数据库都具有相同的表
https://gist.github.com/3058562
对 phonegap 了解不多,但创建表语句似乎缺少某些类型。
还有这一行:
tx.executeSql('INSERT INTO taukytb (name, path, uploaded) VALUES (filename, filepath, 0)');
什么是文件名?
相关文章:
- 使用 jQuery UI 折叠面板显示 couchDB 数据库搜索结果时出现问题
- Ajax发布到PHP脚本,每5秒查询一次MySQL数据库的性能/问题
- 将捕获的图像插入数据库问题(Cordova/SQlite/JavaScript)
- 使用数据库中的图像填充dropzone.js删除图像的问题
- PhoneGap 中的数据库条目出现问题
- 在调用 ajax 和查询数据库时遇到问题
- 通过node-js脚本将文档数组插入mongodb中的数据库时出现问题
- 使用 sequelize ORM 连接到节点上的 Amazon RDS Postgres 数据库.js出现问题
- jquery下拉列表和发布到SQL数据库问题
- 根据类别从数据库中调用不同类型的问题
- 电影数据库“访问控制允许来源”问题
- 使用html、php、js从数据库中删除行时出现问题
- 可排序数据和更新数据库问题
- 在javascript中插入SQLite数据库时出现问题
- 在不处理数据库的情况下解决相同的问题
- couchDB数据库根问题
- 角度拖放保存在数据库中的位置和屏幕大小调整问题
- 与数据库的连接以及与输入处理有关的离子问题
- 通过javascript函数从数据库获取php数据时出现问题
- 在原生脚本应用程序中显示sqlite数据库数据有问题