下面的代码是一款适用于Android的简单Titanium移动应用程序。我实现了数据库来创建一个表。但我写的代码对我不起作用。我也在资源文件夹中创建了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 :(得分:0)
您的数据库不能位于您的资源文件夹中,该目录只能从应用程序的角度阅读。
请查看此文档
http://wiki.appcelerator.org/display/td/250+Working+With+Local+Data
https://github.com/appcelerator/KitchenSink/blob/master/Resources/examples/database.js
答案 1 :(得分:0)
如果您希望应用程序使用现有的SQLite数据库文件,则必须先安装它。
Titanium.Database.install( 'path/to/file.s3db', 'testdb' );
但是,请注意,一旦安装它,您在上面指定的文件不是应用程序将使用的数据库。每this guide:
另一方面,
install()
将复制 来自的预先存在的数据库文件 Titanium的Resources
目录,或者一个 它的后代,到applicationDataDirectory/../databases/
并返回对已打开的引用 数据库中。
答案 2 :(得分:0)
我在开始时间方面也有同样的问题。我给你一步一步的回答。
让我们尝试解决您的问题:
(Titanium.database.install('.....sqlite','<database>');
db=Titanium.database.open(<database>);
db.execute(' your Syntax ');
db.close();