TOP

SQL INSERT INTO

SQL INSERT INTO 说明

指令 INSERT INTO 用于向表中插入新记录。


INSERT INTO 语法

指令 INSERT INTO 可以用两种方式编写:

1.指定要插入的列名和值:

INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...)

2.如果是为表中的所有列添加值,则不需要在SQL查询中指定列名。 但是,请确保值的顺序与表中列的顺序匹配。 这里 INSERT INTO 语法将是:

INSERT INTO table_name
VALUES (value1, value2, value3, ...)

演示数据库

以下是“Northwind”数据库的“Customers”表中的示例:

CustomerID CustomerName ContactName Address City PostalCode Country
89 White Clover Markets Karl Jablonski 305 - 14th Ave. S. Suite 3B Seattle 98128 USA
90 Wilman Kala Matti Karttunen Keskuskatu 45 Helsinki 21240 Finland
91 Wolski Zbyszek ul. Filtrowa 68 Walla 01-012 Poland

INSERT INTO 示例

以下 SQL 语句将一条新记录插入到“Customers”表中:

INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode, Country)
VALUES ('Cardinal', 'Tom B. Erichsen', 'Skagen 21', 'Stavanger', '4006', 'Norway')

“客户”表中的选择现在如下所示:

CustomerID CustomerName ContactName Address City PostalCode Country
89 White Clover Markets Karl Jablonski 305 - 14th Ave. S. Suite 3B Seattle 98128 USA
90 Wilman Kala Matti Karttunen Keskuskatu 45 Helsinki 21240 Finland
91 Wolski Zbyszek ul. Filtrowa 68 Walla 01-012 Poland
92 Cardinal Tom B. Erichsen Skagen 21 Stavanger 4006 Norway
您是否注意到我们没有在 CustomerID 字段中输入任何数字? CustomerID 列是一个自动编号字段,当新记录添加到表中时,系统将填充该字段。

仅将数据插入指定列

您还可以仅在某些列中插入数据。

以下 SQL 语句将插入一条新记录,但仅插入“CustomerName”、“City”和“Country”列中的数据(CustomerID 将自动更新):

INSERT INTO Customers (CustomerName, City, Country)
VALUES ('Cardinal', 'Stavanger', 'Norway')

“客户”表中的选择现在如下所示:

CustomerID CustomerName ContactName Address City PostalCode Country
89 White Clover Markets Karl Jablonski 305 - 14th Ave. S. Suite 3B Seattle 98128 USA
90 Wilman Kala Matti Karttunen Keskuskatu 45 Helsinki 21240 Finland
91 Wolski Zbyszek ul. Filtrowa 68 Walla 01-012 Poland
92 Cardinal null null  Stavanger null Norway