Javascript 如何在PhoneGap中创建数据库?
我是android PhoneGap的新手Javascript 如何在PhoneGap中创建数据库?,javascript,android,cordova,database-connection,Javascript,Android,Cordova,Database Connection,我是android PhoneGap的新手 <script type="text/javascript" charset="utf-8" src="js/cordova.js"></script> <script type="text/javascript" charset="utf-8"> document.addEventListener("deviceready", onDeviceReady, false); function on
<script type="text/javascript" charset="utf-8" src="js/cordova.js"></script>
<script type="text/javascript" charset="utf-8">
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
var db = window.openDatabase("raddyx", "1.0", "Cordova Demo", 200000);
db.transaction(populateDB, errorCB, successCB);
}
function populateDB(tx) {
tx.executeSql('DROP TABLE IF EXISTS DEMO');
tx.executeSql('CREATE TABLE IF NOT EXISTS DEMO (id unique, data)');
tx.executeSql('INSERT INTO DEMO (id, data) VALUES (1, "First row")');
}
function errorCB(tx, err) {
alert("Error processing SQL: "+err);
}
function successCB() {
alert("success!");
}
</script>
文件。添加的监听器(“deviceready”,OnDeviceraddy,false);
函数ondevicerady(){
var db=window.openDatabase(“raddyx”,“1.0”,“Cordova演示”,200000);
db.事务(填充B、错误CB、成功CB);
}
函数填充B(tx){
tx.executeSql('DROP TABLE IF EXISTS DEMO');
tx.executeSql('CREATE TABLE IF NOT EXISTS DEMO(id unique,data));
tx.executeSql('插入演示(id,数据)值(1,“第一行”);
}
功能错误CB(发送,错误){
警报(“处理SQL时出错:+err”);
}
函数successCB(){
警惕(“成功!”);
}
我正在使用上面的示例代码。我的数据库名raddyx
。我无法创建数据库。你能告诉我如何在PhoneGap中创建raddyx
数据库吗
编辑-当我在手机上运行它时,它会显示
不幸的是,这里的APP\u NAME\u已停止。
如果我删除连接代码,它工作正常。您可以使用以下功能创建数据库:
function queryDB() {
var db = window.openDatabase("Database", "1.0", "Cordova login", 300000);
db.transaction(inputDb, errorCB);
}
之后,调用函数inputDb,如下所示:
function inputeDb(db2) {
db2.executeSql('DROP TABLE IF EXISTS login');
db2.executeSql('CREATE TABLE IF NOT EXISTS login (id_Login INTEGER PRIMARY KEY AUTOINCREMENT, UserName VARCHAR(150) NULL, UserPassword VARCHAR(100) NULL, UserHash VARCHAR(50) NULL)');
db2.executeSql('INSERT INTO login (UserName, UserPassword) VALUES ("'+uname1+'", "'+upass1+'")');
db2.executeSql('DROP TABLE IF EXISTS MDataT');
db2.executeSql('CREATE TABLE IF NOT EXISTS MDataT (id_MData INTEGER PRIMARY KEY, MData INTEGER)');
db2.executeSql('INSERT INTO MDataT (id_MData, MData) VALUES ("1", "'+MData+'")');
//alert("Username and Password - Set in DB");
location.href="serverLogin.html";
}
请检查并确认我的应用程序已成功运行。但当我连接到数据库时,我收到
不幸的是,Raddyx已停止。
错误消息。您能否尝试在开始时在populateDB()
中放置alert()
stmt,以检查它是否执行该函数。ondevicerady()
函数正在执行吗?您需要检查每个函数,并确定它是否被调用。很难知道您提供的信息存在哪些问题。您正在开发哪个版本的cordova?