我在http://developer.blackberry.com/native/sampleapps/上关注了数据库创建应用程序,但我无法弄清楚如何在我的应用加载时创建数据库/检索数据。有人可以帮助我使用带有级联的sqlite3的好参考书,我找不到任何好的来源。
答案 0 :(得分:2)
有几种方法,但我到目前为止使用过这种方法(它不完美但足够好)。
/src
目录中。打开applicationui.cpp
并添加到顶部
#include "customsqldatasource.h"
并在ApplicationUI
中添加此内容以将其公开给QML:
qmlRegisterType<CustomSqlDataSource>("com.myapp.data", 1, 0, "CustomSqlDataSource");
LIBS += -lbbdata
添加到.pro文件/assets
中添加您的数据库;位置取决于您,只需确保它与source
CustomSqlDataSource
匹配即可
import com.myapp.data 1.0
添加到您的.qml
文件在attachedObjects
内添加:
CustomSqlDataSource {
id: asynkDataSource
source: "sql/mydatabase.db"
query: "SELECT * FROM recent_searches GROUP BY fromCity, toCity ORDER BY id DESC"
onDataLoaded: {
if (data.length > 0) {
//use data
}
}
}
现在您需要做的就是在onCreationCompleted
中添加以下行以加载它
asynkDataSource.load();
我希望我没有忘记任何事情。一些重要的事情:/assets
文件夹是只读的,因此你的.db被复制到/data
文件夹(这个脚本就是这样)。