1
第一次提問,通常我可以通過搜索找到答案,但我的google-fu今天似乎很弱。ado在excel中,插入記錄到訪問數據庫中
我有一個Excel工作簿連接到一個Access 2003數據庫中插入使用記錄
的代碼我使用的是:
sdbpath = ThisWorkbook.Path & "\Data.mdb"
sCommand = "INSERT INTO Usage VALUES('" & Environ("Username") & "',#" & Now() & "#)"
Dim dbCon As New ADODB.Connection
Dim dbCommand As New ADODB.Command
dbCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & sdbpath & "; Jet OLEDB:Database Password=TestPass;"
dbCommand.ActiveConnection = dbCon
dbCommand.CommandText = sCommand
dbCommand.Execute
dbCon.Close
上線dbCommand.Execute代碼失敗,運行 - 時間錯誤'-2147217900(80040e14)':自動化錯誤。
試圖插入記錄到的數據庫包含一個表,用法和兩列 - UserID和AccessDate,分別格式化爲文本和DateTime。
奇怪的部分是連接字符串看起來不錯,因爲它在連接已經打開後失敗,但是如果我在運行execute之前取得sCommand值,那麼將它粘貼到訪問中的查詢中並執行它 - 它運行良好!
如果它是訪問掙扎與日期時間格式我試着將其切換到文本(和代碼中的標籤),但仍然失敗。我也嘗試過指定列名稱。
任何人都可以闡明我做錯了什麼?我從來沒有遇到過這麼簡單的SQL問題。
在此先感謝!
啊哈,謝謝 - 不記得用法是一個保留字。謝謝你的幫助! – David
不用擔心。現在有意義;) –