2017-01-17 4 views
0

Когда я выполняю ниже запрос в SQL и в PL/SQL (хранимая процедура), оба дают разные результаты. Почему это?Oracle UNISTR в SQL и PL/SQL

Запрос: select UNISTR('\03A6') from dual;

Sql выходы Φ где, как PL выходов/SQL F

Я использую SQL Developer для выполнения обоих.

Как я могу сделать PL/SQL вернуть Φ

+0

Что-то связанное с NLS_SESSION_PARAMETERS, дайте ему поиск, который я не помню сейчас, чтобы дать вам правильный ответ. –

+1

Можете ли вы попробовать их с одинарными кавычками? 'выберите UNISTR ('\ 03A6') из double;' –

+0

Извините. Я пробовал с одиночными кавычками, но мой пост был неправильным. Отредактировано сообщение. Таким образом, несогласованность, которую я вижу, связана с одинарными кавычками. – Maz

ответ

0

Функция UNISTR ожидает строку в качестве параметра ввода. Как правило, вы должны получить ошибку

ORA-00911: invalid character

при запуске UNISTR(\03A6)

Попробуйте select UNISTR('\03A6') from dual; вместо этого.

+0

Извините. Я пробовал с одиночными кавычками, но мой пост был неправильным. Отредактировано сообщение. Таким образом, несогласованность, которую я вижу, связана с одинарными кавычками. – Maz

Смежные вопросы