2011-04-05 113 views
0

我的代码如下是Android的简单钛移动应用程序。我实现了数据库来创建一个表。但我写的代码不适合我。我也在资源文件夹中创建了db文件。但是数据库没有变化。我的代码连接数据库是否正确?有人请验证我的代码并回答我的查询。无法访问钛移动数据库

var win = Ti.UI.createWindow({ 
    title:'Window', 
    backgroundColor:'black', 
    borderColor:'grey' 
}); 

var label1 = Ti.UI.createLabel({ 
    text:'Welcome to new Window', 
    color:'white', 
    font:{fontSize:20}, 
    top:10 
}); 

var text1 = Ti.UI.createTextField({ 
    top:50,width:200 
}); 

var text2 = Ti.UI.createTextField({ 
    top:100,width:200 
}); 

var db = Titanium.Database.open('testdb'); 

db.execute('INSERT INTO tips (title, tip) VALUES(?,?)','santhosh','sathya'); 

db.close(); 

win.add(label1); 

win.add(text1); 

win.add(text2); 

win.open({fullscreen:false}); 

回答

0

如果你希望你的应用程序使用现有的SQLite数据库文件,则必须先安装它。

Titanium.Database.install('path/to/file.s3db', 'testdb'); 

但是,要知道,一旦你安装它,您可以指定上述文件不是这将是由应用程序使用的数据库。每this guide

在另一方面,install()将复制 预先存在的数据库文件从 钛的Resources目录,或一个 它的后代,要 applicationDataDirectory/../databases/ 并返回一个参考打开 数据库。

0

我在启动时也有同样的问题。我给你一步一步的答案。

让我们尝试整理一下你的问题:

    后您创建的数据库
  1. 在您的应用程序资源文件夹。你首先清理或项目。
  2. 妳比通过代码(Titanium.database.install('.....sqlite','<database>');
  3. 比开放properally安装:db=Titanium.database.open(<database>);
  4. 不是执行:db.execute(' your Syntax ');
  5. 比关闭:db.close();