在資料表中新增單筆或多筆記錄。 這稱為新增查詢。
語法
多筆記錄的新增查詢:
INSERT INTO target [(field1[, field2[, ...]])] [IN externaldatabase]
SELECT [source.]field1[, field2[, ...] FROM tableexpression單筆記錄的新增查詢:
INSERT INTO target [(field1[, field2[, ...]])]
VALUES (value1[, value2[, ...])INSERT INTO 陳述式由下列各部分組成:
部分 |
描述 |
target |
要新增記錄的資料表或查詢名稱。 |
field1, field2 |
若緊接在 target 引數後,是要新增資料的欄位名稱;若緊接在 source 引數後,則是要擷取資料的欄位名稱。 |
externaldatabase |
外部資料庫 的路徑。 如需路徑的描述,請參閱 IN 子句。 |
source |
要複製記錄的資料表或查詢名稱。 |
tableexpression |
插入記錄的單一或多個資料表名稱。 此引數可以是單一資料表名稱,或來自 INNER JOIN、LEFT JOIN 或 RIGHT JOIN 運算式的複合結果,或是儲存的查詢。 |
value1, value2 |
要插入新記錄特定欄位的值。 每個值都會插入清單中對應至值位置的欄位:value1 會插入至新記錄的 field1,而 value2 則會插入至 field2,以此類推。 您必須以逗號分隔值,並以引號 (' ') 括住文字欄位。 |
備註
您可以使用前述的單筆記錄新增查詢語法,透過 INSERT INTO 陳述式將單筆記錄新增至資料表。 在此情況下,您的程式碼會針對記錄的每個欄位指定名稱與值。 您必須指定值對應的每個記錄欄位,以及該欄位的值。 若您未指定每個欄位,未指定的欄就會插入預設值或 Null。 記錄會新增至資料表最下方。
您也可以使用 INSERT INTO 從另一個資料表或查詢新增一組記錄,方法是使用 SELECT ...如上述多筆記錄追加查詢語法所示,FROM 子句。 在此情況下,SELECT 子句會指定要附加到指定 目標數據 表的欄位。
source 或 target 資料表則可指定資料表或查詢。 指定查詢時,Microsoft Access 資料庫引擎會將記錄新增至查詢指定的任何或所有資料表。
INSERT INTO 雖為選用,但採用時優先順序會高於 SELECT 陳述式。
如果您的目標資料表包含主索引鍵,請確認您將不重複的非 Null 值新增至主索引鍵欄位或欄位;否則 Microsoft Access 資料庫引擎將無法新增記錄。
如果您使用 AutoNumber 欄位將記錄新增至資料表,且想要將新增的記錄重新編號,則請不要在查詢中包含 AutoNumber 欄位。 只有當您想要保留欄位的原始值時,才能將 AutoNumber 欄位包含在查詢中。
您可以使用 IN 子句將記錄新增至另一個資料庫的資料表。
若要建立新的資料表,請改用 SELECT...INTO 陳述式建立產生資料表查詢。
若要在執行新增查詢之前找出將新增的記錄,請先執行並檢視使用相同選取準則的選取查詢結果。
新增查詢會從一或多個資料表將記錄複製到其他資料表。 包含新增記錄的資料表不會受到新增查詢影響。
您也可以不從其他資料表新增現有的記錄,而是使用 VALUES 子句在單筆新記錄中指定每個欄位的值。 若您省略欄位清單,VALUES 子句就必須包含資料表中每個欄位的值;否則,INSERT 作業將會失敗。 請針對您要建立的每筆其他記錄,使用含有 VALUES 子句的 INSERT INTO 陳述式。