Коды завершения этапа выполнения
В таблице 15 приведены коды завершения конструкций встроенного SQL, возвращаемые PCI – претранслятором встроенного SQL (для языка C).
Коды завершения, возвращаемые СУБД ЛИНТЕР на этапе выполнения, приведены в документе «СУБД ЛИНТЕР. Справочник кодов завершения».
Идентификатор кода | Числовое значение | Причина | Комментарий |
---|---|---|---|
OK_ |
0 |
Нормальное завершение. | |
ErrPCI_NotFound |
3000 |
Конец выборки. |
Не найдено (не удалено, не заменено, не добавлено) ни одной записи. |
ErrPCI_LimRes |
3001 |
Превышение ресурсов (пределов) реализации. |
Превышен один из пределов для данной реализации: не более 256 переменных в одном операторе; не более 4096 символов в тексте оператора. |
ErrPCI_IncTyp |
3002 |
Несовместимость типов. |
Попытка выбрать значение поля записи в переменную, тип которой несовместим с типом выбираемого значения. |
ErrPCI_InvVarCnt |
3003 |
Неверное число переменных. |
Конструкция USING содержит иное число входных переменных, чем было указано при объявлении курсора, либо конструкция INTO содержит иное число выходных переменных, чем выбирает оператор SELECT. |
ErrPCI_NoMem |
3004 |
Не хватает памяти. |
Нехватка памяти при резервировании рабочих структур. |
ErrPCI_InvPar |
3005 |
Синтаксическая ошибка в запросе. |
При анализе текста SQL-предложения обнаружена синтаксическая ошибка. |
ErrPCI_ManyKor |
3006 |
Выбрано слишком много записей. |
Попытка выполнить оператор SELECT, который выбирает больше записей, чем размерность массива, указанного в качестве приемника записей: приемник данных – скаляр, а выбрано более 1 записи. |
ErrPCI_IncDim |
3007 |
Несоответствие размеров массивов. |
В качестве переменных, участвующих в одном операторе, указаны массивы разных размерностей, либо переменные-массивы и входные параметры имеют неодинаковые длины, либо переменные-массивы и входные параметры имеют длину меньшую, чем указано повторов в опции FOR. |
ErrPCI_InvFetchPar |
3008 |
Неверные параметры FETCH. |
При выборе одновременно нескольких записей указан модификатор команды FETCH, отличный от NEXT. |
ErrPCI_ChanAlrOpen |
3010 |
Канал уже открыт. |
Попытка повторной подачи оператора CONNECT для той же БД. |
ErrPCI_ChanNotOpen |
3011 |
Канал не был открыт. |
Попытка работы с каналом до установления логической связи с помощью команды CONNECT либо попытка закрыть неоткрытый канал. |
ErrPCI_StatNotPrep |
3012 |
Предложение не подготовлено – не было PREPARE. |
Попытка выполнить предложение, которое не подготовлено к выполнению командой PREPARE. |
ErrPCI_CursNotOpen |
3013 |
Курсор не открыт. |
Попытка работы с курсором, который еще не был открыт. |
ErrPCI_CursAlrOpen |
3014 |
Курсор уже был открыт. |
Попытка повторного открытия курсора. |
ErrPCI_NotDesc |
3015 |
Предложение не подготовлено – не было DESCRIBE. |
Попытка выполнить оператор OPEN или FETCH с конструкцией USING DESCRIPTOR для дескриптора, не заполненного командой SQL DESCRIBE. |
ErrPCI_DescSmall |
3016 |
В дескрипторе слишком мало элементов. |
Зарезервированное число элементов в дескрипторе недостаточно для занесения информации обо всех переменных. |
ErrPCI_CursNotFetch |
3017 |
Не был выполнен FETCH – выборка BLOB невозможна. |
При работе с BLOB-значением запись, содержащую это значение, необходимо предварительно выбрать с помощью оператора FETCH. |
ErrPCI_InvDescIdx |
3019 |
Неверный идентификатор дескриптора. |
Неверный номер точки входа дескриптора (< 1). |
ErrPCI_DescNotAll |
3020 |
Дескриптор не инициализирован. |
Не все описатели дескриптора инициализированы. |
ErrPCI_NullNoInd |
3021 |
Нет индикатора NULL-значений. |
Возвращено NULL-значение, а индикаторной переменной нет. |
ErrPCI_NoDest |
3022 |
Не привязан выходной параметр. |
В динамическом SQL-предложении к выходному параметру не привязан описатель дескриптора. |
ErrPCI_InvVal |
3023 |
Неверное значение параметра. |
Значение не соответствует типу данных параметра. |
ErrPCI_NotBind |
3024 |
Не привязан входной параметр. |
В динамическом SQL-предложении к входному параметру не привязан описатель дескриптора. |
ErrPCI_NoContext |
3025 |
Контекст не инициализирован. |
Не выполнен оператор инициализации контекста в многопоточной программе. |
ErrPCI_WrongPrototype |
3026 |
Прототип процедуры не соответствует ее вызову. | |
ErrPCI_TooLong |
3027 |
Слишком длинная строка во входном параметре. | |
ErrPCI_NullProhibited |
3028 |
Поле не может быть NULL. | |
ErrPCI_StatNotSelect |
3029 |
Попытка создать курсор для не select-предложения. | |
ErrPCI_InvIVarCnt |
3030 |
При привязке параметров не совпало число формальных и фактических входных параметров. | |
ErrPCI_InvOVarCnt |
3031 |
Несовпадение количества параметров. |
При привязке параметров не совпало число формальных и фактических выходных параметров. |
ErrPCI_NoncompVer |
3032 |
Несовместимые версии сервера и библиотеки. | |
ErrPCI_Internal |
3100 |
Неверный указатель структуры. |
Внутренняя ошибка в библиотеке: испорчено содержимое внутренних структур данных. |