Принимая имя таблицы в качестве ввода в sql - PullRequest
1 голос
/ 25 марта 2011

Мне нужно взять имя таблицы в качестве ввода от пользователя в мой скрипт PL / SQL, а затем обновить эту таблицу. Я не уверен, возможно ли это, потому что у ORACLE могут быть проблемы с синтаксическим анализом сценария.

Пожалуйста, сообщите мне, как решить эту проблему.

Thnx.

1 Ответ

4 голосов
/ 25 марта 2011

Используйте EXECUTE IMMEDIATE.Это позволяет вам создать оператор SQL в виде строки VARCHAR2, а затем выполнить этот оператор.

например.

lStr := 'UPDATE '||table-name||' SET COLUMN-NAME = VALUE';

EXECUTE IMMEDIATE lStr;

COLUMN-NAME и VALUE также можно динамически изменять.

http://download.oracle.com/docs/cd/B12037_01/appdev.101/b10807/13_elems017.htm

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...