INSERT INTO 语句 (Microsoft Jet SQL)

INSERT INTO 语句

添加一个或多个记录至一个表。这叫作追加查询.

语法

多重记录追加查询:

INSERT INTO target [(field1[, field2[, ...]])][IN外部数据库]

   SELECT field1[, field2[, ...]]

   FROM tableexpression

单一记录追加查询:

INSERT INTO target [(field1[, field2[, ...]])]

   VALUES (value1[, value2[, ...])

INSERT INTO 语句可分为以下几个部分:

部分

说明

target

欲追加记录的表或查询的名称。

field1, field2

如果后面跟的是 target 参数,则为要追加数据的字段名;如果后面跟的是 source 参数,则为从其中获得数据的字段名。

Externaldatabase

进入外部数据库的路径。有关路径的描述,请参阅 IN 子句

source

复制记录的来源表或查询的名称。

tableexpression

从其中得到要插入的记录的表名。这个变元可能是一个单一的表名,也可能是一个由 INNER JOINLEFT JOINRIGHT JOIN 运算组成的复合体,或是一个储存的查询。

value1value2

欲插入新记录的特定字段的值。每一个值将依照它在列表中的位置,顺序插入相关字段:value1 将被插入至追加记录的 field1 之中,value2 插入至 field2,依此类推。必须使用逗点将这些值分隔,并且将文本字段用引号 (' ') 括起来。

 

说明

可以使用 INSERT INTO 语句来添加一个单一记录至一个表中,如以上所示使用单一记录追加查询语法。在这个例子中,代码指定了该记录每一字段的名称和值。必须指定追加数值的记录的每一个字段和那个字段的值。如果您没有指定每一个字段时,缺省值或 Null 值将被插入至没有数据的字段之中。这些记录将被添加至表的尾部。

通过使用 SELECT ...FROM 子句如以上所示的多重记录追加查询语法,也可以从另一表或查询使用 INSERT INTO追加一组记录。在这个示例中,SELECT 子句将指定追加字段至指定的 target 表。

sourcetarget 表可以指定一个表或查询。如果查询被指定,Microsoft Jet数据库引擎会把记录追加到由该查询指定的所有表中。

INSERT INTO 是可选的,但当使用时,请置於 SELECT 语句之前。

如果你的目标表包含一个 主键,,你一定要把唯一的非 Null 值追加到主键字段中,否则 Microsoft Jet 数据库引擎不会追加记录。

如果你要把把记录追加到带有 AutoNumber字段的表中,还想重编追加的记录,请不要在你的查询中包含 AutoNumber字段。如果您要保持字段中的原始值,请将自动编号加在您的查询之中。

使用 IN 子句,可追加记录至另一个数据库中的表。

要创建新表请用 SELECT...INTO 语句代替制表查询的创建。

若要在运行追加查询之前找出哪些记录是被追加的,首先执行和查阅一个使用相同的选择条件之选定查询所获得的结果。

追加查询为从一个或多个表中复制记录至另一个表。您追加的表包含记录将不会被追加查询所影响。

除了从另一表中来追加现存的记录,可以指定在单一追加记录之中使用 VALUES 子句来指定对每一字段的值。如果您省略字段列表,VALUES 子句在表之中必须包含每一字段的值;否则, INSERT运算将会失败。使用额外的 INSERT INTO 语句与一个 VALUES 子句来创建您要的每一个额外的记录。

请参阅

FROM 子句 (Microsoft Jet SQL)

SELECT 语句 (Microsoft Jet SQL)

IN 子句(Microsoft Jet SQL)

SELECT...INTO 语句(Microsoft Jet SQL)

INNER JOIN 运算 (Microsoft Jet SQL)

WHERE 子句 (Microsoft Jet SQL)

LEFT JOIN, RIGHT JOIN 运算 (Microsoft Jet SQL)

 

 

示例

INSERT INTO 语句 示例