在 SQL 中,我们使用 INSERT INTO
语句向数据库表插入新行。
示例
-- insert a row in the Customers table
INSERT INTO Customers(customer_id, first_name, last_name, age, country)
VALUES
(7, 'Ron', 'Weasley', 31, 'UK');
这里,SQL 命令使用给定值向 Customers 表插入新行。
INSERT INTO 语法
INSERT INTO table_name(column1, column2, column3, ...)
VALUES
(value1, value2, value3, ...);
这里,
table_name
是要插入新行的表column1, column2, column3, ...
是要插入值的列value1, value2, value3, ...
是要插入的值
示例:向表中插入行
在 SQL 中,INSERT INTO
语句用于向数据库表插入新行。
-- insert a row in the Customers table
INSERT INTO Customers(customer_id, first_name, last_name, age, country)
VALUES
(5, 'Harry', 'Potter', 31, 'USA');
这里,SQL 命令使用给定值向 Customers 表插入新行。

注意: 如果您想从任何其他现有表中插入行,您可以使用 SQL INSERT INTO SELECT 语句。
也可以在不指定列的情况下插入行中的值。例如,
INSERT INTO Customers
VALUES
(5,'Harry', 'Potter', 31, 'USA');
这里,SQL 命令将新行按顺序插入到每个列中。
注意: 如果我们不指定列名,则数据库表中的列顺序必须与 SQL 查询中值的顺序匹配。我们还需要为自动递增的字段提供值。
仅在指定列中插入数据
如果在行插入期间跳过列名,则这些列的值将为 NULL。

这里,SQL 命令将 country
列的值设置为 NULL。但是,由于 自动递增约束,customer_id
列是自动递增的。
注意: 如果某列不允许 NULL 值,则 SQL 查询将导致错误。要了解更多信息,请访问 NOT NULL 约束。
示例:在 SQL 中一次插入多行
也可以一次向数据库表插入多行。例如,
INSERT INTO Customers(first_name, last_name, age, country)
VALUES
('Harry', 'Potter', 31, 'USA'),
('Chris', 'Hemsworth', 43, 'USA'),
('Tom', 'Holland', 26, 'UK');
这是代码的结果。

这里,SQL 命令向 Customers 表插入三行。
另请阅读