Более 60000 символов дают строчную литералу слишком длинную ошибку на Oracle 11g

Я столкнулся с той же проблемой при попытке обновить столбец, имя которого было ключевым словом. Решение выше не помогло мне. Я решил это, просто указав имя таблицы следующим образом:

UPDATE `survey`
SET survey.values='yes,no'
WHERE (question='Did you agree?')
0
задан U880D 13 July 2018 в 05:47
поделиться

1 ответ

Как указано в руководстве , максимальная длина строковой константы SQL составляет 4000 байт в Oracle. Если вы активируете расширенные varchars , это 32k.

В PL / SQL максимальный размер всегда равен 32k.

Вам нужно использовать переменные связывания, если вы хотите передать строковый литерал, который длиннее.

В Java, который будет означать PreparedStatement и в PL / SQL a связывает переменную . Другие языки программирования имеют похожие конструкции.

3
ответ дан a_horse_with_no_name 17 August 2018 в 13:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: