2013-05-06 28 views
1

我的問題是關於SQL Developer中替換變量的用法。SQL Developer中替換變量的正確用法

選擇從X & C1,C2 &其中& C1 = 'ABC123' 和& C2 = 9999;

我希望上面的陳述要求在C1和C2上我的輸入只有一次,並將它替換爲2次。但它要求我4次C1,C2以及C1和C2。

而且,我真的不能明白&和& &之間的差異。如果我也有& C3,& C4 ...等等。

感謝

回答

2

這裏是一個不錯的鏈接解釋&和& &之間的區別:OraFAQ

基本上&問你每次和& &問你只有一次。

你可能想要替代變量的是綁定變量。只需用冒號:作爲變量名稱的前綴,它應該做你想做的事情。綁定變量具有強類型的附加好處,所以您可以指定它是否是字符串,數字,日期等。使用替換變量,文本將插入到SQL本身中,因此您必須將其包裝在單引號中以使其成爲字符串(例如:'&foo' vs :foo)。

實施例:

SELECT :foo as x 
    , :bar as y 
    , some_column 
FROM my_table 
WHERE some_other_column = :foo