如何将多个数据插入 table with auto_increment 主键列?
How to insert multiple data to a table with auto_increment primary key column?
所以我正在使用 SQLite 3.6 并尝试使用
将多个数据插入到我的 table 中,它有 3 列(1 个 AI PK)
INSERT INTO 'tablename'
SELECT 'data1' AS 'column1', 'data2' AS 'column2'
UNION SELECT 'data3', 'data4'
UNION SELECT 'data5', 'data6'
UNION SELECT 'data7', 'data8'
不知何故它不起作用,我得到了这个错误
table transport_type has 3 columns but 2 values were supplied
还有其他方法可以输入多个数据吗?
如果您没有为 table 中的所有列提供数据,或者您提供的数据与 table 中的列顺序不同,您必须提供以下列表列名:
INSERT INTO tablename(column1, column2)
SELECT ...
相关范例:
省略某些列以使用其默认值。
技术上这与上面相同,但这演示了非自动增量列的用法。
INSERT INTO myTable(column1, column7, column21)
SELECT 'one', 'seven', 'twenty-one';
以与定义不同的顺序插入列。
给定一个具有以下定义的 table:
CREATE TABLE myTable (
column1 VARCHAR(255),
column2 VARCHAR(255),
column3 VARCHAR(255),
column4 VARCHAR(255)
);
我们可以指定一个列列表来插入数据乱序的行。请注意,列的指定顺序与定义的顺序不同。
INSERT INTO myTable(column3, column4, column2, column1)
SELECT 'three', 'four', 'two', 'one';
所以我正在使用 SQLite 3.6 并尝试使用
将多个数据插入到我的 table 中,它有 3 列(1 个 AI PK)INSERT INTO 'tablename'
SELECT 'data1' AS 'column1', 'data2' AS 'column2'
UNION SELECT 'data3', 'data4'
UNION SELECT 'data5', 'data6'
UNION SELECT 'data7', 'data8'
不知何故它不起作用,我得到了这个错误
table transport_type has 3 columns but 2 values were supplied
还有其他方法可以输入多个数据吗?
如果您没有为 table 中的所有列提供数据,或者您提供的数据与 table 中的列顺序不同,您必须提供以下列表列名:
INSERT INTO tablename(column1, column2)
SELECT ...
相关范例:
省略某些列以使用其默认值。
技术上这与上面相同,但这演示了非自动增量列的用法。
INSERT INTO myTable(column1, column7, column21) SELECT 'one', 'seven', 'twenty-one';
以与定义不同的顺序插入列。
给定一个具有以下定义的 table:
CREATE TABLE myTable ( column1 VARCHAR(255), column2 VARCHAR(255), column3 VARCHAR(255), column4 VARCHAR(255) );
我们可以指定一个列列表来插入数据乱序的行。请注意,列的指定顺序与定义的顺序不同。
INSERT INTO myTable(column3, column4, column2, column1) SELECT 'three', 'four', 'two', 'one';