[英]Why am I getting “Enter Parameter Value” when running my MS Access query?
[英]Why am I asked for “Enter parameter value” when running update query in MS Access?
我一直在為查詢苦苦掙扎,不知道這是怎么回事。 我不是高級SQL用戶,但對SQL有一定了解。
我有兩個表,我試圖用另一個表中的字段更新一個字段。 它們在每個字段中都沒有唯一的標識符,因此需要與三個字段(HoleID,From,To)匹配,尤其是因為表LEAPFROG_Lithology的記錄比Lithology表中的From / To不相同。
我一直在尋找關於類似主題的問題,並嘗試了不同的查詢變體,但沒有任何效果,它總是要求我“輸入參數值”。 我嘗試了一個和一個這樣的內關節,但是沒有用。
這是我嘗試過的:
版本1
Update LEAPFROG_Lithology
SET LEAPFROG_Lithology.Primary_litho = (
SELECT Lithology.Primary_litho
FROM Lithology
RIGHT JOIN LEAPFROG_Lithology ON (
Lithology.[HoleID] = LEAPFROG_Lithology.[HoleID] and
Lithology.[From_m] = LEAPFROG_Lithology.[From_m] and
Lithology.[To_m] = LEAPFROG_Lithology.[To_m]))
Where LEAPFROG_Lithology.Primary_litho is null ;
第2版 (也嘗試了INNER JOIN)
Update LEAPFROG_Lithology
LEFT JOIN Lithology ON (
LEAPFROG_Lithology.[HoleID] = Lithology.[HoleID] and
LEAPFROG_Lithology.[From_m] = Lithology.[From_m] and
LEAPFROG_Lithology.[To_m] = Lithology.[To_m])
SET LEAPFROG_Lithology.Primary_litho = Lithology.Primary_litho
Where LEAPFROG_Lithology.Primary_litho is null ;
我到處都嘗試過[],沒有嘗試過。 沒關系。
有人可以告訴我我在做什么錯嗎? 謝謝!
請驗證表和字段的名稱正確。 如果是這樣,第二個查詢應該工作。
但我建議使用稍有不同的括號,以便您可以顯示查詢的圖形設計視圖。 另外,也不需要使用LEFT JOIN,因為對於沒有Primary_litho且沒有匹配的Lithology的記錄,NULL值將被更新為NULL值。 因此,這應該可以正常工作:
UPDATE LEAPFROG_Lithology
INNER JOIN Lithology ON
(LEAPFROG_Lithology.[HoleID] = Lithology.[HoleID]) AND
(LEAPFROG_Lithology.[From_m] = Lithology.[From_m]) AND
(LEAPFROG_Lithology.[To_m] = Lithology.[To_m])
SET LEAPFROG_Lithology.Primary_litho = Lithology.Primary_litho
WHERE LEAPFROG_Lithology.Primary_litho Is Null;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.