Получить характеристики курсора

Назначение
 

Функция Linter_Get_Cursor_Opt позволяет получить характеристики курсора.

Все настройки делаются в ini-файле.

Синтаксические правила
string |int Linter_Get_Cursor_Opt(идентификатор_курсора, характеристика_курсора); 

Возможные значения параметра характеристика_курсора:

Значение Описание
CO_COL_COUNT  Число столбцов в курсорной выборке данных
CO_CONNECT_ID  Реальный номер канала связи с СУБД ЛИНТЕР
CO_CUR_ROW  Текущая запись в курсорной выборке данных
CO_CUR_ROWID  Идентификатор текущей записи в курсорной выборке данных
CO_DECIMAL_AS_DOUBLE  Управление представлением значений типа данных DECIMAL как DOUBLE. По умолчанию (или при установке значения 0) данные возвращаются как строка
CO_DT_FORMAT  Формат дата/время по умолчанию
CO_ERR_POS  Положение ошибки в записи курсорной выборки данных
CO_ERR_ROW  Номер ошибочной записи в курсорной выборке
CO_FETCH_BLOBS_AS_USUAL_DATA  Строковый режим извлечения BLOB-данных
CO_FETCH_BLOBS_AS_STREAM  Потоковый режим извлечения BLOB-данных (с помощью RESOURCE)
CO_FETCH_BOOL_AS_BOOL  Управление представлением булевского типа данных. По умолчанию (или при установке значения 0) данные этого типа возвращаются как строки TRUE или FALSE. Настройка в ini-файле – fetch_bool_as_bool
CO_GENERATE_COL_NAME  Управление представлением неименованных столбцов выборки данных (заставляет для пустых имён столбцов автоматически генерировать имя AUTO_GENERATED_NAME). Предназначено для работы в программной среде, которая требует обязательного задания имён столбцов в выборке данных. По умолчанию (или при установке значения 0) автоматическое именование пустых столбцов не выполняется
CO_LAST_ROWID  Последний изменённый, добавленный или удалённый ROWID в курсорной выборке данных
CO_NAME  Имя курсора
CO_NODE_NAME  Имя узла ЛИНТЕР-сервера
CO_NULL_AS_NULL_OBJECT  Управление обработкой NULL-значений (при получении данных и привязке параметра). По умолчанию (или при установке значения 0) данные обрабатываются как пустые строки/нулевые значения/FALSE. Настройка в ini-файле – null_as_null_object
CO_PARAM_COUNT  Количество параметров транслируемого запроса
CO_QUERY_TYPE  

Тип курсорного запроса:

1 – SELECT-запрос;

52 – EXECUTE-запрос;

47 – GRANT;

42 – ALTER;

0 – остальные запросы

CO_RENAME_DUBBED_COL  Управление дубликатами имен столбцов в выборке данных. В случае дублирующихся имён столбцов к имени столбца добавляется постфикс _N, где N – номер дубля. (Первый столбец остаётся со своим именем). По умолчанию (или при установке значения 0 (FALSE)) дубликаты имен столбцов остаются неизменными. Однако в комбинации PDO::FETCH_LAZY + PDO::ATTR_RENAME_DUBBED_COL = FALSE переименование столбцов с одинаковыми именами будет выполняться. В случае совместного использования с параметром CO_GENERATE_COL_NAME именами дубликатов пустых столбцов будет AUTO_GENERATED_NAME_1, AUTO_GENERATED_NAME_2 и т.д.
CO_ROW_COUNT  Число записей в выборке данных
CO_UPDATABLE  

Тип курсора:

1 – обновляемый;

0 – необновляемый

Возвращаемое значение
Характеристика курсора Тип возвращаемого значения
CO_NAME  string
CO_DT_FORMAT  string
CO_COL_COUNT  integer
CO_ROW_COUNT  integer
CO_ERR_ROW  integer
CO_ERR_POS  integer
CO_CUR_ROW  integer
CO_CUR_ROWID  integer
CO_CONNECT_ID  integer
CO_NODE_NAME  string
CO_LAST_ROWID  integer
CO_UPDATABLE  integer
CO_PARAM_COUNT  integer
CO_FETCH_BLOBS_AS_USUAL_DATA  integer
CO_QUERY_TYPE  integer
Пример
$upd = Linter_Get_Cursor_Opt($con,CO_UPDATABLE);
$typ = Linter_Get_Cursor_Opt($con,CO_QUERY_TYPE);
printf("upd %d type %d \n", $upd, $typ);

См. также пример demo4.php в подкаталоге samples\php установочного каталога СУБД ЛИНТЕР.