admin

如何在每个SQLite行中插入唯一的ID?

sql

我有以下SQLite代码。如何在每行中插入自动生成的唯一ID?

    tx.executeSql('DROP TABLE IF EXISTS ENTRIES');
    tx.executeSql('CREATE TABLE IF NOT EXISTS ENTRIES (id unique, data)');

    tx.executeSql('INSERT INTO ENTRIES (id, data) VALUES (1, "First row")');
    tx.executeSql('INSERT INTO ENTRIES (id, data) VALUES (2, "Second row")');

阅读 125

收藏
2021-05-10

共1个答案

admin

您可以将其定义id自动递增列

create table entries (id integer primary key autoincrement, data)

正如MichaelDorner指出的那样,SQLite文档说an可以integer primary key做同样的事情,并且速度稍快。该类型的列是其别名rowid,其行为类似于自动增量列

create table entries (id integer primary key, data)

此行为是隐式的,可能会使经验不足的SQLite开发人员措手不及。

2021-05-10