IAttachment
Интерфейс IAttachment заменяет isc_db_handle.
-
getInfo
void getInfo(StatusType* status, unsigned itemsLength, const unsigned char* items, unsigned bufferLength, unsigned char* buffer)Заменяет
isc_database_info(). -
startTransaction
ITransaction* startTransaction(StatusType* status, unsigned tpbLength, const unsigned char* tpb)Частично заменяет
isc_start_multiple(), использует координатор, чтобызапустить более одной распределённой транзакции. Позволяет объединить 2транзакции в одну распределённую. -
reconnectTransaction
ITransaction* reconnectTransaction(StatusType* status, unsigned length, const unsigned char* id)Позволяет подключиться к транзакции в состоянии limbo. Параметр Idсодержит номер транзакции в сетевом формате заданной длины.
-
compileRequest
IRequest* compileRequest(StatusType* status, unsigned blrLength, const unsigned char* blr)Поддержка ISC API.
-
transactRequest
void transactRequest(StatusType* status, ITransaction* transaction, unsigned blrLength, const unsigned char* blr, unsigned inMsgLength, const unsigned char* inMsg, unsigned outMsgLength, unsigned char* outMsg)Поддержка ISC API.
-
createBlob
IBlob* createBlob(StatusType* status, ITransaction* transaction, ISC_QUAD* id, unsigned bpbLength, const unsigned char* bpb)Создает новый blob, сохраняет его идентификатор в id, заменяет
isc_create_blob2(). -
openBlob
IBlob* openBlob(StatusType* status, ITransaction* transaction, ISC_QUAD* id, unsigned bpbLength, const unsigned char* bpb)Открывает существующий blob, заменяет
isc_open_blob2(). -
getSlice
int getSlice(StatusType* status, ITransaction* transaction, ISC_QUAD* id, unsigned sdlLength, const unsigned char* sdl, unsigned paramLength, const unsigned char* param, int sliceLength, unsigned char* slice)Поддержка ISC API.
-
putSlice
void putSlice(StatusType* status, ITransaction* transaction, ISC_QUAD* id, unsigned sdlLength, const unsigned char* sdl, unsigned paramLength, const unsigned char* param, int sliceLength, unsigned char* slice)Поддержка ISC API.
-
executeDyn
void executeDyn(StatusType* status, ITransaction* transaction, unsigned length, const unsigned char* dyn)Поддержка ISC API.
-
prepare
IStatement* prepare(StatusType* status, ITransaction* tra, unsigned stmtLength, const char* sqlStmt, unsigned dialect, unsigned flags)Заменяет
isc_dsql_prepare(). Дополнительный параметр flags позволяютконтролировать, какая информация будет предварительно загружена издвижка сразу (т.е. в одном сетевом пакете для удаленной операции). -
execute
ITransaction* execute(StatusType* status, ITransaction* transaction, unsigned stmtLength, const char* sqlStmt, unsigned dialect, IMessageMetadata* inMetadata, void* inBuffer, IMessageMetadata* outMetadata, void* outBuffer)Выполняет любую инструкцию SQL, за исключением возврата нескольких строкданных. Частичный аналог
isc_dsql_execute2()— вход и выход XSLQDAзаменены на входные и выходные сообщения с соответствующими буферами. -
openCursor
IResultSet* openCursor(StatusType* status, ITransaction* transaction, unsigned stmtLength, const char* sqlStmt, unsigned dialect, IMessageMetadata* inMetadata, void* inBuffer, IMessageMetadata* outMetadata, const char* cursorName, unsigned cursorFlags)Выполняет оператор SQL, потенциально возвращающий несколько строкданных. Возвращает интерфейс
IResultSet, который используется дляизвлечения этих данных. Формат выходных данных определяется параметромoutMetadata, при заданииNULLиспользуется формат по умолчанию. ПараметрcursorName указывает имя открытого курсора (аналогisc_dsql_set_cursor_name()). ПараметрcursorFlagsнеобходим, чтобыоткрыть двунаправленный указатель курсора, для этого необходимо указатьзначениеIStatement::CURSOR_TYPE_SCROLLABLE. -
queEvents
IEvents* queEvents(StatusType* status, IEventCallback* callback, unsigned length, const unsigned char* events)Заменяет вызов
isc_que_events(). Вместо функции обратного вызова сvoid*параметром используется интерфейс обратного вызова. -
cancelOperation
void cancelOperation(StatusType* status, int option)Замена
fb_cancel_operation(). -
ping
void ping(StatusType* status)Проверяет состояния соединения. Если тест не удаётся, то единственнаявозможная операция с подключением — закрыть его.
-
getIdleTimeout
unsigned getIdleTimeout(StatusType* status)Возвращает таймаут простоя соединения в секундах.
-
setIdleTimeout
void setIdleTimeout(StatusType* status, unsigned timeOut)Устанавливает таймаут простоя соединения в секундах.
-
getStatementTimeout
unsigned getStatementTimeout(StatusType* status)Возвращает таймаут выполнения запроса в миллисекундах.
-
setStatementTimeout
void setStatementTimeout(StatusType* status, unsigned timeOut)Устанавливает таймаут выполнения запроса в миллисекундах.
-
createBatch
IBatch* createBatch(StatusType* status, ITransaction* transaction, unsigned stmtLength, const char* sqlStmt, unsigned dialect, IMessageMetadata* inMetadata, unsigned parLength, const unsigned char* par)Подготавливает
sqlStmtи создает интерфейсIBatch, готовый принять несколько наборов входных параметровв форматеinMetadata. Если оставитьNULLвinMetadata, то пакет будет использовать формат по умолчанию дляsqlStmt.В функциюcreateBatch()можно передать блок параметров, что позволит настроить поведение пакета. -
createReplicator
IReplicator* createBatch(StatusType* status)
Создаёт экземпляр плагина репликации с интерфейсом
IReplicator. -
detach
void detach(StatusType* status)Отсоединяет от текущей базы данных. Заменяет
isc_detach_database(). В случае успеха освобождает интерфейс. -
dropDatabase
void dropDatabase(StatusType* status)Удаляет текущую базу данных. Заменяет
isc_drop_database(). В случае успеха освобождает интерфейс.