Как обрабатывать одинарные кавычки в Oracle SQL

74

Как вставить запись в столбец с типом данных varchar с одной кавычкой?

Пример: имя ROBERT и фамилия D'COSTA

Теги:
escaping

3 ответа

137
Лучший ответ

Используйте две одиночные кавычки

SQL> SELECT 'D''COSTA' name FROM DUAL;

NAME
-------
D'COSTA

В качестве альтернативы используйте новый метод (10g +):

SQL> SELECT q'$D'COSTA$' NAME FROM DUAL;

NAME
-------
D'COSTA
  • 0
    Что если нам понадобятся две последовательные одинарные кавычки? Для этого случая «альтернативный» метод предназначен?
  • 0
    @RichouHunter Вы должны использовать четыре одинарные кавычки: 'D''''COSTA' => D''COSTA . В качестве альтернативы: q'$D''COSTA$'
Показать ещё 2 комментария
2

Я нашел выше ответ, дающий ошибку с Oracle SQL, вы также должны использовать квадратные скобки, ниже;

SQL> SELECT Q'[Paddy O'Reilly]' FROM DUAL;


Результат: Пэдди О'Рейли

0

Используйте одинарную цитату в оракуле 12 C.

SELECT 'Paddy O''Reilly' FROM DUAL;

Ещё вопросы

Сообщество Overcoder
Наверх
Меню