1
我有一個使用自動生成的ID作爲主鍵的SQLite表。我想做的使用UNION SELECT批量插入,但它似乎並沒有得到幸福,除非我指定每行一個ID:在SQLite中使用批量插入自動生成的ID
sqlite> create table CelestialObject (id INTEGER PRIMARY KEY, name VARCHAR(25), distance REAL);
sqlite> insert into CelestialObject select 'Betelguese' as name, 200 as distance UNION SELECT 'Procyon', 500;
Error: table CelestialObject has 3 columns but 2 values were supplied
如果我的ID指定AUTOINCREMENT(即「ID INTEGER PRIMARY KEY AUTOINCREMENT「)當我創建表時,錯誤是相同的。
任何人都可以告訴我是否有一種方法來使用批量插入而不指定每行的ID?
事實證明,你可以爲id指定NULL,它將被填充正確的: '插入CelestialObject選擇NULL作爲ID, 'Betelguese' 作爲名稱,200距離UNION SELECT NULL, '南河',500;' 由於這部作品甚至對舊SQLite的,沒有必要對我們升級。 – Alan