2017-07-07 60 views
0

我試圖從報表與多個表中的數據創建刪除記錄。 下面是我寫此刪除從表中的記錄在MS Access 2010

CurrentDb.Execute "DELETE FROM StateBudget " & " WHERE S_ID=" & ("SLELECT ID FROM States " & " WHERE State=" & Me.subformStateBudget.Form.Recordset.Fields("State")) 

和錯誤代碼出現這樣

語法錯誤(缺少運算符)查詢表達式S_ID = SELECT ID FROM狀態,其中狀態= ??? ?」。

+1

作爲一般規則,不做=子查詢。改用'IN'。 – jarlh

+1

你可以去'DLookUp'以及('使用DLookup( 「ID」, 「國家」, 「國家=」 &Me.subformStateBudget.Form.Recordset.Fields( 「國家」))'返回完全一樣的子查詢。當你指的多個表中刪除查詢訪問不喜歡它。順便說一句,你是拼寫錯誤'SELECT'在你的子查詢,這可能也解釋了它。 –

+0

謝謝你的建議,我會改正拼寫錯誤。 –

回答

0

檢查了這一點

CurrentDb.Execute "DELETE FROM StateBudget WHERE S_ID IN (SELECT ID FROM States WHERE State=" & Me.subformStateBudget.Form.Recordset.Fields("State") & ")" 

順便說你已經選擇了拼寫錯誤,您錯誤地添加字符串。 Select之前的括號應該在字符串內等等。

相關問題