我正在通過ODBC連接到數據庫。我有用VBA編寫的SQL語句。我已經定義了三個參數傳遞,定義爲單元格引用:使用範圍值作爲SQL語句中的參數
Dim Param1 As String
Dim Param2 As String
Dim Param3 As String
Param1 = Sheets("SHEET1").Range("P1").Value
Param2 = Sheets("SHEET1").Range("P2").Value`
Param3 = Sheets("SHEET1").Range("P3").Value
的的子句WHERE語句工作正常(表是一個例子)之間這是聲明結尾:
(VPXXX.PDXXX Between " + Param1 + " and " + Param2 + "))"
當我嘗試添加「末平等」的聲明,我拋出一個錯誤「常規ODBC錯誤:
AND ((VPXXX.PDXXX=" + Param3 + "))"
注:下面的最終作品
個AND ((VPXXX.PDXXX='LDPDQ'))"
它只是硬編碼一個單一的供應商
希望這是足夠的信息.....第一次建設SQL查詢。在此先感謝
如果AND((VPXXX.PDXXX ='LDPDQ'))「'有效,你可能需要將引號加到AND((VPXXX.PDXXX =」+ Param3 +「))」',即AND(( VPXX X.PDXXX ='「+ Param3 +」'))「',除非引號已包含在您的單元格值中。 (P.S.爲什麼你有兩套'()'?不是它會影響事物,但也不應該需要。) – YowE3K
1)謝謝!我很感激。我討厭有時候有多簡單:) 2)至於雙「()」我顯然已經被冗餘部助理助理訓練過了。 – RR33
我會在引號中加上一個「答案」(只是爲了讓人們不要繼續看問題,認爲它還沒有解決),一旦我停止ROTFLMAO重新對雙括號進行響應。 – YowE3K