【发布时间】:2014-03-18 11:51:47
【问题描述】:
我正在使用 SQlite 开发 HTML5 + PhoneGap 应用程序
用于更新 SQlite 中的表;我正在使用 REPLACE INTO 方法。
这里是示例代码; : http://www.sqlfiddle.com/#!7/ccc33/2
架构
CREATE TABLE mytable (
id integer primary key autoincrement,
name VARCHAR(10),
date DATE,
job VARCHAR(16),
hours VARCHAR(16)
);
CREATE UNIQUE INDEX myindex ON mytable(NAME);
这里 NAME 是唯一索引值。
查询
REPLACE INTO mytable (NAME, DATE, JOB, HOURS)
VALUES ('BOB', '12/01/01', 'PM','20');
REPLACE INTO mytable (NAME, DATE, JOB, HOURS)
VALUES ('BOB', '12/01/01', 'PM','32');
REPLACE INTO mytable (NAME, DATE, JOB, HOURS)
VALUES ('BOB', '14/01/01', 'PM','35');
REPLACE INTO mytable (NAME, DATE, JOB, HOURS)
VALUES ('BOBg', '12/01/01', 'PM','350');
SELECT * FROM mytable;
但是当运行查询时;我看到主键 id 增加了 。但是当 NAME 相同时,我需要它唯一的更新。
有什么解决办法吗?请帮忙!
【问题讨论】:
标签: sqlite cordova web-sql unique-index