我为phonegap 应用程序使用sqlite 数据库。
我尝试这样的事情:
在应用程序第一次启动时创建表格:
tx.executeSql('CREATE TABLE IF NOT EXISTS SETTINGS (id unique,data)');
之后我将获得第一行项目:
var returnwert = results.rows.item(0).data;
该代码将产生以下错误:
Item index is out of range!
我知道为什么,因为表中没有默认值。
如何创建具有 dafult 值的表?
类似的事情:
tx.executeSql('CREATE TABLE IF NOT EXISTS SETTINGS (id unique 1, 2, 3,data defaultvalue="test")');
一个名为 SETTINGS 的表,有 3 行,如下所示:
id = 0 data = test
id = 1 data = test
id = 2 data = test
有人可以帮助我吗
最佳答案
您可能想这样创建表:
CREATE TABLE IF NOT EXISTS settings (
id INTEGER PRIMARY KEY AUTOINCREMENT,
data VARCHAR(128)
)
要使用某些值填充表,请使用以下语句:
REPLACE INTO settings VALUES (1, 'test');
REPLACE INTO settings VALUES (2, 'test');
REPLACE INTO settings VALUES (3, 'test');
如果您第一次运行它,将创建 id 1,2,3 的行。
如果第二次运行,id 1,2,3 的行将被覆盖。
如果您不想覆盖,请使用INSERT OR IGNORE
,如下所示:
INSERT OR IGNORE INTO settings VALUES (1, 'test');
...
关于javascript - 具有默认值的 SQLite 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14931048/