我正在爲Android,iOS和BlackBerry實施跨平臺應用程序。我使用PhoneGap爲每個平臺生成本地語言版本。我想知道如何創建,訪問和搜索SQLite數據庫。如何在Phonegap中實現SQLite數據庫?
我在文檔中看過它可以通過Javascript文件創建,但我想知道該文件的放置位置以及如何在代碼中引用它。
我正在爲Android,iOS和BlackBerry實施跨平臺應用程序。我使用PhoneGap爲每個平臺生成本地語言版本。我想知道如何創建,訪問和搜索SQLite數據庫。如何在Phonegap中實現SQLite數據庫?
我在文檔中看過它可以通過Javascript文件創建,但我想知道該文件的放置位置以及如何在代碼中引用它。
看看Lawnchair(http://brian.io/lawnchair/),它的易用性和開箱即可滿足您大部分需求(包括搜索),它是跨瀏覽器,戰鬥t通過使用適配器可以很好地降解並降解。有一個黑莓適配器,以及一個支持查詢的插件。下面是使用適用於Android和iPhone的webkit適配器的簡單示例,以展示它的簡單性。
<script type="text/javascript" src="Lawnchair.js" charset="utf-8"></script>
<script type="text/javascript" src="webkit-sqlite.js" charset="utf-8"></script>
// Open local DB connection
var lawnchair = new Lawnchair({table:'mytable', adaptor:'webkit'}, function(){
// Lawnchair setup!
});
// Getting some data out of the lawnchair database
lawnchair.get('my_data_key', function(obj) {
if (obj !== undefined) {
lastSyncDate = obj.lastSync;
dataList = obj.dataList;
}
});
// Saving to the database
lawnchair.save({key:'my_data_key', lastSync: currentTime, dataList: someData});
存儲的PhoneGap文檔在這裏非常明確,並且包含一些示例代碼。存儲API是基於在Opera和Webkit中使用的HTML5開發的Javascript API進行建模的。下面是相關頁面:
原創2011鏈接:http://docs.phonegap.com/phonegap_storage_storage.md.html
2017年更新:現在所有過時了,但看到這樣的: http://docs.phonegap.com/en/1.2.0/phonegap_storage_storage.md.html
鏈接不再工作 –
@designedbyscott這篇文章是六歲,所以並不完全令人吃驚(和它涉及到一個更早版本的PhoneGap,它已經改變了很多)。 – Ben
意識到。只是標記它,因爲它仍然是一個突出的職位。 –
**html**
<input id="show" type="button" value="Show">
**js**
function globalError(tx, error)
{
alert("Error: " + error.message);
}
var db = window.openDatabase('TabOrder', '', 'Bar Tab Orders', 2500000);
db.transaction(function(tx) {
tx.executeSql('DROP TABLE IF EXISTS SubmiteData;', null, null, globalError);
tx.executeSql('CREATE TABLE IF NOT EXISTS SubmiteData (SubmiteDataId integer
primary key, UserId text, AuthNo number, LocId number,ProdId number,
CardId number, OrgLat text, OrgLng text, OrgTime text)',
null,
function()
{
SubmiteData("USER1",12345678,23434, 21212, 220232,
"9", "45", "23/06/2014");
},
globalError);
});
function SubmiteData(UserId, AuthNo, LocId,ProdId, CardId, OrgLat, OrgLng, OrgTime){
db.transaction(function(tx){
tx.executeSql('INSERT INTO SubmiteData(UserId, AuthNo, LocId, ProdId, CardId,
OrgLat, OrgLng, OrgTime) VALUES (?,?,?,?,?,?,?,?)', [UserId, AuthNo, LocId,
ProdId, CardId, OrgLat, OrgLng, OrgTime],
null,
globalError
);
});
}
function read(UserId, AuthNo, LocId,ProdId, CardId, OrgLat, OrgLng, OrgTime){
db.transaction(function(tx) {
tx.executeSql('SELECT * FROM SubmiteData',
[],
function(tx, results)
{
for (var i=0; i<results.rows.length; i++)
{
var row=results.rows.item(i);
// alert("Id: " + row['UserId']);
var stringout = "LocId: " + row['LocId'] + "\n";
alert(stringout);
}
},
globalError
);
});
};
$(function()
{
$('#show').click(read);
});
Lawnchair很不錯! –
我可以使用Lawanchair for windows平臺嗎? –