📄 zlibibsql.pas
字号:
blr_rid = 75;
blr_union = 76;
blr_map = 77;
blr_group_by = 78;
blr_aggregate = 79;
blr_join_type = 80;
blr_agg_count = 83;
blr_agg_max = 84;
blr_agg_min = 85;
blr_agg_total = 86;
blr_agg_average = 87;
blr_parameter3 = 88;
blr_run_count = 118;
blr_run_max = 89;
blr_run_min = 90;
blr_run_total = 91;
blr_run_average = 92;
blr_agg_count2 = 93;
blr_agg_count_distinct = 94;
blr_agg_total_distinct = 95;
blr_agg_average_distinct = 96;
blr_function = 100;
blr_gen_id = 101;
blr_prot_mask = 102;
blr_upcase = 103;
blr_lock_state = 104;
blr_value_if = 105;
blr_matching2 = 106;
blr_index = 107;
blr_ansi_like = 108;
blr_bookmark = 109;
blr_crack = 110;
blr_force_crack = 111;
blr_seek = 112;
blr_find = 113;
blr_continue = 0;
blr_forward = 1;
blr_backward = 2;
blr_bof_forward = 3;
blr_eof_backward = 4;
blr_lock_relation = 114;
blr_lock_record = 115;
blr_set_bookmark = 116;
blr_get_bookmark = 117;
blr_rs_stream = 119;
blr_exec_proc = 120;
blr_begin_range = 121;
blr_end_range = 122;
blr_delete_range = 123;
blr_procedure = 124;
blr_pid = 125;
blr_exec_pid = 126;
blr_singular = 127;
blr_abort = 128;
blr_block = 129;
blr_error_handler = 130;
blr_cast = 131;
blr_release_lock = 132;
blr_release_locks = 133;
blr_start_savepoint = 134;
blr_end_savepoint = 135;
blr_find_dbkey = 136;
blr_range_relation = 137;
blr_delete_ranges = 138;
blr_plan = 139;
blr_merge = 140;
blr_join = 141;
blr_sequential = 142;
blr_navigational = 143;
blr_indices = 144;
blr_retrieve = 145;
blr_relation2 = 146;
blr_rid2 = 147;
blr_reset_stream = 148;
blr_release_bookmark = 149;
blr_set_generator = 150;
blr_ansi_any = 151;
blr_exists = 152;
blr_cardinality = 153;
blr_record_version = 154; // get tid of record
blr_stall = 155; // fake server stall
blr_seek_no_warn = 156;
blr_find_dbkey_version = 157;
blr_ansi_all = 158;
blr_extract = 159;
{ sub parameters for blr_extract }
blr_extract_year = 0;
blr_extract_month = 1;
blr_extract_day = 2;
blr_extract_hour = 3;
blr_extract_minute = 4;
blr_extract_second = 5;
blr_extract_weekday = 6;
blr_extract_yearday = 7;
blr_current_date = 160;
blr_current_timestamp = 161;
blr_current_time = 162;
{******* These verbs were added in 6.0, primarily to support 64-bit integers *********}
blr_add2 = 163;
blr_subtract2 = 164;
blr_multiply2 = 165;
blr_divide2 = 166;
blr_agg_total2 = 167;
blr_agg_total_distinct2 = 168;
blr_agg_average2 = 169;
blr_agg_average_distinct2 = 170;
blr_average2 = 171;
blr_gen_id2 = 172;
blr_set_generator2 = 173;
{****************** Plain API Types definition *****************}
type
{$IFDEF LINUX}
ULong = Cardinal;
UChar = Char;
Short = SmallInt;
{$ENDIF}
ISC_LONG = LongInt;
UISC_LONG = ULong;
ISC_INT64 = TInt64;
ISC_STATUS = LongInt;
UISC_STATUS = ULong;
PISC_LONG = ^ISC_LONG;
PUISC_LONG = ^UISC_LONG;
PISC_STATUS = ^ISC_STATUS;
PPISC_STATUS = ^PISC_STATUS;
PUISC_STATUS = ^UISC_STATUS;
PShort = ^Short;
PPChar = ^PChar;
UShort = Word;
PVoid = Pointer;
{ C Date/Time Structure }
TCTimeStructure = record
tm_sec: Integer; { Seconds }
tm_min: Integer; { Minutes }
tm_hour: Integer; { Hour (0--23) }
tm_mday: Integer; { Day of month (1--31) }
tm_mon: Integer; { Month (0--11) }
tm_year: Integer; { Year (calendar year minus 1900) }
tm_wday: Integer; { Weekday (0--6) Sunday = 0) }
tm_yday: Integer; { Day of year (0--365) }
tm_isdst: Integer; { 0 if daylight savings time is not in effect) }
end;
PCTimeStructure = ^TCTimeStructure;
TM = TCTimeStructure;
PTM = ^TM;
TISC_VARYING = record
strlen: Short;
str: array[0..0] of Char;
end;
{ InterBase Handle Definitions }
TISC_BLOB_HANDLE = PVoid;
PISC_BLOB_HANDLE = ^TISC_BLOB_HANDLE;
TISC_DB_HANDLE = PVoid;
PISC_DB_HANDLE = ^TISC_DB_HANDLE;
TISC_STMT_HANDLE = PVoid;
PISC_STMT_HANDLE = ^TISC_STMT_HANDLE;
TISC_TR_HANDLE = PVoid;
PISC_TR_HANDLE = ^TISC_TR_HANDLE;
TISC_CALLBACK = procedure;
{ Time & Date Support }
ISC_DATE = LongInt;
PISC_DATE = ^ISC_DATE;
ISC_TIME = ULong;
PISC_TIME = ^ISC_TIME;
TISC_TIMESTAMP = record
timestamp_date: ISC_DATE;
timestamp_time: ISC_TIME;
end;
PISC_TIMESTAMP = ^TISC_TIMESTAMP;
{ Blob id structure }
TGDS_QUAD = record
gds_quad_high: ISC_LONG;
gds_quad_low: UISC_LONG;
end;
PGDS_QUAD = ^TGDS_QUAD;
TISC_QUAD = TGDS_QUAD;
PISC_QUAD = ^TISC_QUAD;
TISC_ARRAY_BOUND = record
array_bound_lower: Short;
array_bound_upper: Short;
end;
PISC_ARRAY_BOUND = ^TISC_ARRAY_BOUND;
TISC_ARRAY_DESC = record
array_desc_dtype: UChar;
array_desc_scale: Char;
array_desc_length: Short;
array_desc_field_name: array[0..31] of Char;
array_desc_relation_name: array[0..31] of Char;
array_desc_dimensions: Short;
array_desc_flags: Short;
array_desc_bounds: array[0..15] of TISC_ARRAY_BOUND;
end;
PISC_ARRAY_DESC = ^TISC_ARRAY_DESC;
TISC_BLOB_DESC = record
blob_desc_subtype: Short;
blob_desc_charset: Short;
blob_desc_segment_size: Short;
blob_desc_field_name: array[0..31] of UChar;
blob_desc_relation_name: array[0..31] of UChar;
end;
PISC_BLOB_DESC = ^TISC_BLOB_DESC;
{ Declare the extended SQLDA }
TXSQLVAR = record
sqltype: Short; { datatype of field }
sqlscale: Short; { scale factor }
sqlsubtype: Short; { datatype subtype - BLOBs }
{ & text types only }
sqllen: Short; { length of data area }
sqldata: PChar; { address of data }
sqlind: PSmallInt; { address of indicator }
{ variable }
sqlname_length: Short; { length of sqlname field }
{ name of field, name length + space for NULL }
sqlname: array[0..31] of Char;
relname_length: Short; { length of relation name }
{ field's relation name + space for NULL }
relname: array[0..31] of Char;
ownname_length: Short; { length of owner name }
{ relation's owner name + space for NULL }
ownname: array[0..31] of Char;
aliasname_length: Short; { length of alias name }
{ relation's alias name + space for NULL }
aliasname: array[0..31] of Char;
end;
PXSQLVAR = ^TXSQLVAR;
TXSQLDA = record
version: Short; { version of this XSQLDA }
{ XSQLDA name field }
sqldaid: array[0..7] of Char;
sqldabc: ISC_LONG; { length in bytes of SQLDA }
sqln: Short; { number of fields allocated }
sqld: Short; { actual number of fields }
{ first field address }
sqlvar: array[0..0] of TXSQLVAR;
end;
PXSQLDA = ^TXSQLDA;
{****************************************************}
{ This record type is for passing arguments to }
{ isc_start_transaction (See docs) }
{****************************************************}
TISC_START_TRANS = record
db_handle: PISC_DB_HANDLE;
tpb_length: Word;
tpb_address: PChar;
end;
{****************************************************}
{ This record type is for passing arguments to }
{ isc_start_multiple (see docs) }
{****************************************************}
TISC_TEB = record
db_handle: PISC_DB_HANDLE;
tpb_length: LongInt;
tpb_address: PChar;
end;
PISC_TEB = ^TISC_TEB;
TISC_TEB_ARRAY = array[0..0] of TISC_TEB;
PISC_TEB_ARRAY = ^TISC_TEB_ARRAY;
{************** Plain API Function types definition *************}
{ General database routines }
Tisc_attach_database = function(status_vector: PISC_STATUS;
db_name_length: Short; db_name: PChar; db_handle: PISC_DB_HANDLE;
parm_buffer_length: Short; parm_buffer: PChar): ISC_STATUS; stdcall;
Tisc_detach_database = function(status_vector: PISC_STATUS;
db_handle: PISC_DB_HANDLE): ISC_STATUS; stdcall;
Tisc_drop_database = function(status_vector: PISC_STATUS;
db_handle: PISC_DB_HANDLE): ISC_STATUS; stdcall;
Tisc_database_info = function(status_vector: PISC_STATUS;
db_handle: PISC_DB_HANDLE; item_list_buffer_length: Short;
item_list_buffer: PChar; result_buffer_length: Short;
result_buffer: PChar): ISC_STATUS; stdcall;
{ Array processing routines }
Tisc_array_gen_sdl = function(status_vector: PISC_STATUS;
isc_array_desc: PISC_ARRAY_DESC; isc_arg3: PShort;
isc_arg4: PChar; isc_arg5: PShort): ISC_STATUS; stdcall;
Tisc_array_get_slice = function(status_vector: PISC_STATUS;
db_handle: PISC_DB_HANDLE; trans_handle: PISC_TR_HANDLE;
array_id: PISC_QUAD; descriptor: PISC_ARRAY_DESC;
dest_array: PVoid; slice_length: ISC_LONG): ISC_STATUS;
stdcall;
Tisc_array_lookup_bounds = function(status_vector: PISC_STATUS;
db_handle: PISC_DB_HANDLE; trans_handle: PISC_TR_HANDLE;
table_name, column_name: PChar;
descriptor: PISC_ARRAY_DESC): ISC_STATUS; stdcall;
Tisc_array_lookup_desc = function(status_vector: PISC_STATUS;
db_handle: PISC_DB_HANDLE; trans_handle: PISC_TR_HANDLE;
table_name, column_name: PChar;
descriptor: PISC_ARRAY_DESC): ISC_STATUS; stdcall;
Tisc_array_set_desc = function(status_vector: PISC_STATUS;
table_name: PChar; column_name: PChar;
sql_dtype, sql_length, sql_dimensions: PShort;
descriptor: PISC_ARRAY_DESC): ISC_STATUS; stdcall;
Tisc_array_put_slice = function(status_vector: PISC_STATUS;
db_handle: PISC_DB_HANDLE; trans_handle: PISC_TR_HANDLE;
array_id: PISC_QUAD; descriptor: PISC_ARRAY_DESC;
source_array: PVoid; slice_length: PISC_LONG): ISC_STATUS;
stdcall;
Tisc_free = function(isc_arg1: PChar): ISC_LONG; stdcall;
Tisc_sqlcode = function(status_vector: PISC_STATUS): ISC_LONG; stdcall;
Tisc_sql_interprete = procedure(sqlcode: Short; buffer: PChar;
buffer_length: Short); stdcall;
Tisc_interprete = function(buffer: PChar; status_vector: PPISC_STATUS):
ISC_STATUS; stdcall;
{ Transaction support routines }
Tisc_start_transaction = function(status_vector: PISC_STATUS;
tran_handle: PISC_TR_HANDLE; db_handle_count: Short;
db_handle: PISC_DB_HANDLE; tpb_length: Word; tpb_address: PChar):
ISC_STATUS; cdecl;
Tisc_start_multiple = function(status_vector: PISC_STATUS;
tran_handle: PISC_TR_HANDLE; db_handle_count: Short;
teb_vector_address: PISC_TEB): ISC_STATUS; stdcall;
Tisc_rollback_transaction = function(status_vector: PISC_STATUS;
tran_handle: PISC_TR_HANDLE): ISC_STATUS; stdcall;
Tisc_rollback_retaining = function(status_vector: PISC_STATUS;
tran_handle: PISC_TR_HANDLE): ISC_STATUS; stdcall;
Tisc_commit_retaining = function(status_vector: PISC_STATUS;
tran_handle: PISC_TR_HANDLE): ISC_STATUS; stdcall;
Tisc_commit_transaction = function(status_vector: PISC_STATUS;
tran_handle: PISC_TR_HANDLE): ISC_STATUS; stdcall;
{ Dynamic SQL routines }
Tisc_dsql_allocate_statement = function(status_vector: PISC_STATUS;
db_handle: PISC_DB_HANDLE; stmt_handle: PISC_STMT_HANDLE): ISC_STATUS;
stdcall;
Tisc_dsql_alloc_statement2 = function(status_vector: PISC_STATUS;
db_handle: PISC_DB_HANDLE; stmt_handle: PISC_STMT_HANDLE): ISC_STATUS;
stdcall;
Tisc_dsql_describe = function(status_vector: PISC_STATUS;
stmt_handle: PISC_STMT_HANDLE; dialect: Word; xsqlda: PXSQLDA): ISC_STATUS;
stdcall;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -