Столкнувшись с проблемой:
ORA-32108: максимальный размер столбца или параметра не указан
Я немного исследовал и нашел эти два вопроса: Почему обрабатывает ли Oracle 9i пустую строку как NULL? и Oracle не различать нули и пустые строки?.
Эти вопросы объясняют мою ошибку. Но это привело меня к следующему вопросу - как я могу вернуть пустую строку в качестве значения поля в ResultSet в Oracle?
На данный момент у меня есть:
- создать заявление
- Зарегистрируйте выходной параметр как
oracle::occi::OCCICURSOR
execute
заявление- я вызываю
GetCursor
, чтобы использовать возвращенный набор результатов
execute
не работает из-за ошибки, описанной выше.
Итак, как я могу вернуть такое поле в наборе результатов, которое имеет значение пустой строки (''
)?
Другими словами, я не знаю, как применить действие, указанное ЗДЕСЬ - это это что-то серверное? Или я должен что-то добавить в свой код? Или в хранимой процедуре, которая возвращает этот набор результатов?
Я использую OCCI (Oracle C ++ Call Interface). Мой текущий обходной путь - вернуть строку, содержащую один пробел (' '
), но мне это не нравится.
cast( null as varchar2(1))
. - person Ben   schedule 17.12.2012