210 |
|
SQLGetSegment, SQLPutSegment, |
211 |
|
SQLExecProcedure, SQLStartTransaction, |
212 |
|
SQLCommit, SQLRollback, |
213 |
< |
SQLSelectForUpdate, SQLSetGenerator); |
213 |
> |
SQLSelectForUpdate, SQLSetGenerator, |
214 |
> |
SQLSavePoint); |
215 |
|
|
216 |
|
TFBStatusCode = cardinal; |
217 |
|
TByteArray = array of byte; |
219 |
|
IFirebirdAPI = interface; |
220 |
|
IAttachment = interface; |
221 |
|
ITransaction = interface; |
222 |
+ |
IStatement = interface; |
223 |
|
|
224 |
|
{The IParameterBlock interface provides the template for all parameter |
225 |
|
block interfaces} |
259 |
|
This interface can be accessed from IFirebirdAPI. |
260 |
|
} |
261 |
|
|
262 |
+ |
TIBDataBaseErrorMessage = (ShowSQLCode, |
263 |
+ |
ShowIBMessage, |
264 |
+ |
ShowSQLMessage); |
265 |
+ |
|
266 |
+ |
TIBDataBaseErrorMessages = set of TIBDataBaseErrorMessage; |
267 |
+ |
|
268 |
|
IStatus = interface |
269 |
|
['{34167722-af38-4831-b08a-93162d58ede3}'] |
270 |
|
function GetIBErrorCode: Long; |
444 |
|
function GetArrayMetaData: IArrayMetaData; {Valid only for Array SQL Type} |
445 |
|
function GetBlobMetaData: IBlobMetaData; {Valid only for Blob SQL Type} |
446 |
|
function GetDateTimeStrLength(DateTimeFormat: TIBDateTimeFormats): integer; |
447 |
+ |
function GetStatement: IStatement; |
448 |
+ |
function GetTransaction: ITransaction; |
449 |
|
property Name: AnsiString read GetName; |
450 |
|
property Size: cardinal read GetSize; |
451 |
|
property SQLType: cardinal read GetSQLType; |
487 |
|
|
488 |
|
ISQLData = interface(IColumnMetaData) |
489 |
|
['{3f493e31-7e3f-4606-a07c-b210b9e3619d}'] |
490 |
+ |
function GetStrDataLength: short; |
491 |
|
function GetAsBoolean: boolean; |
492 |
|
function GetAsCurrency: Currency; |
493 |
|
function GetAsInt64: Int64; |
534 |
|
IResults = interface |
535 |
|
['{e836b2bb-93d1-4bbf-a8eb-7ce535de3bb5}'] |
536 |
|
function getCount: integer; |
537 |
+ |
function GetStatement: IStatement; |
538 |
|
function GetTransaction: ITransaction; |
539 |
|
function ByName(Idx: AnsiString): ISQLData; |
540 |
|
function getSQLData(index: integer): ISQLData; |
948 |
|
function CreateBlob(transaction: ITransaction; RelationName, ColumnName: AnsiString; BPB: IBPB=nil): IBlob; overload; |
949 |
|
function CreateBlob(transaction: ITransaction; BlobMetaData: IBlobMetaData; BPB: IBPB=nil): IBlob; overload; |
950 |
|
function CreateBlob(transaction: ITransaction; SubType: integer; CharSetID: cardinal=0; BPB: IBPB=nil): IBlob; overload; |
951 |
< |
function OpenBlob(transaction: ITransaction; RelationName, ColumnName: AnsiString; BlobID: TISC_QUAD; BPB: IBPB=nil): IBlob; |
951 |
> |
function OpenBlob(transaction: ITransaction; RelationName, ColumnName: AnsiString; BlobID: TISC_QUAD; BPB: IBPB=nil): IBlob; overload; |
952 |
> |
function OpenBlob(transaction: ITransaction; BlobMetaData: IBlobMetaData; BlobID: TISC_QUAD; BPB: IBPB=nil): IBlob; overload; |
953 |
|
|
954 |
|
{Array - may use to open existing arrays. However, ISQLData.AsArray is preferred} |
955 |
|
|
956 |
< |
function OpenArray(transaction: ITransaction; RelationName, ColumnName: AnsiString; ArrayID: TISC_QUAD): IArray; |
956 |
> |
function OpenArray(transaction: ITransaction; RelationName, ColumnName: AnsiString; ArrayID: TISC_QUAD): IArray; overload; |
957 |
> |
function OpenArray(transaction: ITransaction; ArrayMetaData: IArrayMetaData; ArrayID: TISC_QUAD): IArray; overload; |
958 |
|
function CreateArray(transaction: ITransaction; RelationName, ColumnName: AnsiString): IArray; overload; |
959 |
|
function CreateArray(transaction: ITransaction; ArrayMetaData: IArrayMetaData): IArray; overload; |
960 |
|
function CreateArrayMetaData(SQLType: cardinal; tableName: AnsiString; columnName: AnsiString; |
1207 |
|
{IB Client Exceptions} |
1208 |
|
EIBClientError = class(EIBError); |
1209 |
|
|
1196 |
– |
{IBError is used internally and by IBX to throw an EIBClientError} |
1197 |
– |
|
1198 |
– |
procedure IBError(ErrMess: TIBClientError; const Args: array of const); |
1199 |
– |
|
1210 |
|
{The Firebird API function is used to access the IFirebirdAPI interface. |
1211 |
|
|
1212 |
|
It will load the Firebird Client Library if this is not already loaded and |
1334 |
|
FIBErrorCode := AIBErrorCode; |
1335 |
|
end; |
1336 |
|
|
1327 |
– |
procedure IBError(ErrMess: TIBClientError; const Args: array of const); |
1328 |
– |
begin |
1329 |
– |
raise EIBClientError.Create(Ord(ErrMess), |
1330 |
– |
Format(GetErrorMessage(ErrMess), Args)); |
1331 |
– |
end; |
1337 |
|
|
1338 |
|
initialization |
1339 |
|
FDefaultFBLibrary := nil; |