Module Query
Implement query class
Class Query
Query:new (cnn [, sql [, params]]) | Создается новый объект Query . |
Query:destroy () | Уничтожает объект Query |
Query:close () | Закрывает открытый курсор. |
Query:closed () | Возвращает статус курсора. |
Query:destroyed () | Возвращает статус объекта. |
Query:opened () | Возвращает статус курсора. |
Query:handle () | Возвращает плотформозависимый дескриптор. |
Query:connection () | Возвращает родительский объект Connection . |
Query:prepare ( [sql]) | Prepare query. |
Query:prepared () | Возвращает признак того что запрос подготовлен. |
Query:unprepare () | Unprepare query. |
Query:supports_prepare () | Does this query native support prepared queryes |
Query:set_sql (sql) | Устанавливает текст запроса. |
Query:bind (paramID, value) | Присваивает значение параметру. |
Query:bind (paramID, func [, len]) | Присваивает значение параметру. |
Query:bind (params) | Присваивает значение параметрам. |
Query:open ( [sql [, param]]) | Открывает курсор. |
Query:exec ( [sql [, params]]) | Выполняет запрос который не должен возвращать Recordset. |
Query:each ( [sql] [, params] [, autoclose=true], callback) | Итератор для перебора Recordset. |
Query:rows ( [sql [, params]]) | Итератор для перебора Recordset. |
Query:first_row () | Возвращает первую строку Recordset. |
Query:first_value (...) | Возвращает первое значение первой записи. |
Query:fetch_all (fetch_mode, sql, params) | Возвращает полный результат запроса |
Query:next_resultset () | Переключает курсор не следующий Recordset. |
Query:set_autoclose (value) | Устанавливает режим закрытия курсора при достижениии конца Recordset. |
Query:get_autoclose () | Возвращает режим закрытия курсора при достижениии конца Recordset. |
Class Query
- Query:new (cnn [, sql [, params]])
-
Создается новый объект Query .
Parameters:
- cnn Connection открытый объект Connection
- sql string текст запроса
- params table таблица параметров для запроса
Returns:
- Query:destroy ()
-
Уничтожает объект Query
see also:
- Query:close ()
- Закрывает открытый курсор.
- Query:closed ()
- Возвращает статус курсора.
- Query:destroyed ()
- Возвращает статус объекта.
- Query:opened ()
- Возвращает статус курсора.
- Query:handle ()
-
Возвращает плотформозависимый дескриптор.
Returns:
-
handle
- Query:connection ()
-
Возвращает родительский объект Connection .
Returns:
- Query:prepare ( [sql])
-
Prepare query.
Если библиотека или драйвер не поддерживают подготовленные запросы, то используется подстановка параметров в текст при выполнении. При этом функция возвращает успех, но Query:prepared возвращает false.Parameters:
- sql string текст запроса
Returns:
-
boolean
true в случае удачи
- Query:prepared ()
- Возвращает признак того что запрос подготовлен.
- Query:unprepare ()
- Unprepare query.
- Query:supports_prepare ()
- Does this query native support prepared queryes
- Query:set_sql (sql)
-
Устанавливает текст запроса.
После изменения SQL все параметры становятся невалидными.
Запрос не должен быть открыт или подготовлен.Parameters:
- sql string текст запроса
Returns:
-
boolean
true в случае удачи
- Query:bind (paramID, value)
-
Присваивает значение параметру.
В качестве значения можно указывать 2 специальные константы PARAMNULL и PARAMDEFAULT.Parameters:
- paramID number or string номер параметра (начиная с 1) или имя параметра
- value значение параметра.
- Query:bind (paramID, func [, len])
-
Присваивает значение параметру.
Эта функция может использоватся только если параметризованные запросы поддерживается драйвером.
В качестве значения можно указывать 2 специальные константы PARAMNULL и PARAMDEFAULT.Parameters:
- paramID number or string номер параметра (начиная с 1) или имя параметра
- func
Функция используется для получения данных в момент выполнения запроса.
Для строк может выдавать данные порциями. Конец данных наступает либо в момент возврата nil если не использовался параметр len, либо после передачи len байт если был указан параметр len. - len реальная длинна данных.
- Query:bind (params)
-
Присваивает значение параметрам.
Parameters:
- params
table
- таблица параметров(название/номер => значение)
- params
table
- Query:open ( [sql [, param]])
-
Открывает курсор.
Если параметр sql опущен, то используется значение установленное ранее.Parameters:
see also:
- Query:exec ( [sql [, params]])
-
Выполняет запрос который не должен возвращать Recordset.
Если запрос вернул курсор, то он закрывается, но не производится откат транзакции
Если параметр sql опущен, то используется значение установленное ранее.Parameters:
Returns:
-
number
количество записей задействованных в запросе,
see also:
- Query:each ( [sql] [, params] [, autoclose=true], callback)
-
Итератор для перебора Recordset.
Parameters:
- sql string текст запроса
- params table параметры для запроса
- autoclose boolean признак того что запрос должен быть закрыт перед завершением функции.
- callback dba.callback_function
- Query:rows ( [sql [, params]])
-
Итератор для перебора Recordset.
Итератор для generic forParameters:
- Query:first_row ()
-
Возвращает первую строку Recordset.
Эквивалентна Query:each(sql,params,function(...) return ... end)see also:
- Query:first_value (...)
-
Возвращает первое значение первой записи.
Эквивалентна (Query:first_row(sql,params)) с учетом проверки на ошибкиParameters:
- ...
see also:
- Query:fetch_all (fetch_mode, sql, params)
-
Возвращает полный результат запроса
Parameters:
- fetch_mode [required] 'a' - именованные записи 'n' - нимерованные записи
- sql [optional] текст запроса
- params [optional] таблица параметров для запроса
Returns:
-
массив записей
- Query:next_resultset ()
-
Переключает курсор не следующий Recordset.
Курсор должен быть открыт.Returns:
- ничего если нет следующего Recordset
- курсор если есть следующий Recordset
see also:
- Query:set_autoclose (value)
-
Устанавливает режим закрытия курсора при достижениии конца Recordset.
Parameters:
- value
see also:
- Query:get_autoclose ()
-
Возвращает режим закрытия курсора при достижениии конца Recordset.
see also: