如果要将数据添加到 SQL 表格,可以使用 INSERT
语句。
在本文中,我将向你展示如何使用 INSERT
语句添加单行、多行以及将行从一个 SQL 表格复制到另一个。
基本语法
以下是在 SQL 中向表格中添加行的基本语法:
INSERT INTO table_name (column1, column2, column3,etc)
VALUES (value1, value2, value3, etc);
第一行代码使用 INSERT
语句,后跟要添加数据的表格的名称。在表名之后,你应该指定列名。
第二行代码是你添加行值的地方。值的数量与指定的列数匹配很重要,否则你将收到报错消息。
如何在 SQL 表格中添加行
在这个例子中,我们有一个名为 dogs
的表格,其中包含 id
、name
和 gender
列。我们想添加一只名为 AXEL
的狗。
这是将 AXEL
添加到表格中的代码:
INSERT INTO dogs(id, name, gender) VALUES (1, 'AXEL', 'M');
表格显示如下:
如果值的数量与列不匹配会发生什么
如前所述,列数必须与值的数量相匹配。
如果我更改代码以删除一个值,那么我会收到一条报错消息。
INSERT INTO dogs(id, name, gender) VALUES (1, 'AXEL');
由于我们指定了 3 列,因此我们需要为添加到表格中的每一行提供三个值。
如果忽略列约束会发生什么
创建 SQL 表格时,你将添加用作列规则的列约束。
在我们的 dogs
表格中,name
和 gender
列的约束为 NOT NULL
。此规则意味着行中不能缺少值。
当我尝试为性别添加 NULL 时,我返回一条错误消息。
INSERT INTO dogs(id, name, gender) VALUES (1, 'AXEL', NULL);
添加行时,需要遵守你在创建 SQL 表格时指定的任何约束。
如何在 SQL 中向表格添加多行
如果要一次向表格添加多行,则可以使用以下语法:
INSERT INTO table_name (column1, column2, column3,etc)
VALUES
(value1, value2, value3, etc),
(value1, value2, value3, etc),
(value1, value2, value3, etc);
记住每一行之间的逗号很重要,否则你将收到报错消息。
这是一次将八只狗添加到表格中的代码:
INSERT INTO dogs(id, name, gender)
VALUES
(1, 'AXEL', 'M'),
(2, 'Annie', 'F'),
(3, 'Ace', 'M'),
(4, 'Zelda', 'F'),
(5, 'Diesel', 'M'),
(6, 'Tilly', 'F'),
(7, 'Leroy', 'M'),
(8, 'Olivia', 'F');
表格现在如下所示:
如何从一个表格复制行并将它们插入到另一个表格
你可以使用 SELECT
和 INSERT
语句将行从一个 SQL 表格复制到另一个。
这是基本语法:
INSERT INTO table_name1 (columns)
SELECT columns FROM table_name2;
在这个例子中,我创建了一个包含三行的 cats
表格,列名与 dogs
表格相同。
我们可以使用以下代码将所有 cats
数据添加到 dogs
表格中:
INSERT INTO dogs SELECT * FROM cats;
这是带有额外 cats
数据的新的 dogs
表格的样子:
总结
如果要将数据添加到 SQL 表格,可以使用 INSERT
语句。
以下是向 SQL 表格添加行的基本语法:
INSERT INTO table_name (column1, column2, column3,etc)
VALUES (value1, value2, value3, etc);
第二行代码是你添加行值的地方。值的数量与指定的列数匹配很重要,否则你将收到报错消息。
当你尝试在向表格中添加行时忽略列约束时,你将收到一条报错消息。
如果要一次向表格中添加多行,则可以使用以下语法:
INSERT INTO table_name (column1, column2, column3,etc)
VALUES
(value1, value2, value3, etc),
(value1, value2, value3, etc),
(value1, value2, value3, etc);
你可以使用 SELECT
和 INSERT
语句将行从一个 SQL 表格复制到另一个。
这是基本语法:
INSERT INTO table_name1 (columns)
SELECT columns FROM table_name2;
我希望你喜欢这篇文章,并祝你在 SQL 之旅中好运。
原文:Insert Into SQL – How to Insert Into a Table Query [Example Statement],作者:Jessica Wilkins