Access SQL語句 Insert into 詳細(xì)用法 教程及插入數(shù)據(jù)常見錯(cuò)誤的解決辦法
- 2017-08-16 14:32:00
- zstmtony 原創(chuàng)
- 24476
Access Insert into語句的主要用法:
多記錄追加查詢:
INSERT INTO 目標(biāo)表 [(字段1[, 字段2[, ...]])] [IN 外部數(shù)據(jù)庫] SELECT [源表.]字段1[, 字段2[, ...] FROM 源表
單記錄追加查詢:
INSERT INTO 目標(biāo)表 [(字段1[, 字段2[, ...]])] VALUES (值1[, 值2[, ...])
但偶爾Insert into Sql語句執(zhí)行時(shí)會(huì)提示一些錯(cuò)誤
“Insert Into 語法錯(cuò)誤”,為了這樣一個(gè)錯(cuò)誤要找好久才能解決問題,"Insert Into 語法錯(cuò)誤"這個(gè)提示本身包含的信息量也很少,
1.保留關(guān)鍵字:如果你的數(shù)據(jù)庫的表的設(shè)計(jì)包含了Access本身的關(guān)鍵字(保留字),則在插入的時(shí)候會(huì)出現(xiàn)“Insert Into 語法錯(cuò)誤”
例如:
strSql="Insert into 測試表 (Id,Order) values (12,0)"
這行上面這條語句是失敗的,原因是測試表 表中有一個(gè)關(guān)鍵字"Order",解決辦法:
1).將語句中的關(guān)鍵字用[order]處理就可以了。如:2.文本類型:字符類型引起的“Insert Into 語法錯(cuò)誤”,通常是因?yàn)閿?shù)據(jù)庫設(shè)計(jì)的時(shí)候字段是字符型的,結(jié)果在Insert into 的時(shí)候字段值沒有加''引起的。
strSql="Insert into 測試表 (Id,[Order]) values (12,0)"
2).將表名及所有的字段都用[]括起來,這種方式來解決關(guān)鍵字的沖突問題。如:strSql="Insert into [測試表] ([Id],[Order]) values (15,0)" 解決方法就是在表和表的字段上面加上中括號(hào)就可以了
3).在設(shè)計(jì)數(shù)據(jù)庫的時(shí)候盡量避免使用Access本身的保留字。這樣就不會(huì)出現(xiàn)應(yīng)為關(guān)鍵字問題引起的錯(cuò)誤了,這也是最好解決方法。
3.備注類型:備注類型的字段和文本字段一樣,碰到問題,可以用同樣的方法解決
4.日期/時(shí)間類型:日期/時(shí)間類型的字段要加#號(hào)
微軟官方的教程:
INSERT INTO 語句 (Microsoft Access SQL)
上次修改時(shí)間:2015年3月9日
適用范圍:Access 2013 | Access 2016
將一個(gè)或多個(gè)記錄添加到表中。該語句稱為追加查詢。
多記錄追加查詢:
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 |
向其中追加數(shù)據(jù)的字段的名稱(如果在 target 參數(shù)之后),或獲取其中數(shù)據(jù)的字段的名稱(如果在 source 參數(shù)之后)。 |
externaldatabase |
外部數(shù)據(jù)庫的路徑。有關(guān)路徑的說明,請參閱 IN 子句。 |
source |
要復(fù)制其中記錄的表或查詢的名稱。 |
tableexpression |
作為插入記錄來源的表的名稱。該參數(shù)可以是單個(gè)表名或者是從 INNER JOIN、LEFT JOIN 或 RIGHT JOIN 操作或保存的查詢產(chǎn)生的組合結(jié)果。 |
value1、value2 |
要插入新記錄特定字段中的值。每個(gè)值將插入到與該值在列表中的位置相對應(yīng)的字段內(nèi):value1 將插入到新記錄的 field1 字段,value2 插入到 field2 字段等等。這些值必須用逗號(hào)分隔,并且用引號(hào) (' ') 引起來。 |
通過如上所述的單記錄追加查詢語法,可以使用 INSERT INTO 語句向表中追加單個(gè)記錄。在這種情形下,代碼要指定每個(gè)記錄字段的名稱和值。必須指定每一個(gè)將被賦值的記錄字段,并且要給出該字段的值。如果沒有指定每個(gè)字段的值,則在缺少值的列中插入默認(rèn)值或 Null 值。記錄將追加到表的末尾。
通過如上所示的多字段追加查詢語法的 SELECT ... FROM 子句,還可以使用 INSERT INTO 追加一組來自其他表或查詢的記錄。這種情形下,SELECT 子句指定將要追加到指定的 target 表中的字段。
source 或 target 表可以指定表或查詢。如果指定了查詢,Microsoft Access 數(shù)據(jù)庫引擎會(huì)將記錄追加到查詢指定的任何表或所有表中。
INSERT INTO 是可選的,但是如果包括它,應(yīng)將它置于 SELECT 語句前面。
如果目標(biāo)表中包含主鍵,請確保追加到主鍵字段中的值是唯一的、非 Null 的;否則,Microsoft Access 數(shù)據(jù)庫引擎不會(huì)追加這些記錄。
如果將一個(gè)自動(dòng)編號(hào)字段記錄追加到一個(gè)表中,并且希望對該追加的記錄重新編號(hào),那么不要在查詢語句中包含自動(dòng)編號(hào)字段。如果希望保持字段的原始值,請務(wù)必在查詢語句中包含自動(dòng)編號(hào)字段。
通過 IN 子句可以將記錄追加到其他數(shù)據(jù)庫的表中。
若要新建表,請使用 SELECT... INTO 語句來創(chuàng)建一個(gè)生成表查詢。
若要在運(yùn)行追加查詢之前找出將要追加哪些記錄,可以先執(zhí)行使用同樣選擇條件的選擇查詢并查看其結(jié)果。
追加查詢把記錄從一個(gè)或多個(gè)表復(fù)制到其他表中。包含所追加的記錄的表不會(huì)受追加查詢影響。
如果不想從其他表中追加現(xiàn)有記錄,可以通過 VALUES 子句指定每個(gè)字段在新的單個(gè)記錄中的值。如果忽略了字段列表,VALUES 子句必須包括該表中每個(gè)字段的值;否則,INSERT 操作將會(huì)失敗。通過附加的帶有 VALUES 子句的 INSERT INTO 語句,可以創(chuàng)建希望得到的每一個(gè)新增記錄。
- office課程播放地址及課程明細(xì)
- Excel Word PPT Access VBA等Office技巧學(xué)習(xí)平臺(tái)
- 將( .accdb) 文件格式數(shù)據(jù)庫轉(zhuǎn)換為早期版本(.mdb)的文件格式
- 將早期的數(shù)據(jù)庫文件格式(.mdb)轉(zhuǎn)換為 (.accdb) 文件格式
- KB5002984:配置 Jet Red Database Engine 數(shù)據(jù)庫引擎和訪問連接引擎以阻止對遠(yuǎn)程數(shù)據(jù)庫的訪問(remote table)
- Access 365 /Access 2019 數(shù)據(jù)庫中哪些函數(shù)功能和屬性被沙箱模式阻止(如未啟動(dòng)宏時(shí))
- Access Runtime(運(yùn)行時(shí))最全的下載(2007 2010 2013 2016 2019 Access 365)
- Activex控件或Dll 在某些電腦無法正常注冊的解決辦法(regsvr32注冊時(shí)卡?。?/a>
- office使用部分控件時(shí)提示“您沒有使用該ActiveX控件許可的問題”的解決方法
- RTF文件(富文本格式)的一些解析
- Access樹控件(treeview) 64位Office下出現(xiàn)橫向滾動(dòng)條不會(huì)自動(dòng)定位的解決辦法
- Access中國樹控件 在win10電腦 節(jié)點(diǎn)行間距太小的解決辦法
- EXCEL 2019 64位版(Office 2019 64位)早就支持64位Treeview 樹控件 ListView列表等64位MSCOMMCTL.OCX控件下載
- VBA或VB6調(diào)用WebService(直接Post方式)并解析返回的XML
- 早期PB程序連接Sqlserver出現(xiàn)錯(cuò)誤
- MMC 不能打開文件C:/Program Files/Microsoft SQL Server/80/Tools/Binn/SQL Server Enterprise Manager.MSC 可能是由于文件不存在,不是一個(gè)MMC控制臺(tái),或者用后來的MMC版
- sql server連接不了的解決辦法
- localhost與127.0.0.1區(qū)別
- Roych的淺談數(shù)據(jù)庫開發(fā)系列(Sql Server)
- sqlserver 自動(dòng)備份對備份目錄沒有存取權(quán)限的解決辦法
- 安裝Sql server 2005 express 和SQLServer2005 Express版企業(yè)管理器 SQLServer2005_SSMSEE
聯(lián)系人: | 王先生 |
---|---|
Email: | 18449932@qq.com |
QQ: | 18449932 |
微博: | officecn01 |