Я пытаюсь написать сценарий SQL для использования в SQL плюс использование переменных подстановки, определенных во время выполнения. Есть ли способ активно избегать появления каких-либо специальных символов?
Например, если переменная содержит ', она немедленно прервет любую строку в скрипте, в которой она выполняется, с
ORA-01756: quoted string not properly terminated
ошибка, так как я не завершил цитату или завершил ее слишком рано. Я просто хочу, чтобы он рассматривал переменную как строку. Есть ли способ сказать Oracle, чтобы просто обрабатывать символы буквально, чтобы установить поле или подобное?
В моем конкретном случае я хочу создать сценарий общего случая, чтобы изменить пароль, запрашивая пароль пользователя, старый и новый.
connect &&myuser/&&oldpass@mydb;
alter user &&myuser identified by &&newpass replace &&oldpass;
Если старый или новый пароль содержит специальные символы, он может сломаться по ряду причин, в том числе из-за проблемы, с которой я столкнулся выше.