PL / SQL-код с использованием: 1,: 2,: 3 и т. Д. - PullRequest
2 голосов
/ 27 октября 2011

Что означает этот код и как вы называете этот метод? Как я узнаю, каково значение для: 1,: 2,: 3 и так далее?


(процедура PL / SQL)

UPDATE tablename
SET column = :1, column = :2, column = :3, column = :4, column= :5....

Ответы [ 2 ]

2 голосов
/ 27 октября 2011

Это в SQL * Plus?

Если это так, они являются заполнителями параметров. SQL * Plus запросит значения при выполнении.

Если вы используете клиент / язык программирования SQL (Java, PHP, C # и т. Д.), Они обычно представляют параметры в подготовленном выражении, хотя я не уверен, что допустимы заполнители, содержащие только цифры.

Обновление

Это также может появиться в динамическом SQL, выполняемом с помощью оператора OPEN-FOR-USING. Не видя больше вашего кода, я только догадываюсь.

1 голос
/ 27 октября 2011

Это переменные связывания .Oracle заменяет их фактическими значениями, которые передаются.Обычно они встречаются, когда вы используете Динамический SQL , EXECUTE-IMMEDIATE, ИЛИ OPEN-FOR-USING как , упомянутый Филом .

Если вы хотите узнать, какие значения там хранятся, вы, вероятно, захотите посмотреть, где выдаются операторы UPDATE, и записать их в таблицу журналирования / отладки непосредственно перед оператором UPDATE.выдается

...