2017-02-10 192 views
1

正確的語法,我努力讓此行來運行:的MS Access VBA

DoCmd.RunSQL "UPDATE stock SET quantity = quantity-1 WHERE ISBN Number=" & Me.ISBN Number 

我加引號的條件時,你得到語法錯誤。表名稱是庫存,它與表格書籍,ISBN號碼和數量有關係。需要發生的是,一旦這段代碼觸發,它將從庫存表中的數量減去1,這兩個表中的ISBN號碼匹配。

編輯1:

我把它加入了ISBN的股票表並使用窗體上的同一個使用條形碼掃描儀捕獲數據的工作,這個問題卻似乎是,如果ISBN號碼在股票表中並不存在,因此它不會更新,所以我需要修改查詢以首先檢查ISBN是否已經被捕獲,然後再進行更新,否則創建它。

回答

0

嘗試增加"'"到參數

DoCmd.RunSQL "UPDATE stock SET quantity = quantity-1 WHERE ISBN Number=" &"'"& Me.ISBN Number&"'" 
+0

好,我得到了一個解決方案,代碼工作正常,但它意味着1發出一本書時,降低股票的價值,因此,解決方案是另一種形式捕捉股票,當股票發行時減少股票,使用上面的語法修復。 –