我試圖在我的表單中更新記錄。這是一家餐廳預訂系統。給定表#,表格可以讓用戶輸入預約人的客戶ID,預約時間和日期。但是,當我點擊我的形式「更新」按鈕,文本框會彈出這樣的:什麼是「參數太少,預期1」。在MS Access的意思是?
而且不管我把它,運行時錯誤「太少參數預期的1。 「彈出。有時會彈出一個「保留錯誤」。有人能幫助我嗎?這是我終於可以完成這個項目的最後一步。
這是我更新記錄代碼:VBA編輯器與Debug.Print strSQL
我試圖在我的表單中更新記錄。這是一家餐廳預訂系統。給定表#,表格可以讓用戶輸入預約人的客戶ID,預約時間和日期。但是,當我點擊我的形式「更新」按鈕,文本框會彈出這樣的:什麼是「參數太少,預期1」。在MS Access的意思是?
而且不管我把它,運行時錯誤「太少參數預期的1。 「彈出。有時會彈出一個「保留錯誤」。有人能幫助我嗎?這是我終於可以完成這個項目的最後一步。
這是我更新記錄代碼:VBA編輯器與Debug.Print strSQL
Private Sub Command8_Click()
On Error GoTo errHandling
Dim strSQL As String
strSQL = "UPDATE tblReserve SET CustomerID = " & """" & Me.txtCustID & """" & _
", ResDate = " & """" & Me.txtResDate & """" & ", ResTime = " & """" & Me.txtTime & """" & " WHERE TableNum =" & Me.TableNum
DoCmd.SetWarnings False
DoCmd.RunSQL strSQL
DoCmd.SetWarnings True
CurrentDb.Execute strSQL, dbFailOnError
DoCmd.Close
Exit Sub
errHandling:
MsgBox Err.Description
End Sub
截圖嘗試是這樣的
strSQL = "UPDATE tblReserve SET CustomerID = " & Me.txtCustID & _
", ResDate = " & "'" & Me.txtResDate & "'" & ", ResTime = " & "'" & Me.txtTime & "'" & " WHERE TableNum =" & Me.TableNum
我不知道爲什麼你在d裏有兩組雙引號雙引號,我認爲你在找什麼是單引號:)
但是,有很多更好的方式來格式化sql比這。此外,這似乎是功課,所以研究!
嘗試過,但沒有奏效。我刪除了'DoCmd.SetWarnings False DoCmd.RunSQL strSQL DoCmd.SetWarnings True'並且「輸入參數值」彈出窗口消失了。但它仍然不會更新。 – nutellafella
訪問SQL將接受''''或'''作爲字符串分隔符,在VBA中'''分隔的字符串中的字符會加倍,如「Gord說」「Hello!」「 '。 –
添加'Debug.Print strSQL'聲明在你構建你的SQL字符串之後,從立即窗口(VBA編輯器中的[Crtl-G])複製它並更新你的問題(點擊上面的「編輯」鏈接)向我們展示你實際嘗試的SQL執行。 –
什麼也沒有發生...... – nutellafella
編輯你的問題,向我們展示修改後的'Command8_Click()'過程和'Debug.Print strSQL'語句。 –