diff --git a/packages/base/ibase/ibase60.inc b/packages/base/ibase/ibase60.inc new file mode 100644 index 0000000000..84a1478bf7 --- /dev/null +++ b/packages/base/ibase/ibase60.inc @@ -0,0 +1,2653 @@ +{ + $Id$ +} + +{$MODE objfpc} +{$MACRO on} + +interface + +{$IFDEF LinkDynamically} +uses Dynlibs, sysutils; +{$ENDIF} + +{$IFDEF Unix} + {$LINKLIB c} + {$LINKLIB crypt} + {$DEFINE extdecl:=cdecl} + const + gdslib = 'libgds.so'; + fbclib = 'libfbclient.so'; +{$ENDIF} +{$IFDEF Win32} + {$DEFINE extdecl:=stdcall} + const + gdslib = 'gds32.dll'; + fbclib = 'fbclient.dll'; +{$ENDIF} + +type + { Unsigned types } + + UChar = Byte; + UShort = Word; + UInt = DWord; + ULong = DWord; + + { Signed types } + + Int = LongInt; + Long = LongInt; + Short = SmallInt; + Float = Single; + + { Pointers to basic types } + + PInt = ^Int; + PShort = ^Short; + PUShort = ^UShort; + PLong = ^Long; + PULong = ^ULong; + PFloat = ^Float; + PUChar = ^UChar; + PVoid = ^Pointer; + +{$PACKRECORDS C} + + const + ISC_TRUE = 1; + ISC_FALSE = 0; + const + ISC__TRUE = ISC_TRUE; + ISC__FALSE = ISC_FALSE; + +Type + ISC_USHORT = word; + ISC_STATUS = longint; + ISC_INT64 = int64; + ISC_UINT64 = qword; + ISC_LONG = Longint; + + PISC_USHORT = ^ISC_USHORT; + PISC_STATUS = ^ISC_STATUS; + PPISC_STATUS = ^PISC_STATUS; + PISC_INT64 = ^ISC_INT64; + PISC_UINT64 = ^ISC_UINT64; + PISC_LONG = ^ISC_LONG; + + const + DSQL_close = 1; + DSQL_drop = 2; + + {!!MVC + Removed all ISC_FAR, ISC_EXPORT_VARARG and ISC_EXPORT + macros. + They confuse h2pas... + !!MVC } + { } + { Time & Date Support } + { } +{$ifndef _ISC_TIMESTAMP_} + + type + + ISC_DATE = longint; + ISC_TIME = dword; + ISC_TIMESTAMP = record + timestamp_date : ISC_DATE; + timestamp_time : ISC_TIME; + end; + TISC_DATE = ISC_DATE; + TISC_TIME = ISC_TIME; + TISC_TIMESTAMP = ISC_TIMESTAMP; + PISC_DATE = ^ISC_DATE; + PISC_TIME = ^ISC_TIME; + PISC_TIMESTAMP = ^ISC_TIMESTAMP; + const + _ISC_TIMESTAMP_ = 1; +{$endif} + + const + ISC_TIME_SECONDS_PRECISION = 10000; + ISC_TIME_SECONDS_PRECISION_SCALE = -4; + { } + { Blob id structure } + { } + +Type + + GDS_QUAD = record + gds_quad_high : ISC_LONG; + gds_quad_low : ISC_LONG; + end; + TGDS_QUAD = GDS_QUAD; + PGDS_QUAD = ^GDS_QUAD; + +Type + ISC_QUAD = GDS_QUAD; + TISC_QUAD = ISC_QUAD; + PISC_QUAD = ^ISC_QUAD; + +{ !!field redefinitions !! + isc_quad_high = gds_quad_high; + isc_quad_low = gds_quad_low; +} + +type + + ISC_ARRAY_BOUND = record + array_bound_lower : smallint; + array_bound_upper : smallint; + end; + TISC_ARRAY_BOUND = ISC_ARRAY_BOUND; + PISC_ARRAY_BOUND = ^ISC_ARRAY_BOUND; + + ISC_ARRAY_DESC = record + array_desc_dtype : byte; + array_desc_scale : char; + array_desc_length : word; + array_desc_field_name : array[0..31] of char; + array_desc_relation_name : array[0..31] of char; + array_desc_dimensions : smallint; + array_desc_flags : smallint; + array_desc_bounds : array[0..15] of ISC_ARRAY_BOUND; + end; + TISC_ARRAY_DESC = ISC_ARRAY_DESC; + PISC_ARRAY_DESC = ^ISC_ARRAY_DESC; + + ISC_BLOB_DESC = record + blob_desc_subtype : smallint; + blob_desc_charset : smallint; + blob_desc_segment_size : smallint; + blob_desc_field_name : array[0..31] of byte; + blob_desc_relation_name : array[0..31] of byte; + end; + TISC_BLOB_DESC = ISC_BLOB_DESC; + PISC_BLOB_DESC = ^ISC_BLOB_DESC ; + { } + { Blob control structure } + { } + {!!MVC + !!MVC } + { Source filter } + {!!MVC + !!MVC } + { Argument to pass to source } + { filter } + { Target type } + { Source type } + { Length of buffer } + { Length of current segment } + { Length of blob parameter } + { block } + { Address of blob parameter } + { block } + { Address of segment buffer } + { Length of longest segment } + { Total number of segments } + { Total length of blob } + { Address of status vector } + { Application specific data } + TCTLSourceFunction = function : isc_long; + + PISC_BLOB_CTL = ^ISC_BLOB_CTL ; + ISC_BLOB_CTL = record + ctl_source : TCTLSourceFunction; // was ISC_STATUS ( *ctl_source)(); + ctl_source_handle : pisc_blob_ctl ; // was struct isc_blob_ctl * ctl_source_handle; + ctl_to_sub_type : smallint; + ctl_from_sub_type : smallint; + ctl_buffer_length : word; + ctl_segment_length : word; + ctl_bpb_length : word; + ctl_bpb : Pchar; + ctl_buffer : Pbyte; + ctl_max_segment : ISC_LONG; + ctl_number_segments : ISC_LONG; + ctl_total_length : ISC_LONG; + ctl_status : PISC_STATUS; + ctl_data : array[0..7] of longint; + end; + TISC_BLOB_CTL = ISC_BLOB_CTL; + + { } + { Blob stream definitions } + { } + { Blob handle } + { Address of buffer } + { Next character } + { Length of buffer } + { Characters in buffer } + { (mode) ? OUTPUT : INPUT } + + BSTREAM = record + bstr_blob : pointer; + bstr_buffer : Pchar; + bstr_ptr : Pchar; + bstr_length : smallint; + bstr_cnt : smallint; + bstr_mode : char; + end; + TBSTREAM = BSTREAM; + PBstream = ^BSTREAM; + {!!MVC + + #define getb(p) (--(p)->bstr_cnt >= 0 ? (p)->bstr_ptr++ & 0377: BLOB_get (p)) + #define putb(x,p) (((x) == '\n' || (!(--(p)->bstr_cnt))) ? BLOB_put ((x),p) : ((int) ( (p)->bstr_ptr++ = (unsigned) (x)))) + #define putbx(x,p) ((!(--(p)->bstr_cnt)) ? BLOB_put ((x),p) : ((int) ( (p)->bstr_ptr++ = (unsigned) (x)))) + + !!MVC } + { } + { Dynamic SQL definitions } + { } + { } + { Declare the extended SQLDA } + { } + { datatype of field } + { scale factor } + { datatype subtype - BLOBs & Text } + { types only } + { length of data area } + { address of data } + { address of indicator variable } + { length of sqlname field } + { name of field, name length + space } + { for NULL } + { length of relation name } + { field's relation name + space for } + { NULL } + { length of owner name } + { relation's owner name + space for } + { NULL } + { length of alias name } + { relation's alias name + space for } + { NULL } + + XSQLVAR = record + sqltype : smallint; + sqlscale : smallint; + sqlsubtype : smallint; + sqllen : smallint; + sqldata : Pchar; + sqlind : Psmallint; + sqlname_length : smallint; + sqlname : array[0..31] of char; + relname_length : smallint; + relname : array[0..31] of char; + ownname_length : smallint; + ownname : array[0..31] of char; + aliasname_length : smallint; + aliasname : array[0..31] of char; + end; + TXSQLVAR = XSQLVAR; + PXSQLVAR =^XSQLVAR; + { version of this XSQLDA } + { XSQLDA name field } + { length in bytes of SQLDA } + { number of fields allocated } + { actual number of fields } + { first field address } + + XSQLDA = record + version : smallint; + sqldaid : array[0..7] of char; + sqldabc : ISC_LONG; + sqln : smallint; + sqld : smallint; + sqlvar : array[0..0] of XSQLVAR; + end; + TXSQLDA = XSQLDA; + PXSQLDA =^XSQLDA; + + function XSQLDA_LENGTH(n: Integer): Integer; + + + const + SQLDA_VERSION1 = 1; + { meaning is same as DIALECT_xsqlda } + SQL_DIALECT_V5 = 1; + { flagging anything that is delimited + by double quotes as an error and + flagging keyword DATE as an error } + SQL_DIALECT_V6_TRANSITION = 2; + { supports SQL delimited identifier, + SQLDATE/DATE, TIME, TIMESTAMP, + CURRENT_DATE, CURRENT_TIME, + CURRENT_TIMESTAMP, and 64-bit exact + numeric type } + SQL_DIALECT_V6 = 3; + { latest IB DIALECT } + SQL_DIALECT_CURRENT = SQL_DIALECT_V6; + { } + { InterBase Handle Definitions } + { } + + type + isc_att_handle = pointer; + isc_blob_handle = pointer; + isc_db_handle = pointer; + isc_form_handle = pointer; + isc_req_handle = pointer; + isc_stmt_handle = pointer; + isc_svc_handle = pointer; + isc_tr_handle = pointer; + isc_win_handle = pointer; + isc_callback = procedure ;extdecl; + isc_resv_handle = ISC_LONG; + tisc_att_handle = isc_att_handle; + tisc_blob_handle = isc_blob_handle; + tisc_db_handle = isc_db_handle; + tisc_form_handle = isc_form_handle; + tisc_req_handle = isc_req_handle; + tisc_stmt_handle = isc_stmt_handle; + tisc_svc_handle = isc_svc_handle; + tisc_tr_handle = isc_tr_handle; + tisc_win_handle = isc_win_handle; + tisc_callback = isc_callback; + tisc_resv_handle = isc_resv_handle; + pisc_att_handle =^isc_att_handle ; + pisc_blob_handle =^isc_blob_handle ; + pisc_db_handle =^isc_db_handle ; + pisc_form_handle =^isc_form_handle ; + pisc_req_handle =^isc_req_handle ; + pisc_stmt_handle =^isc_stmt_handle ; + pisc_svc_handle =^isc_svc_handle ; + pisc_tr_handle =^isc_tr_handle ; + pisc_win_handle =^isc_win_handle ; + pisc_callback = ^isc_callback; + pisc_resv_handle =^isc_resv_handle ; + + + { } + { Security structures } + { } + + const + sec_uid_spec = $01; + sec_gid_spec = $02; + sec_server_spec = $04; + sec_password_spec = $08; + sec_group_name_spec = $10; + sec_first_name_spec = $20; + sec_middle_name_spec = $40; + sec_last_name_spec = $80; + sec_dba_user_name_spec = $100; + sec_dba_password_spec = $200; + sec_protocol_tcpip = 1; + sec_protocol_netbeui = 2; + sec_protocol_spx = 3; + sec_protocol_local = 4; + { which fields are specified } + { the user's id } + { the user's group id } + { protocol to use for connection } + { server to administer } + { the user's name } + { the user's password } + { the group name } + { the user's first name } + { the user's middle name } + { the user's last name } + { the dba user name } + { the dba password } + + type + + USER_SEC_DATA = record + sec_flags : smallint; + uid : longint; + gid : longint; + protocol : longint; + server : Pchar; + user_name : Pchar; + password : Pchar; + group_name : Pchar; + first_name : Pchar; + middle_name : Pchar; + last_name : Pchar; + dba_user_name : Pchar; + dba_password : Pchar; + end; + TUSER_SEC_DATA = USER_SEC_DATA; + PUSER_SEC_DATA = ^USER_SEC_DATA; + + { } + { Actions to pass to the blob filter (ctl_source) } + { } + + const + isc_blob_filter_open = 0; + isc_blob_filter_get_segment = 1; + isc_blob_filter_close = 2; + isc_blob_filter_create = 3; + isc_blob_filter_put_segment = 4; + isc_blob_filter_alloc = 5; + isc_blob_filter_free = 6; + isc_blob_filter_seek = 7; + { } + { Blr definitions } + { } +{$ifndef _JRD_BLR_H_} + {!!MVC + #define blr_word(n) ((n) % 256), ((n) / 256) + !!MVC } + + const + blr_text = 14; + blr_text2 = 15; + blr_short = 7; + blr_long = 8; + blr_quad = 9; + blr_int64 = 16; + blr_float = 10; + blr_double = 27; + blr_d_float = 11; + blr_timestamp = 35; + blr_varying = 37; + blr_varying2 = 38; + blr_blob = 261; + blr_cstring = 40; + blr_cstring2 = 41; + blr_blob_id = 45; + blr_sql_date = 12; + blr_sql_time = 13; + { Historical alias for pre V6 applications } + blr_date = blr_timestamp; + blr_inner = 0; + blr_left = 1; + blr_right = 2; + blr_full = 3; + blr_gds_code = 0; + blr_sql_code = 1; + blr_exception = 2; + blr_trigger_code = 3; + blr_default_code = 4; + blr_version4 = 4; + blr_version5 = 5; + blr_eoc = 76; + blr_end = 255; + blr_assignment = 1; + blr_begin = 2; + blr_dcl_variable = 3; + blr_message = 4; + blr_erase = 5; + blr_fetch = 6; + blr_for = 7; + blr_if = 8; + blr_loop = 9; + blr_modify = 10; + blr_handler = 11; + blr_receive = 12; + blr_select = 13; + blr_send = 14; + blr_store = 15; + blr_label = 17; + blr_leave = 18; + blr_store2 = 19; + blr_post = 20; + blr_literal = 21; + blr_dbkey = 22; + blr_field = 23; + blr_fid = 24; + blr_parameter = 25; + blr_variable = 26; + blr_average = 27; + blr_count = 28; + blr_maximum = 29; + blr_minimum = 30; + blr_total = 31; + blr_add = 34; + blr_subtract = 35; + blr_multiply = 36; + blr_divide = 37; + blr_negate = 38; + blr_concatenate = 39; + blr_substring = 40; + blr_parameter2 = 41; + blr_from = 42; + blr_via = 43; + blr_user_name = 44; + blr_null = 45; + blr_eql = 47; + blr_neq = 48; + blr_gtr = 49; + blr_geq = 50; + blr_lss = 51; + blr_leq = 52; + blr_containing = 53; + blr_matching = 54; + blr_starting = 55; + blr_between = 56; + blr_or = 57; + blr_and = 58; + blr_not = 59; + blr_any = 60; + blr_missing = 61; + blr_unique = 62; + blr_like = 63; + blr_stream = 65; + blr_set_index = 66; + blr_rse = 67; + blr_first = 68; + blr_project = 69; + blr_sort = 70; + blr_boolean = 71; + blr_ascending = 72; + blr_descending = 73; + blr_relation = 74; + 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; + { get tid of record } + blr_record_version = 154; + { fake server stall } + blr_stall = 155; + 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; +{$endif} + { _JRD_BLR_H_ } + { } + { Database parameter block stuff } + { } + + const + isc_dpb_version1 = 1; + isc_dpb_cdd_pathname = 1; + isc_dpb_allocation = 2; + isc_dpb_journal = 3; + isc_dpb_page_size = 4; + isc_dpb_num_buffers = 5; + isc_dpb_buffer_length = 6; + isc_dpb_debug = 7; + isc_dpb_garbage_collect = 8; + isc_dpb_verify = 9; + isc_dpb_sweep = 10; + isc_dpb_enable_journal = 11; + isc_dpb_disable_journal = 12; + isc_dpb_dbkey_scope = 13; + isc_dpb_number_of_users = 14; + isc_dpb_trace = 15; + isc_dpb_no_garbage_collect = 16; + isc_dpb_damaged = 17; + isc_dpb_license = 18; + isc_dpb_sys_user_name = 19; + isc_dpb_encrypt_key = 20; + isc_dpb_activate_shadow = 21; + isc_dpb_sweep_interval = 22; + isc_dpb_delete_shadow = 23; + isc_dpb_force_write = 24; + isc_dpb_begin_log = 25; + isc_dpb_quit_log = 26; + isc_dpb_no_reserve = 27; + isc_dpb_user_name = 28; + isc_dpb_password = 29; + isc_dpb_password_enc = 30; + isc_dpb_sys_user_name_enc = 31; + isc_dpb_interp = 32; + isc_dpb_online_dump = 33; + isc_dpb_old_file_size = 34; + isc_dpb_old_num_files = 35; + isc_dpb_old_file = 36; + isc_dpb_old_start_page = 37; + isc_dpb_old_start_seqno = 38; + isc_dpb_old_start_file = 39; + isc_dpb_drop_walfile = 40; + isc_dpb_old_dump_id = 41; + isc_dpb_wal_backup_dir = 42; + isc_dpb_wal_chkptlen = 43; + isc_dpb_wal_numbufs = 44; + isc_dpb_wal_bufsize = 45; + isc_dpb_wal_grp_cmt_wait = 46; + isc_dpb_lc_messages = 47; + isc_dpb_lc_ctype = 48; + isc_dpb_cache_manager = 49; + isc_dpb_shutdown = 50; + isc_dpb_online = 51; + isc_dpb_shutdown_delay = 52; + isc_dpb_reserved = 53; + isc_dpb_overwrite = 54; + isc_dpb_sec_attach = 55; + isc_dpb_disable_wal = 56; + isc_dpb_connect_timeout = 57; + isc_dpb_dummy_packet_interval = 58; + isc_dpb_gbak_attach = 59; + isc_dpb_sql_role_name = 60; + isc_dpb_set_page_buffers = 61; + isc_dpb_working_directory = 62; + isc_dpb_SQL_dialect = 63; + isc_dpb_set_db_readonly = 64; + isc_dpb_set_db_SQL_dialect = 65; + isc_dpb_gfix_attach = 66; + isc_dpb_gstat_attach = 67; + { } + { isc_dpb_verify specific flags } + { } + isc_dpb_pages = 1; + isc_dpb_records = 2; + isc_dpb_indices = 4; + isc_dpb_transactions = 8; + isc_dpb_no_update = 16; + isc_dpb_repair = 32; + isc_dpb_ignore = 64; + { } + { isc_dpb_shutdown specific flags } + { } + isc_dpb_shut_cache = 1; + isc_dpb_shut_attachment = 2; + isc_dpb_shut_transaction = 4; + isc_dpb_shut_force = 8; + { } + { Bit assignments in RDB$SYSTEM_FLAG } + { } + RDB_system = 1; + RDB_id_assigned = 2; + { } + { Transaction parameter block stuff } + { } + isc_tpb_version1 = 1; + isc_tpb_version3 = 3; + isc_tpb_consistency = 1; + isc_tpb_concurrency = 2; + isc_tpb_shared = 3; + isc_tpb_protected = 4; + isc_tpb_exclusive = 5; + isc_tpb_wait = 6; + isc_tpb_nowait = 7; + isc_tpb_read = 8; + isc_tpb_write = 9; + isc_tpb_lock_read = 10; + isc_tpb_lock_write = 11; + isc_tpb_verb_time = 12; + isc_tpb_commit_time = 13; + isc_tpb_ignore_limbo = 14; + isc_tpb_read_committed = 15; + isc_tpb_autocommit = 16; + isc_tpb_rec_version = 17; + isc_tpb_no_rec_version = 18; + isc_tpb_restart_requests = 19; + isc_tpb_no_auto_undo = 20; + { } + { Blob Parameter Block } + { } + isc_bpb_version1 = 1; + isc_bpb_source_type = 1; + isc_bpb_target_type = 2; + isc_bpb_type = 3; + isc_bpb_source_interp = 4; + isc_bpb_target_interp = 5; + isc_bpb_filter_parameter = 6; + isc_bpb_type_segmented = 0; + isc_bpb_type_stream = 1; + { } + { Service parameter block stuff } + { } + isc_spb_version1 = 1; + isc_spb_current_version = 2; + isc_spb_version = isc_spb_current_version; + isc_spb_user_name = isc_dpb_user_name; + isc_spb_sys_user_name = isc_dpb_sys_user_name; + isc_spb_sys_user_name_enc = isc_dpb_sys_user_name_enc; + isc_spb_password = isc_dpb_password; + isc_spb_password_enc = isc_dpb_password_enc; + isc_spb_command_line = 105; + isc_spb_dbname = 106; + isc_spb_verbose = 107; + isc_spb_options = 108; + isc_spb_connect_timeout = isc_dpb_connect_timeout; + isc_spb_dummy_packet_interval = isc_dpb_dummy_packet_interval; + isc_spb_sql_role_name = isc_dpb_sql_role_name; + { } + { Information call declarations } + { } + { } + { Common, structural codes } + { } + isc_info_end = 1; + isc_info_truncated = 2; + isc_info_error = 3; + isc_info_data_not_ready = 4; + isc_info_flag_end = 127; + { } + { Database information items } + { } + isc_info_db_id = 4; + isc_info_reads = 5; + isc_info_writes = 6; + isc_info_fetches = 7; + isc_info_marks = 8; + isc_info_implementation = 11; + isc_info_version = 12; + isc_info_base_level = 13; + isc_info_page_size = 14; + isc_info_num_buffers = 15; + isc_info_limbo = 16; + isc_info_current_memory = 17; + isc_info_max_memory = 18; + isc_info_window_turns = 19; + isc_info_license = 20; + isc_info_allocation = 21; + isc_info_attachment_id = 22; + isc_info_read_seq_count = 23; + isc_info_read_idx_count = 24; + isc_info_insert_count = 25; + isc_info_update_count = 26; + isc_info_delete_count = 27; + isc_info_backout_count = 28; + isc_info_purge_count = 29; + isc_info_expunge_count = 30; + isc_info_sweep_interval = 31; + isc_info_ods_version = 32; + isc_info_ods_minor_version = 33; + isc_info_no_reserve = 34; + isc_info_logfile = 35; + isc_info_cur_logfile_name = 36; + isc_info_cur_log_part_offset = 37; + isc_info_num_wal_buffers = 38; + isc_info_wal_buffer_size = 39; + isc_info_wal_ckpt_length = 40; + isc_info_wal_cur_ckpt_interval = 41; + isc_info_wal_prv_ckpt_fname = 42; + isc_info_wal_prv_ckpt_poffset = 43; + isc_info_wal_recv_ckpt_fname = 44; + isc_info_wal_recv_ckpt_poffset = 45; + isc_info_wal_grpc_wait_usecs = 47; + isc_info_wal_num_io = 48; + isc_info_wal_avg_io_size = 49; + isc_info_wal_num_commits = 50; + isc_info_wal_avg_grpc_size = 51; + isc_info_forced_writes = 52; + isc_info_user_names = 53; + isc_info_page_errors = 54; + isc_info_record_errors = 55; + isc_info_bpage_errors = 56; + isc_info_dpage_errors = 57; + isc_info_ipage_errors = 58; + isc_info_ppage_errors = 59; + isc_info_tpage_errors = 60; + isc_info_set_page_buffers = 61; + isc_info_db_SQL_dialect = 62; + isc_info_db_read_only = 63; + isc_info_db_size_in_pages = 64; + { } + { Database information return values } + { } + isc_info_db_impl_rdb_vms = 1; + isc_info_db_impl_rdb_eln = 2; + isc_info_db_impl_rdb_eln_dev = 3; + isc_info_db_impl_rdb_vms_y = 4; + isc_info_db_impl_rdb_eln_y = 5; + isc_info_db_impl_jri = 6; + isc_info_db_impl_jsv = 7; + isc_info_db_impl_isc_a = 25; + isc_info_db_impl_isc_u = 26; + isc_info_db_impl_isc_v = 27; + isc_info_db_impl_isc_s = 28; + isc_info_db_impl_isc_apl_68K = 25; + isc_info_db_impl_isc_vax_ultr = 26; + isc_info_db_impl_isc_vms = 27; + isc_info_db_impl_isc_sun_68k = 28; + isc_info_db_impl_isc_os2 = 29; + isc_info_db_impl_isc_sun4 = 30; + isc_info_db_impl_isc_hp_ux = 31; + isc_info_db_impl_isc_sun_386i = 32; + isc_info_db_impl_isc_vms_orcl = 33; + isc_info_db_impl_isc_mac_aux = 34; + isc_info_db_impl_isc_rt_aix = 35; + isc_info_db_impl_isc_mips_ult = 36; + isc_info_db_impl_isc_xenix = 37; + isc_info_db_impl_isc_dg = 38; + isc_info_db_impl_isc_hp_mpexl = 39; + isc_info_db_impl_isc_hp_ux68K = 40; + isc_info_db_impl_isc_sgi = 41; + isc_info_db_impl_isc_sco_unix = 42; + isc_info_db_impl_isc_cray = 43; + isc_info_db_impl_isc_imp = 44; + isc_info_db_impl_isc_delta = 45; + isc_info_db_impl_isc_next = 46; + isc_info_db_impl_isc_dos = 47; + isc_info_db_impl_isc_winnt = 48; + isc_info_db_impl_isc_epson = 49; + isc_info_db_class_access = 1; + isc_info_db_class_y_valve = 2; + isc_info_db_class_rem_int = 3; + isc_info_db_class_rem_srvr = 4; + isc_info_db_class_pipe_int = 7; + isc_info_db_class_pipe_srvr = 8; + isc_info_db_class_sam_int = 9; + isc_info_db_class_sam_srvr = 10; + isc_info_db_class_gateway = 11; + isc_info_db_class_cache = 12; + { } + { Request information items } + { } + isc_info_number_messages = 4; + isc_info_max_message = 5; + isc_info_max_send = 6; + isc_info_max_receive = 7; + isc_info_state = 8; + isc_info_message_number = 9; + isc_info_message_size = 10; + isc_info_request_cost = 11; + isc_info_access_path = 12; + isc_info_req_select_count = 13; + isc_info_req_insert_count = 14; + isc_info_req_update_count = 15; + isc_info_req_delete_count = 16; + { } + { Access path items } + { } + isc_info_rsb_end = 0; + isc_info_rsb_begin = 1; + isc_info_rsb_type = 2; + isc_info_rsb_relation = 3; + isc_info_rsb_plan = 4; + { } + { Rsb types } + { } + isc_info_rsb_unknown = 1; + isc_info_rsb_indexed = 2; + isc_info_rsb_navigate = 3; + isc_info_rsb_sequential = 4; + isc_info_rsb_cross = 5; + isc_info_rsb_sort = 6; + isc_info_rsb_first = 7; + isc_info_rsb_boolean = 8; + isc_info_rsb_union = 9; + isc_info_rsb_aggregate = 10; + isc_info_rsb_merge = 11; + isc_info_rsb_ext_sequential = 12; + isc_info_rsb_ext_indexed = 13; + isc_info_rsb_ext_dbkey = 14; + isc_info_rsb_left_cross = 15; + isc_info_rsb_select = 16; + isc_info_rsb_sql_join = 17; + isc_info_rsb_simulate = 18; + isc_info_rsb_sim_cross = 19; + isc_info_rsb_once = 20; + isc_info_rsb_procedure = 21; + { } + { Bitmap expressions } + { } + isc_info_rsb_and = 1; + isc_info_rsb_or = 2; + isc_info_rsb_dbkey = 3; + isc_info_rsb_index = 4; + isc_info_req_active = 2; + isc_info_req_inactive = 3; + isc_info_req_send = 4; + isc_info_req_receive = 5; + isc_info_req_select = 6; + isc_info_req_sql_stall = 7; + { } + { Blob information items } + { } + isc_info_blob_num_segments = 4; + isc_info_blob_max_segment = 5; + isc_info_blob_total_length = 6; + isc_info_blob_type = 7; + { } + { Transaction information items } + { } + isc_info_tra_id = 4; + { + Service action items + } + { Starts database backup process on the server } + isc_action_svc_backup = 1; + { Starts database restore process on the server } + isc_action_svc_restore = 2; + { Starts database repair process on the server } + isc_action_svc_repair = 3; + { Adds a new user to the security database } + isc_action_svc_add_user = 4; + { Deletes a user record from the security database } + isc_action_svc_delete_user = 5; + { Modifies a user record in the security database } + isc_action_svc_modify_user = 6; + { Displays a user record from the security database } + isc_action_svc_display_user = 7; + { Sets database properties } + isc_action_svc_properties = 8; + { Adds a license to the license file } + isc_action_svc_add_license = 9; + { Removes a license from the license file } + isc_action_svc_remove_license = 10; + { Retrieves database statistics } + isc_action_svc_db_stats = 11; + { Retrieves the InterBase log file from the server } + isc_action_svc_get_ib_log = 12; + { + Service information items + } + { Retrieves the number of attachments and databases } + isc_info_svc_svr_db_info = 50; + { Retrieves all license keys and IDs from the license file } + isc_info_svc_get_license = 51; + { Retrieves a bitmask representing licensed options on the server } + isc_info_svc_get_license_mask = 52; + { Retrieves the parameters and values for IB_CONFIG } + isc_info_svc_get_config = 53; + { Retrieves the version of the services manager } + isc_info_svc_version = 54; + { Retrieves the version of the InterBase server } + isc_info_svc_server_version = 55; + { Retrieves the implementation of the InterBase server } + isc_info_svc_implementation = 56; + { Retrieves a bitmask representing the server's capabilities } + isc_info_svc_capabilities = 57; + { Retrieves the path to the security database in use by the server } + isc_info_svc_user_dbpath = 58; + { Retrieves the setting of $INTERBASE } + isc_info_svc_get_env = 59; + { Retrieves the setting of $INTERBASE_LCK } + isc_info_svc_get_env_lock = 60; + { Retrieves the setting of $INTERBASE_MSG } + isc_info_svc_get_env_msg = 61; + { Retrieves 1 line of service output per call } + isc_info_svc_line = 62; + { Retrieves as much of the server output as will fit in the supplied buffer } + isc_info_svc_to_eof = 63; + { Sets / signifies a timeout value for reading service information } + isc_info_svc_timeout = 64; + { Retrieves the number of users licensed for accessing the server } + isc_info_svc_get_licensed_users = 65; + { Retrieve the limbo transactions } + isc_info_svc_limbo_trans = 66; + { Checks to see if a service is running on an attachment } + isc_info_svc_running = 67; + { Returns the user information from isc_action_svc_display_users } + isc_info_svc_get_users = 68; + { + Parameters for isc_action_(add|delete|modify)_user + } + isc_spb_sec_userid = 5; + isc_spb_sec_groupid = 6; + isc_spb_sec_username = 7; + isc_spb_sec_password = 8; + isc_spb_sec_groupname = 9; + isc_spb_sec_firstname = 10; + isc_spb_sec_middlename = 11; + isc_spb_sec_lastname = 12; + { + Parameters for isc_action_svc_(add|remove)_license, + isc_info_svc_get_license + } + isc_spb_lic_key = 5; + isc_spb_lic_id = 6; + isc_spb_lic_desc = 7; + { + Parameters for isc_action_svc_backup + } + isc_spb_bkp_file = 5; + isc_spb_bkp_factor = 6; + isc_spb_bkp_length = 7; + isc_spb_bkp_ignore_checksums = $01; + isc_spb_bkp_ignore_limbo = $02; + isc_spb_bkp_metadata_only = $04; + isc_spb_bkp_no_garbage_collect = $08; + isc_spb_bkp_old_descriptions = $10; + isc_spb_bkp_non_transportable = $20; + isc_spb_bkp_convert = $40; + isc_spb_bkp_expand = $80; + { + Parameters for isc_action_svc_properties + } + isc_spb_prp_page_buffers = 5; + isc_spb_prp_sweep_interval = 6; + isc_spb_prp_shutdown_db = 7; + isc_spb_prp_deny_new_attachments = 9; + isc_spb_prp_deny_new_transactions = 10; + isc_spb_prp_reserve_space = 11; + isc_spb_prp_write_mode = 12; + isc_spb_prp_access_mode = 13; + isc_spb_prp_set_sql_dialect = 14; + isc_spb_prp_activate = $0100; + isc_spb_prp_db_online = $0200; + { + Parameters for isc_spb_prp_reserve_space + } + isc_spb_prp_res_use_full = 35; + isc_spb_prp_res = 36; + { + Parameters for isc_spb_prp_write_mode + } + isc_spb_prp_wm_async = 37; + isc_spb_prp_wm_sync = 38; + { + Parameters for isc_spb_prp_access_mode + } + isc_spb_prp_am_readonly = 39; + isc_spb_prp_am_readwrite = 40; + { + Parameters for isc_action_svc_repair + } + isc_spb_rpr_commit_trans = 15; + isc_spb_rpr_rollback_trans = 34; + isc_spb_rpr_recover_two_phase = 17; + isc_spb_tra_id = 18; + isc_spb_single_tra_id = 19; + isc_spb_multi_tra_id = 20; + isc_spb_tra_state = 21; + isc_spb_tra_state_limbo = 22; + isc_spb_tra_state_commit = 23; + isc_spb_tra_state_rollback = 24; + isc_spb_tra_state_unknown = 25; + isc_spb_tra_host_site = 26; + isc_spb_tra_remote_site = 27; + isc_spb_tra_db_path = 28; + isc_spb_tra_advise = 29; + isc_spb_tra_advise_commit = 30; + isc_spb_tra_advise_rollback = 31; + isc_spb_tra_advise_unknown = 33; + isc_spb_rpr_validate_db = $01; + isc_spb_rpr_sweep_db = $02; + isc_spb_rpr_mend_db = $04; + isc_spb_rpr_list_limbo_trans = $08; + isc_spb_rpr_check_db = $10; + isc_spb_rpr_ignore_checksum = $20; + isc_spb_rpr_kill_shadows = $40; + isc_spb_rpr_full = $80; + { + Parameters for isc_action_svc_restore + } + isc_spb_res_buffers = 9; + isc_spb_res_page_size = 10; + isc_spb_res_length = 11; + isc_spb_res_access_mode = 12; + isc_spb_res_deactivate_idx = $0100; + isc_spb_res_no_shadow = $0200; + isc_spb_res_no_validity = $0400; + isc_spb_res_one_at_a_time = $0800; + isc_spb_res_replace = $1000; + isc_spb_res_create = $2000; + isc_spb_res_use_all_space = $4000; + { + Parameters for isc_spb_res_access_mode + } + isc_spb_res_am_readonly = isc_spb_prp_am_readonly; + isc_spb_res_am_readwrite = isc_spb_prp_am_readwrite; + { + Parameters for isc_info_svc_svr_db_info + } + isc_spb_num_att = 5; + isc_spb_num_db = 6; + { + Parameters for isc_info_svc_db_stats + } + isc_spb_sts_data_pages = $01; + isc_spb_sts_db_log = $02; + isc_spb_sts_hdr_pages = $04; + isc_spb_sts_idx_pages = $08; + isc_spb_sts_sys_relations = $10; + { } + { SQL information items } + { } + isc_info_sql_select = 4; + isc_info_sql_bind = 5; + isc_info_sql_num_variables = 6; + isc_info_sql_describe_vars = 7; + isc_info_sql_describe_end = 8; + isc_info_sql_sqlda_seq = 9; + isc_info_sql_message_seq = 10; + isc_info_sql_type = 11; + isc_info_sql_sub_type = 12; + isc_info_sql_scale = 13; + isc_info_sql_length = 14; + isc_info_sql_null_ind = 15; + isc_info_sql_field = 16; + isc_info_sql_relation = 17; + isc_info_sql_owner = 18; + isc_info_sql_alias = 19; + isc_info_sql_sqlda_start = 20; + isc_info_sql_stmt_type = 21; + isc_info_sql_get_plan = 22; + isc_info_sql_records = 23; + isc_info_sql_batch_fetch = 24; + { } + { SQL information return values } + { } + isc_info_sql_stmt_select = 1; + isc_info_sql_stmt_insert = 2; + isc_info_sql_stmt_update = 3; + isc_info_sql_stmt_delete = 4; + isc_info_sql_stmt_ddl = 5; + isc_info_sql_stmt_get_segment = 6; + isc_info_sql_stmt_put_segment = 7; + isc_info_sql_stmt_exec_procedure = 8; + isc_info_sql_stmt_start_trans = 9; + isc_info_sql_stmt_commit = 10; + isc_info_sql_stmt_rollback = 11; + isc_info_sql_stmt_select_for_upd = 12; + isc_info_sql_stmt_set_generator = 13; + { } + { Server configuration key values } + { } + ISCCFG_LOCKMEM_KEY = 0; + ISCCFG_LOCKSEM_KEY = 1; + ISCCFG_LOCKSIG_KEY = 2; + ISCCFG_EVNTMEM_KEY = 3; + ISCCFG_DBCACHE_KEY = 4; + ISCCFG_PRIORITY_KEY = 5; + ISCCFG_IPCMAP_KEY = 6; + ISCCFG_MEMMIN_KEY = 7; + ISCCFG_MEMMAX_KEY = 8; + ISCCFG_LOCKORDER_KEY = 9; + ISCCFG_ANYLOCKMEM_KEY = 10; + ISCCFG_ANYLOCKSEM_KEY = 11; + ISCCFG_ANYLOCKSIG_KEY = 12; + ISCCFG_ANYEVNTMEM_KEY = 13; + ISCCFG_LOCKHASH_KEY = 14; + ISCCFG_DEADLOCK_KEY = 15; + ISCCFG_LOCKSPIN_KEY = 16; + ISCCFG_CONN_TIMEOUT_KEY = 17; + ISCCFG_DUMMY_INTRVL_KEY = 18; + { Internal Use only } + ISCCFG_TRACE_POOLS_KEY = 19; + ISCCFG_REMOTE_BUFFER_KEY = 20; + { } + { Error codes } + { } + isc_facility = 20; + isc_err_base = 335544320; + isc_err_factor = 1; + isc_arg_end = 0; + isc_arg_gds = 1; + isc_arg_string = 2; + isc_arg_cstring = 3; + isc_arg_number = 4; + isc_arg_interpreted = 5; + isc_arg_vms = 6; + isc_arg_unix = 7; + isc_arg_domain = 8; + isc_arg_dos = 9; + isc_arg_mpexl = 10; + isc_arg_mpexl_ipc = 11; + isc_arg_next_mach = 15; + isc_arg_netware = 16; + isc_arg_win32 = 17; + isc_arg_warning = 18; + + { } + { Dynamic Data Definition Language operators } + { } + { } + { Version number } + { } + + const + isc_dyn_version_1 = 1; + isc_dyn_eoc = 255; + { } + { Operations (may be nested) } + { } + isc_dyn_begin = 2; + isc_dyn_end = 3; + isc_dyn_if = 4; + isc_dyn_def_database = 5; + isc_dyn_def_global_fld = 6; + isc_dyn_def_local_fld = 7; + isc_dyn_def_idx = 8; + isc_dyn_def_rel = 9; + isc_dyn_def_sql_fld = 10; + isc_dyn_def_view = 12; + isc_dyn_def_trigger = 15; + isc_dyn_def_security_class = 120; + isc_dyn_def_dimension = 140; + isc_dyn_def_generator = 24; + isc_dyn_def_function = 25; + isc_dyn_def_filter = 26; + isc_dyn_def_function_arg = 27; + isc_dyn_def_shadow = 34; + isc_dyn_def_trigger_msg = 17; + isc_dyn_def_file = 36; + isc_dyn_mod_database = 39; + isc_dyn_mod_rel = 11; + isc_dyn_mod_global_fld = 13; + isc_dyn_mod_idx = 102; + isc_dyn_mod_local_fld = 14; + isc_dyn_mod_sql_fld = 216; + isc_dyn_mod_view = 16; + isc_dyn_mod_security_class = 122; + isc_dyn_mod_trigger = 113; + isc_dyn_mod_trigger_msg = 28; + isc_dyn_delete_database = 18; + isc_dyn_delete_rel = 19; + isc_dyn_delete_global_fld = 20; + isc_dyn_delete_local_fld = 21; + isc_dyn_delete_idx = 22; + isc_dyn_delete_security_class = 123; + isc_dyn_delete_dimensions = 143; + isc_dyn_delete_trigger = 23; + isc_dyn_delete_trigger_msg = 29; + isc_dyn_delete_filter = 32; + isc_dyn_delete_function = 33; + isc_dyn_delete_shadow = 35; + isc_dyn_grant = 30; + isc_dyn_revoke = 31; + isc_dyn_def_primary_key = 37; + isc_dyn_def_foreign_key = 38; + isc_dyn_def_unique = 40; + isc_dyn_def_procedure = 164; + isc_dyn_delete_procedure = 165; + isc_dyn_def_parameter = 135; + isc_dyn_delete_parameter = 136; + isc_dyn_mod_procedure = 175; + isc_dyn_def_log_file = 176; + isc_dyn_def_cache_file = 180; + isc_dyn_def_exception = 181; + isc_dyn_mod_exception = 182; + isc_dyn_del_exception = 183; + isc_dyn_drop_log = 194; + isc_dyn_drop_cache = 195; + isc_dyn_def_default_log = 202; + { } + { View specific stuff } + { } + isc_dyn_view_blr = 43; + isc_dyn_view_source = 44; + isc_dyn_view_relation = 45; + isc_dyn_view_context = 46; + isc_dyn_view_context_name = 47; + { } + { Generic attributes } + { } + isc_dyn_rel_name = 50; + isc_dyn_fld_name = 51; + isc_dyn_new_fld_name = 215; + isc_dyn_idx_name = 52; + isc_dyn_description = 53; + isc_dyn_security_class = 54; + isc_dyn_system_flag = 55; + isc_dyn_update_flag = 56; + isc_dyn_prc_name = 166; + isc_dyn_prm_name = 137; + isc_dyn_sql_object = 196; + isc_dyn_fld_character_set_name = 174; + { } + { Relation specific attributes } + { } + isc_dyn_rel_dbkey_length = 61; + isc_dyn_rel_store_trig = 62; + isc_dyn_rel_modify_trig = 63; + isc_dyn_rel_erase_trig = 64; + isc_dyn_rel_store_trig_source = 65; + isc_dyn_rel_modify_trig_source = 66; + isc_dyn_rel_erase_trig_source = 67; + isc_dyn_rel_ext_file = 68; + isc_dyn_rel_sql_protection = 69; + isc_dyn_rel_constraint = 162; + isc_dyn_delete_rel_constraint = 163; + { } + { Global field specific attributes } + { } + isc_dyn_fld_type = 70; + isc_dyn_fld_length = 71; + isc_dyn_fld_scale = 72; + isc_dyn_fld_sub_type = 73; + isc_dyn_fld_segment_length = 74; + isc_dyn_fld_query_header = 75; + isc_dyn_fld_edit_string = 76; + isc_dyn_fld_validation_blr = 77; + isc_dyn_fld_validation_source = 78; + isc_dyn_fld_computed_blr = 79; + isc_dyn_fld_computed_source = 80; + isc_dyn_fld_missing_value = 81; + isc_dyn_fld_default_value = 82; + isc_dyn_fld_query_name = 83; + isc_dyn_fld_dimensions = 84; + isc_dyn_fld_not_null = 85; + isc_dyn_fld_precision = 86; + isc_dyn_fld_char_length = 172; + isc_dyn_fld_collation = 173; + isc_dyn_fld_default_source = 193; + isc_dyn_del_default = 197; + isc_dyn_del_validation = 198; + isc_dyn_single_validation = 199; + isc_dyn_fld_character_set = 203; + { } + { Local field specific attributes } + { } + isc_dyn_fld_source = 90; + isc_dyn_fld_base_fld = 91; + isc_dyn_fld_position = 92; + isc_dyn_fld_update_flag = 93; + { } + { Index specific attributes } + { } + isc_dyn_idx_unique = 100; + isc_dyn_idx_inactive = 101; + isc_dyn_idx_type = 103; + isc_dyn_idx_foreign_key = 104; + isc_dyn_idx_ref_column = 105; + isc_dyn_idx_statistic = 204; + { } + { Trigger specific attributes } + { } + isc_dyn_trg_type = 110; + isc_dyn_trg_blr = 111; + isc_dyn_trg_source = 112; + isc_dyn_trg_name = 114; + isc_dyn_trg_sequence = 115; + isc_dyn_trg_inactive = 116; + isc_dyn_trg_msg_number = 117; + isc_dyn_trg_msg = 118; + { } + { Security Class specific attributes } + { } + isc_dyn_scl_acl = 121; + isc_dyn_grant_user = 130; + isc_dyn_grant_proc = 186; + isc_dyn_grant_trig = 187; + isc_dyn_grant_view = 188; + isc_dyn_grant_options = 132; + isc_dyn_grant_user_group = 205; + { } + { Dimension specific information } + { } + isc_dyn_dim_lower = 141; + isc_dyn_dim_upper = 142; + { } + { File specific attributes } + { } + isc_dyn_file_name = 125; + isc_dyn_file_start = 126; + isc_dyn_file_length = 127; + isc_dyn_shadow_number = 128; + isc_dyn_shadow_man_auto = 129; + isc_dyn_shadow_conditional = 130; + { } + { Log file specific attributes } + { } + isc_dyn_log_file_sequence = 177; + isc_dyn_log_file_partitions = 178; + isc_dyn_log_file_serial = 179; + isc_dyn_log_file_overflow = 200; + isc_dyn_log_file_raw = 201; + { } + { Log specific attributes } + { } + isc_dyn_log_group_commit_wait = 189; + isc_dyn_log_buffer_size = 190; + isc_dyn_log_check_point_length = 191; + isc_dyn_log_num_of_buffers = 192; + { } + { Function specific attributes } + { } + isc_dyn_function_name = 145; + isc_dyn_function_type = 146; + isc_dyn_func_module_name = 147; + isc_dyn_func_entry_point = 148; + isc_dyn_func_return_argument = 149; + isc_dyn_func_arg_position = 150; + isc_dyn_func_mechanism = 151; + isc_dyn_filter_in_subtype = 152; + isc_dyn_filter_out_subtype = 153; + isc_dyn_description2 = 154; + isc_dyn_fld_computed_source2 = 155; + isc_dyn_fld_edit_string2 = 156; + isc_dyn_fld_query_header2 = 157; + isc_dyn_fld_validation_source2 = 158; + isc_dyn_trg_msg2 = 159; + isc_dyn_trg_source2 = 160; + isc_dyn_view_source2 = 161; + isc_dyn_xcp_msg2 = 184; + { } + { Generator specific attributes } + { } + isc_dyn_generator_name = 95; + isc_dyn_generator_id = 96; + { } + { Procedure specific attributes } + { } + isc_dyn_prc_inputs = 167; + isc_dyn_prc_outputs = 168; + isc_dyn_prc_source = 169; + isc_dyn_prc_blr = 170; + isc_dyn_prc_source2 = 171; + { } + { Parameter specific attributes } + { } + isc_dyn_prm_number = 138; + isc_dyn_prm_type = 139; + { } + { Relation specific attributes } + { } + isc_dyn_xcp_msg = 185; + { } + { Cascading referential integrity values } + { } + isc_dyn_foreign_key_update = 205; + isc_dyn_foreign_key_delete = 206; + isc_dyn_foreign_key_cascade = 207; + isc_dyn_foreign_key_default = 208; + isc_dyn_foreign_key_null = 209; + isc_dyn_foreign_key_none = 210; + { } + { SQL role values } + { } + isc_dyn_def_sql_role = 211; + isc_dyn_sql_role_name = 212; + isc_dyn_grant_admin_options = 213; + isc_dyn_del_sql_role = 214; + { } + { Last $dyn value assigned } + { } + isc_dyn_last_dyn_value = 216; + { } + { Array slice description language (SDL) } + { } + isc_sdl_version1 = 1; + isc_sdl_eoc = 255; + isc_sdl_relation = 2; + isc_sdl_rid = 3; + isc_sdl_field = 4; + isc_sdl_fid = 5; + isc_sdl_struct = 6; + isc_sdl_variable = 7; + isc_sdl_scalar = 8; + isc_sdl_tiny_integer = 9; + isc_sdl_short_integer = 10; + isc_sdl_long_integer = 11; + isc_sdl_literal = 12; + isc_sdl_add = 13; + isc_sdl_subtract = 14; + isc_sdl_multiply = 15; + isc_sdl_divide = 16; + isc_sdl_negate = 17; + isc_sdl_eql = 18; + isc_sdl_neq = 19; + isc_sdl_gtr = 20; + isc_sdl_geq = 21; + isc_sdl_lss = 22; + isc_sdl_leq = 23; + isc_sdl_and = 24; + isc_sdl_or = 25; + isc_sdl_not = 26; + isc_sdl_while = 27; + isc_sdl_assignment = 28; + isc_sdl_label = 29; + isc_sdl_leave = 30; + isc_sdl_begin = 31; + isc_sdl_end = 32; + isc_sdl_do3 = 33; + isc_sdl_do2 = 34; + isc_sdl_do1 = 35; + isc_sdl_element = 36; + { } + { International text interpretation values } + { } + isc_interp_eng_ascii = 0; + isc_interp_jpn_sjis = 5; + isc_interp_jpn_euc = 6; + { } + { SQL definitions } + { } + SQL_TEXT = 452; + SQL_VARYING = 448; + SQL_SHORT = 500; + SQL_LONG = 496; + SQL_FLOAT = 482; + SQL_DOUBLE = 480; + SQL_D_FLOAT = 530; + SQL_TIMESTAMP = 510; + SQL_BLOB = 520; + SQL_ARRAY = 540; + SQL_QUAD = 550; + SQL_TYPE_TIME = 560; + SQL_TYPE_DATE = 570; + SQL_INT64 = 580; + { Historical alias for pre V6 applications } + SQL_DATE = SQL_TIMESTAMP; + { } + { Blob Subtypes } + { } + { types less than zero are reserved for customer use } + isc_blob_untyped = 0; + { internal subtypes } + isc_blob_text = 1; + isc_blob_blr = 2; + isc_blob_acl = 3; + isc_blob_ranges = 4; + isc_blob_summary = 5; + isc_blob_format = 6; + isc_blob_tra = 7; + isc_blob_extfile = 8; + { the range 20-30 is reserved for dBASE and Paradox types } + isc_blob_formatted_memo = 20; + isc_blob_paradox_ole = 21; + isc_blob_graphic = 22; + isc_blob_dbase_ole = 23; + isc_blob_typed_binary = 24; + +{$IFNDEF LinkDynamically} + + { } + { OSRI database functions } + { } + + function isc_attach_database(_para1:PISC_STATUS; _para2:smallint; _para3:Pchar; _para4:Pisc_db_handle; _para5:smallint; + _para6:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_array_gen_sdl(_para1:PISC_STATUS; _para2:PISC_ARRAY_DESC; _para3:Psmallint; _para4:Pchar; _para5:Psmallint):ISC_STATUS; extdecl; external gdslib; + + function isc_array_get_slice(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:PISC_QUAD; _para5:PISC_ARRAY_DESC; + _para6:pointer; _para7:PISC_LONG):ISC_STATUS; extdecl; external gdslib; + + function isc_array_lookup_bounds(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pchar; _para5:Pchar; + _para6:PISC_ARRAY_DESC):ISC_STATUS; extdecl; external gdslib; + + function isc_array_lookup_desc(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pchar; _para5:Pchar; + _para6:PISC_ARRAY_DESC):ISC_STATUS; extdecl; external gdslib; + + function isc_array_set_desc(_para1:PISC_STATUS; _para2:Pchar; _para3:Pchar; _para4:Psmallint; _para5:Psmallint; + _para6:Psmallint; _para7:PISC_ARRAY_DESC):ISC_STATUS; extdecl; external gdslib; + + function isc_array_put_slice(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:PISC_QUAD; _para5:PISC_ARRAY_DESC; + _para6:pointer; _para7:PISC_LONG):ISC_STATUS; extdecl; external gdslib; + + procedure isc_blob_default_desc(_para1:PISC_BLOB_DESC; _para2:Pbyte; _para3:Pbyte); extdecl; external gdslib; + + function isc_blob_gen_bpb(_para1:PISC_STATUS; _para2:PISC_BLOB_DESC; _para3:PISC_BLOB_DESC; _para4:word; _para5:Pbyte; + _para6:Pword):ISC_STATUS; extdecl; external gdslib; + + function isc_blob_info(_para1:PISC_STATUS; _para2:Pisc_blob_handle; _para3:smallint; _para4:Pchar; _para5:smallint; + _para6:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_blob_lookup_desc(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pbyte; _para5:Pbyte; + _para6:PISC_BLOB_DESC; _para7:Pbyte):ISC_STATUS; extdecl; external gdslib; + + function isc_blob_set_desc(_para1:PISC_STATUS; _para2:Pbyte; _para3:Pbyte; _para4:smallint; _para5:smallint; + _para6:smallint; _para7:PISC_BLOB_DESC):ISC_STATUS; extdecl; external gdslib; + + function isc_cancel_blob(_para1:PISC_STATUS; _para2:Pisc_blob_handle):ISC_STATUS; extdecl; external gdslib; + + function isc_cancel_events(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:PISC_LONG):ISC_STATUS; extdecl; external gdslib; + + function isc_close_blob(_para1:PISC_STATUS; _para2:Pisc_blob_handle):ISC_STATUS; extdecl; external gdslib; + + function isc_commit_retaining(_para1:PISC_STATUS; _para2:Pisc_tr_handle):ISC_STATUS; extdecl; external gdslib; + + function isc_commit_transaction(_para1:PISC_STATUS; _para2:Pisc_tr_handle):ISC_STATUS; extdecl; external gdslib; + + function isc_create_blob(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_blob_handle; _para5:PISC_QUAD):ISC_STATUS; extdecl; external gdslib; + + function isc_create_blob2(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_blob_handle; _para5:PISC_QUAD; + _para6:smallint; _para7:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_create_database(_para1:PISC_STATUS; _para2:smallint; _para3:Pchar; _para4:Pisc_db_handle; _para5:smallint; + _para6:Pchar; _para7:smallint):ISC_STATUS; extdecl; external gdslib; + + function isc_database_info(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:smallint; _para4:Pchar; _para5:smallint; + _para6:Pchar):ISC_STATUS; extdecl; external gdslib; + + procedure isc_decode_date(_para1:PISC_QUAD; _para2:pointer); extdecl; external gdslib; + + procedure isc_decode_sql_date(_para1:PISC_DATE; _para2:pointer); extdecl; external gdslib; + + procedure isc_decode_sql_time(_para1:PISC_TIME; _para2:pointer); extdecl; external gdslib; + + procedure isc_decode_timestamp(_para1:PISC_TIMESTAMP; _para2:pointer); extdecl; external gdslib; + + function isc_detach_database(_para1:PISC_STATUS; _para2:Pisc_db_handle):ISC_STATUS; extdecl; external gdslib; + + function isc_drop_database(_para1:PISC_STATUS; _para2:Pisc_db_handle):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_allocate_statement(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_stmt_handle):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_alloc_statement2(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_stmt_handle):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_describe(_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_describe_bind(_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_exec_immed2(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar; + _para6:word; _para7:PXSQLDA; _para8:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_execute(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_execute2(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:PXSQLDA; + _para6:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_execute_immediate(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar; + _para6:word; _para7:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_fetch(_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_finish(_para1:Pisc_db_handle):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_free_statement(_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_insert(_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_prepare(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:Pchar; + _para6:word; _para7:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_set_cursor_name(_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:Pchar; _para4:word):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_sql_info(_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:smallint; _para4:Pchar; _para5:smallint; + _para6:Pchar):ISC_STATUS; extdecl; external gdslib; + + procedure isc_encode_date(_para1:pointer; _para2:PISC_QUAD); extdecl; external gdslib; + + procedure isc_encode_sql_date(_para1:pointer; _para2:PISC_DATE); extdecl; external gdslib; + + procedure isc_encode_sql_time(_para1:pointer; _para2:PISC_TIME); extdecl; external gdslib; + + procedure isc_encode_timestamp(_para1:pointer; _para2:PISC_TIMESTAMP); extdecl; external gdslib; + + function isc_event_block(_para1:PPchar; _para2:PPchar; _para3:word; args:array of const):ISC_LONG; cdecl; external gdslib; + + {!!MVC + void isc_event_counts (unsigned ISC_LONG , + short, + char , + char ); extdecl; external gdslib; + !!MVC } + procedure isc_expand_dpb(_para1:PPchar; _para2:Psmallint; args:array of const); cdecl; external gdslib; + + function isc_modify_dpb(_para1:PPchar; _para2:Psmallint; _para3:word; _para4:Pchar; _para5:smallint):longint; extdecl; external gdslib; + + function isc_free(_para1:Pchar):ISC_LONG; extdecl; external gdslib; + + function isc_get_segment(_para1:PISC_STATUS; _para2:Pisc_blob_handle; _para3:Pword; _para4:word; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_get_slice(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:PISC_QUAD; _para5:smallint; + _para6:Pchar; _para7:smallint; _para8:PISC_LONG; _para9:ISC_LONG; _para10:pointer; + _para11:PISC_LONG):ISC_STATUS; extdecl; external gdslib; + + function isc_interprete(_para1:Pchar; _para2:PPISC_STATUS):ISC_STATUS; extdecl; external gdslib; + + function isc_open_blob(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_blob_handle; _para5:PISC_QUAD):ISC_STATUS; extdecl; external gdslib; + + function isc_open_blob2(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_blob_handle; _para5:PISC_QUAD; + _para6:smallint; _para7:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_prepare_transaction2(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:smallint; _para4:Pchar):ISC_STATUS; extdecl; external gdslib; + + procedure isc_print_sqlerror(_para1:smallint; _para2:PISC_STATUS); extdecl; external gdslib; + + function isc_print_status(_para1:PISC_STATUS):ISC_STATUS; extdecl; external gdslib; + + function isc_put_segment(_para1:PISC_STATUS; _para2:Pisc_blob_handle; _para3:word; _para4:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_put_slice(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:PISC_QUAD; _para5:smallint; + _para6:Pchar; _para7:smallint; _para8:PISC_LONG; _para9:ISC_LONG; _para10:pointer):ISC_STATUS; extdecl; external gdslib; + + function isc_que_events(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:PISC_LONG; _para4:smallint; _para5:Pchar; + _para6:isc_callback; _para7:pointer):ISC_STATUS; extdecl; external gdslib; + + function isc_rollback_retaining(_para1:PISC_STATUS; _para2:Pisc_tr_handle):ISC_STATUS; extdecl; external gdslib; + + function isc_rollback_transaction(_para1:PISC_STATUS; _para2:Pisc_tr_handle):ISC_STATUS; extdecl; external gdslib; + + function isc_start_multiple(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:smallint; _para4:pointer):ISC_STATUS; extdecl; external gdslib; + + function isc_start_transaction(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:smallint; args:array of const):ISC_STATUS; cdecl; external gdslib; + + function isc_sqlcode(_para1:PISC_STATUS):ISC_LONG; extdecl; external gdslib; + + procedure isc_sql_interprete(_para1:smallint; _para2:Pchar; _para3:smallint); extdecl; external gdslib; + + function isc_transaction_info(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:smallint; _para4:Pchar; _para5:smallint; + _para6:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_transact_request(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar; + _para6:word; _para7:Pchar; _para8:word; _para9:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_vax_integer(_para1:Pchar; _para2:smallint):ISC_LONG; extdecl; external gdslib; + + function isc_portable_integer(_para1:Pbyte; _para2:smallint):ISC_INT64; extdecl; external gdslib; + + { } + { Security Functions } + { } + + + function isc_add_user(_para1:PISC_STATUS; _para2:PUSER_SEC_DATA):longint; extdecl; external gdslib; + + function isc_delete_user(_para1:PISC_STATUS; _para2:PUSER_SEC_DATA):longint; extdecl; external gdslib; + + function isc_modify_user(_para1:PISC_STATUS; _para2:PUSER_SEC_DATA):longint; extdecl; external gdslib; + + { } + { Other OSRI functions } + { } + function isc_compile_request(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_req_handle; _para4:smallint; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_compile_request2(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_req_handle; _para4:smallint; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_ddl(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:smallint; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_prepare_transaction(_para1:PISC_STATUS; _para2:Pisc_tr_handle):ISC_STATUS; extdecl; external gdslib; + + function isc_receive(_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:smallint; _para4:smallint; _para5:pointer; + _para6:smallint):ISC_STATUS; extdecl; external gdslib; + + function isc_reconnect_transaction(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:smallint; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_release_request(_para1:PISC_STATUS; _para2:Pisc_req_handle):ISC_STATUS; extdecl; external gdslib; + + function isc_request_info(_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:smallint; _para4:smallint; _para5:Pchar; + _para6:smallint; _para7:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_seek_blob(_para1:PISC_STATUS; _para2:Pisc_blob_handle; _para3:smallint; _para4:ISC_LONG; _para5:PISC_LONG):ISC_STATUS; extdecl; external gdslib; + + function isc_send(_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:smallint; _para4:smallint; _para5:pointer; + _para6:smallint):ISC_STATUS; extdecl; external gdslib; + + function isc_start_and_send(_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:Pisc_tr_handle; _para4:smallint; _para5:smallint; + _para6:pointer; _para7:smallint):ISC_STATUS; extdecl; external gdslib; + + function isc_start_request(_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:Pisc_tr_handle; _para4:smallint):ISC_STATUS; extdecl; external gdslib; + + function isc_unwind_request(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:smallint):ISC_STATUS; extdecl; external gdslib; + + function isc_wait_for_event(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:smallint; _para4:Pchar; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; + + { } + { Other Sql functions } + { } + function isc_close(_para1:PISC_STATUS; _para2:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_declare(_para1:PISC_STATUS; _para2:Pchar; _para3:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_describe(_para1:PISC_STATUS; _para2:Pchar; _para3:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_describe_bind(_para1:PISC_STATUS; _para2:Pchar; _para3:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_execute(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_execute_immediate(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Psmallint; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_fetch(_para1:PISC_STATUS; _para2:Pchar; _para3:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_open(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_prepare(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pchar; _para5:Psmallint; + _para6:Pchar; _para7:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + { } + { Other Dynamic sql functions } + { } + function isc_dsql_execute_m(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:Pchar; + _para6:word; _para7:word; _para8:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_execute2_m(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:Pchar; + _para6:word; _para7:word; _para8:Pchar; _para9:word; _para10:Pchar; + _para11:word; _para12:word; _para13:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_execute_immediate_m(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar; + _para6:word; _para7:word; _para8:Pchar; _para9:word; _para10:word; + _para11:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_exec_immed3_m(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar; + _para6:word; _para7:word; _para8:Pchar; _para9:word; _para10:word; + _para11:Pchar; _para12:word; _para13:Pchar; _para14:word; _para15:word; + _para16:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_fetch_m(_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:Pchar; _para5:word; + _para6:word; _para7:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_insert_m(_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:Pchar; _para5:word; + _para6:word; _para7:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_prepare_m(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:Pchar; + _para6:word; _para7:word; _para8:Pchar; _para9:word; _para10:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_dsql_release(_para1:PISC_STATUS; _para2:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_embed_dsql_close(_para1:PISC_STATUS; _para2:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_embed_dsql_declare(_para1:PISC_STATUS; _para2:Pchar; _para3:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_embed_dsql_describe(_para1:PISC_STATUS; _para2:Pchar; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_embed_dsql_describe_bind(_para1:PISC_STATUS; _para2:Pchar; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_embed_dsql_execute(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:word; _para5:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_embed_dsql_execute2(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:word; _para5:PXSQLDA; + _para6:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_embed_dsql_execute_immed(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar; + _para6:word; _para7:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_embed_dsql_fetch(_para1:PISC_STATUS; _para2:Pchar; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_embed_dsql_open(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:word; _para5:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_embed_dsql_open2(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:word; _para5:PXSQLDA; + _para6:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_embed_dsql_insert(_para1:PISC_STATUS; _para2:Pchar; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_embed_dsql_prepare(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pchar; _para5:word; + _para6:Pchar; _para7:word; _para8:PXSQLDA):ISC_STATUS; extdecl; external gdslib; + + function isc_embed_dsql_release(_para1:PISC_STATUS; _para2:Pchar):ISC_STATUS; extdecl; external gdslib; + + { } + { Other Blob functions } + { } + function BLOB_open(_para1:isc_blob_handle; _para2:Pchar; _para3:longint):PBSTREAM; extdecl; external gdslib; + + function BLOB_put(_para1:char; _para2:PBSTREAM):longint; extdecl; external gdslib; + + function BLOB_close(_para1:PBSTREAM):longint; extdecl; external gdslib; + + function BLOB_get(_para1:PBSTREAM):longint; extdecl; external gdslib; + + function BLOB_display(_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; external gdslib; + + function BLOB_dump(_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; external gdslib; + + function BLOB_edit(_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; external gdslib; + + function BLOB_load(_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; external gdslib; + + function BLOB_text_dump(_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; external gdslib; + + function BLOB_text_load(_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; external gdslib; + + function Bopen(_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):PBSTREAM; extdecl; external gdslib; + +{$IFDEF Unix} + function Bopen2(_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar; _para5:word):PBSTREAM; extdecl; external gdslib; +{$ENDIF} + + { } + { Other Misc functions } + { } + function isc_ftof(_para1:Pchar; _para2:word; _para3:Pchar; _para4:word):ISC_LONG; extdecl; external gdslib; + + function isc_print_blr(_para1:Pchar; _para2:isc_callback; _para3:pointer; _para4:smallint):ISC_STATUS; extdecl; external gdslib; + + procedure isc_set_debug(_para1:longint); extdecl; external gdslib; + + procedure isc_qtoq(_para1:PISC_QUAD; _para2:PISC_QUAD); extdecl; external gdslib; + + procedure isc_vtof(_para1:Pchar; _para2:Pchar; _para3:word); extdecl; external gdslib; + + procedure isc_vtov(_para1:Pchar; _para2:Pchar; _para3:smallint); extdecl; external gdslib; + + function isc_version(_para1:Pisc_db_handle; _para2:isc_callback; _para3:pointer):longint; extdecl; external gdslib; + +{$IFDEF Unix} + function isc_reset_fpe(_para1:word):ISC_LONG; extdecl; external gdslib; +{$ENDIF} + + { } + { Service manager functions } + { } + (*!!MVC + #define ADD_SPB_LENGTH(p, length) { (p)++ = (length); \ + (p)++ = (length) >> 8;} + + #define ADD_SPB_NUMERIC(p, data) { (p)++ = (data); \ + (p)++ = (data) >> 8; \ + (p)++ = (data) >> 16; \ + (p)++ = (data) >> 24;} + !!MVC *) + + function isc_service_attach(_para1:PISC_STATUS; _para2:word; _para3:Pchar; _para4:Pisc_svc_handle; _para5:word; + _para6:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_service_detach(_para1:PISC_STATUS; _para2:Pisc_svc_handle):ISC_STATUS; extdecl; external gdslib; + + function isc_service_query(_para1:PISC_STATUS; _para2:Pisc_svc_handle; _para3:Pisc_resv_handle; _para4:word; _para5:Pchar; + _para6:word; _para7:Pchar; _para8:word; _para9:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_service_start(_para1:PISC_STATUS; _para2:Pisc_svc_handle; _para3:Pisc_resv_handle; _para4:word; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; + + { } + { Forms functions } + { } +{$IFDEF Unix} + function isc_compile_map(_para1:PISC_STATUS; _para2:Pisc_form_handle; _para3:Pisc_req_handle; _para4:Psmallint; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_compile_menu(_para1:PISC_STATUS; _para2:Pisc_form_handle; _para3:Pisc_req_handle; _para4:Psmallint; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_compile_sub_map(_para1:PISC_STATUS; _para2:Pisc_win_handle; _para3:Pisc_req_handle; _para4:Psmallint; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_create_window(_para1:PISC_STATUS; _para2:Pisc_win_handle; _para3:Psmallint; _para4:Pchar; _para5:Psmallint; + _para6:Psmallint):ISC_STATUS; extdecl; external gdslib; + + function isc_delete_window(_para1:PISC_STATUS; _para2:Pisc_win_handle):ISC_STATUS; extdecl; external gdslib; + + function isc_drive_form(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_win_handle; _para5:Pisc_req_handle; + _para6:Pbyte; _para7:Pbyte):ISC_STATUS; extdecl; external gdslib; + + function isc_drive_menu(_para1:PISC_STATUS; _para2:Pisc_win_handle; _para3:Pisc_req_handle; _para4:Psmallint; _para5:Pchar; + _para6:Psmallint; _para7:Pchar; _para8:Psmallint; _para9:Psmallint; _para10:Pchar; + _para11:PISC_LONG):ISC_STATUS; extdecl; external gdslib; + + function isc_form_delete(_para1:PISC_STATUS; _para2:Pisc_form_handle):ISC_STATUS; extdecl; external gdslib; + + function isc_form_fetch(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_req_handle; _para5:Pbyte):ISC_STATUS; extdecl; external gdslib; + + function isc_form_insert(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_req_handle; _para5:Pbyte):ISC_STATUS; extdecl; external gdslib; + + function isc_get_entree(_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:Psmallint; _para4:Pchar; _para5:PISC_LONG; + _para6:Psmallint):ISC_STATUS; extdecl; external gdslib; + + function isc_initialize_menu(_para1:PISC_STATUS; _para2:Pisc_req_handle):ISC_STATUS; extdecl; external gdslib; + + function isc_menu(_para1:PISC_STATUS; _para2:Pisc_win_handle; _para3:Pisc_req_handle; _para4:Psmallint; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_load_form(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_form_handle; _para5:Psmallint; + _para6:Pchar):ISC_STATUS; extdecl; external gdslib; + + function isc_pop_window(_para1:PISC_STATUS; _para2:Pisc_win_handle):ISC_STATUS; extdecl; external gdslib; + + function isc_put_entree(_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:Psmallint; _para4:Pchar; _para5:PISC_LONG):ISC_STATUS; extdecl; external gdslib; + + function isc_reset_form(_para1:PISC_STATUS; _para2:Pisc_req_handle):ISC_STATUS; extdecl; external gdslib; + + function isc_suspend_window(_para1:PISC_STATUS; _para2:Pisc_win_handle):ISC_STATUS; extdecl; external gdslib; +{$ENDIF} + + function isc_attach_database:ISC_STATUS; extdecl; external gdslib; + + function isc_array_gen_sdl:ISC_STATUS; extdecl; external gdslib; + + function isc_array_get_slice:ISC_STATUS; extdecl; external gdslib; + + function isc_array_lookup_bounds:ISC_STATUS; extdecl; external gdslib; + + function isc_array_lookup_desc:ISC_STATUS; extdecl; external gdslib; + + function isc_array_set_desc:ISC_STATUS; extdecl; external gdslib; + + function isc_array_put_slice:ISC_STATUS; extdecl; external gdslib; + + function isc_blob_gen_bpb:ISC_STATUS; extdecl; external gdslib; + + function isc_blob_info:ISC_STATUS; extdecl; external gdslib; + + function isc_blob_lookup_desc:ISC_STATUS; extdecl; external gdslib; + + function isc_blob_set_desc:ISC_STATUS; extdecl; external gdslib; + + function isc_cancel_blob:ISC_STATUS; extdecl; external gdslib; + + function isc_cancel_events:ISC_STATUS; extdecl; external gdslib; + + function isc_close_blob:ISC_STATUS; extdecl; external gdslib; + + function isc_commit_retaining:ISC_STATUS; extdecl; external gdslib; + + function isc_commit_transaction:ISC_STATUS; extdecl; external gdslib; + + function isc_compile_request:ISC_STATUS; extdecl; external gdslib; + + function isc_compile_request2:ISC_STATUS; extdecl; external gdslib; + + function isc_create_blob:ISC_STATUS; extdecl; external gdslib; + + function isc_create_blob2:ISC_STATUS; extdecl; external gdslib; + + function isc_create_database:ISC_STATUS; extdecl; external gdslib; + + function isc_database_info:ISC_STATUS; extdecl; external gdslib; + + function isc_ddl:ISC_STATUS; extdecl; external gdslib; + + procedure isc_decode_date; extdecl; external gdslib; + + procedure isc_decode_sql_date; extdecl; external gdslib; + + procedure isc_decode_sql_time; extdecl; external gdslib; + + procedure isc_decode_timestamp; extdecl; external gdslib; + + function isc_detach_database:ISC_STATUS; extdecl; external gdslib; + + function isc_drop_database:ISC_STATUS; extdecl; external gdslib; + + procedure isc_encode_date; extdecl; external gdslib; + + procedure isc_encode_sql_date; extdecl; external gdslib; + + procedure isc_encode_sql_time; extdecl; external gdslib; + + procedure isc_encode_timestamp; extdecl; external gdslib; + + function isc_event_block:ISC_LONG; cdecl; external gdslib; + + procedure isc_event_counts; extdecl; external gdslib; + + procedure isc_expand_dpb; cdecl; external gdslib; + + function isc_modify_dpb:longint; extdecl; external gdslib; + + function isc_free:ISC_LONG; extdecl; external gdslib; + + function isc_get_segment:ISC_STATUS; extdecl; external gdslib; + + function isc_get_slice:ISC_STATUS; extdecl; external gdslib; + + function isc_interprete:ISC_STATUS; extdecl; external gdslib; + + function isc_open_blob:ISC_STATUS; extdecl; external gdslib; + + function isc_open_blob2:ISC_STATUS; extdecl; external gdslib; + + function isc_prepare_transaction:ISC_STATUS; extdecl; external gdslib; + + function isc_prepare_transaction2:ISC_STATUS; extdecl; external gdslib; + + procedure isc_print_sqlerror; extdecl; external gdslib; + + function isc_print_status:ISC_STATUS; extdecl; external gdslib; + + function isc_put_segment:ISC_STATUS; extdecl; external gdslib; + + function isc_put_slice:ISC_STATUS; extdecl; external gdslib; + + function isc_que_events:ISC_STATUS; extdecl; external gdslib; + + function isc_receive:ISC_STATUS; extdecl; external gdslib; + + function isc_reconnect_transaction:ISC_STATUS; extdecl; external gdslib; + + function isc_release_request:ISC_STATUS; extdecl; external gdslib; + + function isc_request_info:ISC_STATUS; extdecl; external gdslib; + +{$IFDEF Unix} + function isc_reset_fpe:ISC_LONG; extdecl; external gdslib; +{$ENDIF} + + function isc_rollback_transaction:ISC_STATUS; extdecl; external gdslib; + + function isc_rollback_retaining:ISC_STATUS; extdecl; external gdslib; + + function isc_seek_blob:ISC_STATUS; extdecl; external gdslib; + + function isc_send:ISC_STATUS; extdecl; external gdslib; + + function isc_service_attach:ISC_STATUS; extdecl; external gdslib; + + function isc_service_detach:ISC_STATUS; extdecl; external gdslib; + + function isc_service_query:ISC_STATUS; extdecl; external gdslib; + + function isc_service_start:ISC_STATUS; extdecl; external gdslib; + + function isc_start_and_send:ISC_STATUS; extdecl; external gdslib; + + function isc_start_multiple:ISC_STATUS; extdecl; external gdslib; + + function isc_start_request:ISC_STATUS; extdecl; external gdslib; + + function isc_start_transaction:ISC_STATUS; cdecl; external gdslib; + + function isc_sqlcode:ISC_LONG; extdecl; external gdslib; + + function isc_transaction_info:ISC_STATUS; extdecl; external gdslib; + + function isc_transact_request:ISC_STATUS; extdecl; external gdslib; + + function isc_unwind_request:ISC_STATUS; extdecl; external gdslib; + + function isc_wait_for_event:ISC_STATUS; extdecl; external gdslib; + + function isc_ftof:ISC_LONG; extdecl; external gdslib; + + function isc_print_blr:ISC_STATUS; extdecl; external gdslib; + + procedure isc_set_debug; extdecl; external gdslib; + + procedure isc_qtoq; extdecl; external gdslib; + + function isc_vax_integer:ISC_LONG; extdecl; external gdslib; + + procedure isc_vtof; extdecl; external gdslib; + + procedure isc_vtov; extdecl; external gdslib; + + function isc_version:longint; extdecl; external gdslib; + + { } + { Blob functions } + { } + + function Bopen:PBSTREAM; extdecl; external gdslib; + + function BLOB_open:PBSTREAM; extdecl; external gdslib; + +{$IFDEF Unix} + function Bopen2:PBSTREAM; extdecl; external gdslib; +{$ENDIF} + +{$ELSE} // LinkDynamically + +var + +{ } +{ OSRI database functions } +{ } + isc_attach_database : function (_para1:PISC_STATUS; _para2:smallint; _para3:Pchar; _para4:Pisc_db_handle; _para5:smallint;_para6:Pchar):ISC_STATUS; extdecl; + isc_array_gen_sdl : function (_para1:PISC_STATUS; _para2:PISC_ARRAY_DESC; _para3:Psmallint; _para4:Pchar; _para5:Psmallint):ISC_STATUS; extdecl; + isc_array_get_slice : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:PISC_QUAD; _para5:PISC_ARRAY_DESC;_para6:pointer; _para7:PISC_LONG):ISC_STATUS; extdecl; + isc_array_lookup_bounds : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pchar; _para5:Pchar;_para6:PISC_ARRAY_DESC):ISC_STATUS; extdecl; + isc_array_lookup_desc : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pchar; _para5:Pchar;_para6:PISC_ARRAY_DESC):ISC_STATUS; extdecl; + isc_array_set_desc : function (_para1:PISC_STATUS; _para2:Pchar; _para3:Pchar; _para4:Psmallint; _para5:Psmallint;_para6:Psmallint; _para7:PISC_ARRAY_DESC):ISC_STATUS; extdecl; + isc_array_put_slice : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:PISC_QUAD; _para5:PISC_ARRAY_DESC;_para6:pointer; _para7:PISC_LONG):ISC_STATUS; extdecl; + isc_blob_default_desc : procedure (_para1:PISC_BLOB_DESC; _para2:Pbyte; _para3:Pbyte); extdecl; + isc_blob_gen_bpb : function (_para1:PISC_STATUS; _para2:PISC_BLOB_DESC; _para3:PISC_BLOB_DESC; _para4:word; _para5:Pbyte;_para6:Pword):ISC_STATUS; extdecl; + isc_blob_info : function (_para1:PISC_STATUS; _para2:Pisc_blob_handle; _para3:smallint; _para4:Pchar; _para5:smallint;_para6:Pchar):ISC_STATUS; extdecl; + isc_blob_lookup_desc : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pbyte; _para5:Pbyte;_para6:PISC_BLOB_DESC; _para7:Pbyte):ISC_STATUS; extdecl; + isc_blob_set_desc : function (_para1:PISC_STATUS; _para2:Pbyte; _para3:Pbyte; _para4:smallint; _para5:smallint;_para6:smallint; _para7:PISC_BLOB_DESC):ISC_STATUS; extdecl; + isc_cancel_blob : function (_para1:PISC_STATUS; _para2:Pisc_blob_handle):ISC_STATUS; extdecl; + isc_cancel_events : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:PISC_LONG):ISC_STATUS; extdecl; + isc_close_blob : function (_para1:PISC_STATUS; _para2:Pisc_blob_handle):ISC_STATUS; extdecl; + isc_commit_retaining : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle):ISC_STATUS; extdecl; + isc_commit_transaction : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle):ISC_STATUS; extdecl; + isc_create_blob : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_blob_handle; _para5:PISC_QUAD):ISC_STATUS; extdecl; + isc_create_blob2 : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_blob_handle; _para5:PISC_QUAD;_para6:smallint; _para7:Pchar):ISC_STATUS; extdecl; + isc_create_database : function (_para1:PISC_STATUS; _para2:smallint; _para3:Pchar; _para4:Pisc_db_handle; _para5:smallint;_para6:Pchar; _para7:smallint):ISC_STATUS; extdecl; + isc_database_info : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:smallint; _para4:Pchar; _para5:smallint;_para6:Pchar):ISC_STATUS; extdecl; + isc_decode_date : procedure (_para1:PISC_QUAD; _para2:pointer); extdecl; + isc_decode_sql_date : procedure (_para1:PISC_DATE; _para2:pointer); extdecl; + isc_decode_sql_time : procedure (_para1:PISC_TIME; _para2:pointer); extdecl; + isc_decode_timestamp : procedure (_para1:PISC_TIMESTAMP; _para2:pointer); extdecl; + isc_detach_database : function (_para1:PISC_STATUS; _para2:Pisc_db_handle):ISC_STATUS; extdecl; + isc_drop_database : function (_para1:PISC_STATUS; _para2:Pisc_db_handle):ISC_STATUS; extdecl; + isc_dsql_allocate_statement : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_stmt_handle):ISC_STATUS; extdecl; + isc_dsql_alloc_statement2 : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_stmt_handle):ISC_STATUS; extdecl; + isc_dsql_describe : function (_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; + isc_dsql_describe_bind : function (_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; + isc_dsql_exec_immed2 : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar;_para6:word; _para7:PXSQLDA; _para8:PXSQLDA):ISC_STATUS; extdecl; + isc_dsql_execute : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:PXSQLDA):ISC_STATUS; extdecl; + isc_dsql_execute2 : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:PXSQLDA;_para6:PXSQLDA):ISC_STATUS; extdecl; + isc_dsql_execute_immediate : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar;_para6:word; _para7:PXSQLDA):ISC_STATUS; extdecl; + isc_dsql_fetch : function (_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; + isc_dsql_finish : function (_para1:Pisc_db_handle):ISC_STATUS; extdecl; + isc_dsql_free_statement : function (_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word):ISC_STATUS; extdecl; + isc_dsql_insert : function (_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; + isc_dsql_prepare : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:Pchar;_para6:word; _para7:PXSQLDA):ISC_STATUS; extdecl; + isc_dsql_set_cursor_name : function (_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:Pchar; _para4:word):ISC_STATUS; extdecl; + isc_dsql_sql_info : function (_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:smallint; _para4:Pchar; _para5:smallint;_para6:Pchar):ISC_STATUS; extdecl; + isc_encode_date : procedure (_para1:pointer; _para2:PISC_QUAD); extdecl; + isc_encode_sql_date : procedure (_para1:pointer; _para2:PISC_DATE); extdecl; + isc_encode_sql_time : procedure (_para1:pointer; _para2:PISC_TIME); extdecl; + isc_encode_timestamp : procedure (_para1:pointer; _para2:PISC_TIMESTAMP); extdecl; + isc_event_block : function (_para1:PPchar; _para2:PPchar; _para3:word; args:array of const):ISC_LONG; cdecl; +{!!MVC + void isc_event_counts (unsigned ISC_LONG , + short, + char , + char ); extdecl; external gdslib; +!!MVC } + isc_expand_dpb : procedure (_para1:PPchar; _para2:Psmallint; args:array of const); cdecl; + isc_modify_dpb : function (_para1:PPchar; _para2:Psmallint; _para3:word; _para4:Pchar; _para5:smallint):longint; extdecl; + isc_free : function (_para1:Pchar):ISC_LONG; extdecl; + isc_get_segment : function (_para1:PISC_STATUS; _para2:Pisc_blob_handle; _para3:Pword; _para4:word; _para5:Pchar):ISC_STATUS; extdecl; + isc_get_slice : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:PISC_QUAD; _para5:smallint;_para6:Pchar; _para7:smallint; _para8:PISC_LONG; _para9:ISC_LONG; _para10:pointer;_para11:PISC_LONG):ISC_STATUS; extdecl; + isc_interprete : function (_para1:Pchar; _para2:PPISC_STATUS):ISC_STATUS; extdecl; + isc_open_blob : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_blob_handle; _para5:PISC_QUAD):ISC_STATUS; extdecl; + isc_open_blob2 : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_blob_handle; _para5:PISC_QUAD;_para6:smallint; _para7:Pchar):ISC_STATUS; extdecl; + isc_prepare_transaction2 : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:smallint; _para4:Pchar):ISC_STATUS; extdecl; + isc_print_sqlerror : procedure (_para1:smallint; _para2:PISC_STATUS); extdecl; + isc_print_status : function (_para1:PISC_STATUS):ISC_STATUS; extdecl; + isc_put_segment : function (_para1:PISC_STATUS; _para2:Pisc_blob_handle; _para3:word; _para4:Pchar):ISC_STATUS; extdecl; + isc_put_slice : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:PISC_QUAD; _para5:smallint;_para6:Pchar; _para7:smallint; _para8:PISC_LONG; _para9:ISC_LONG; _para10:pointer):ISC_STATUS; extdecl; + isc_que_events : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:PISC_LONG; _para4:smallint; _para5:Pchar;_para6:isc_callback; _para7:pointer):ISC_STATUS; extdecl; + isc_rollback_retaining : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle):ISC_STATUS; extdecl; + isc_rollback_transaction : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle):ISC_STATUS; extdecl; + isc_start_multiple : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:smallint; _para4:pointer):ISC_STATUS; extdecl; + isc_start_transaction : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:smallint; args:array of const):ISC_STATUS; cdecl; + isc_sqlcode : function (_para1:PISC_STATUS):ISC_LONG; extdecl; + isc_sql_interprete : procedure (_para1:smallint; _para2:Pchar; _para3:smallint); extdecl; + isc_transaction_info : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:smallint; _para4:Pchar; _para5:smallint;_para6:Pchar):ISC_STATUS; extdecl; + isc_transact_request : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar;_para6:word; _para7:Pchar; _para8:word; _para9:Pchar):ISC_STATUS; extdecl; + isc_vax_integer : function (_para1:Pchar; _para2:smallint):ISC_LONG; extdecl; + isc_portable_integer : function (_para1:Pbyte; _para2:smallint):ISC_INT64; extdecl; +{ } +{ Security Functions } +{ } + isc_add_user : function (_para1:PISC_STATUS; _para2:PUSER_SEC_DATA):longint; extdecl; + isc_delete_user : function (_para1:PISC_STATUS; _para2:PUSER_SEC_DATA):longint; extdecl; + isc_modify_user : function (_para1:PISC_STATUS; _para2:PUSER_SEC_DATA):longint; extdecl; +{ } +{ Other OSRI functions } +{ } + isc_compile_request : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_req_handle; _para4:smallint; _para5:Pchar):ISC_STATUS; extdecl; + isc_compile_request2 : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_req_handle; _para4:smallint; _para5:Pchar):ISC_STATUS; extdecl; + isc_ddl : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:smallint; _para5:Pchar):ISC_STATUS; extdecl; + isc_prepare_transaction : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle):ISC_STATUS; extdecl; + isc_receive : function (_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:smallint; _para4:smallint; _para5:pointer;_para6:smallint):ISC_STATUS; extdecl; + isc_reconnect_transaction : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:smallint; _para5:Pchar):ISC_STATUS; extdecl; + isc_release_request : function (_para1:PISC_STATUS; _para2:Pisc_req_handle):ISC_STATUS; extdecl; + isc_request_info : function (_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:smallint; _para4:smallint; _para5:Pchar;_para6:smallint; _para7:Pchar):ISC_STATUS; extdecl; + isc_seek_blob : function (_para1:PISC_STATUS; _para2:Pisc_blob_handle; _para3:smallint; _para4:ISC_LONG; _para5:PISC_LONG):ISC_STATUS; extdecl; + isc_send : function (_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:smallint; _para4:smallint; _para5:pointer;_para6:smallint):ISC_STATUS; extdecl; + isc_start_and_send : function (_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:Pisc_tr_handle; _para4:smallint; _para5:smallint;_para6:pointer; _para7:smallint):ISC_STATUS; extdecl; + isc_start_request : function (_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:Pisc_tr_handle; _para4:smallint):ISC_STATUS; extdecl; + isc_unwind_request : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:smallint):ISC_STATUS; extdecl; + isc_wait_for_event : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:smallint; _para4:Pchar; _para5:Pchar):ISC_STATUS; extdecl; +{ } +{ Other Sql functions } +{ } + isc_close : function (_para1:PISC_STATUS; _para2:Pchar):ISC_STATUS; extdecl; + isc_declare : function (_para1:PISC_STATUS; _para2:Pchar; _para3:Pchar):ISC_STATUS; extdecl; + isc_describe : function (_para1:PISC_STATUS; _para2:Pchar; _para3:PXSQLDA):ISC_STATUS; extdecl; + isc_describe_bind : function (_para1:PISC_STATUS; _para2:Pchar; _para3:PXSQLDA):ISC_STATUS; extdecl; + isc_execute : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:PXSQLDA):ISC_STATUS; extdecl; + isc_execute_immediate : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Psmallint; _para5:Pchar):ISC_STATUS; extdecl; + isc_fetch : function (_para1:PISC_STATUS; _para2:Pchar; _para3:PXSQLDA):ISC_STATUS; extdecl; + isc_open : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:PXSQLDA):ISC_STATUS; extdecl; + isc_prepare : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pchar; _para5:Psmallint;_para6:Pchar; _para7:PXSQLDA):ISC_STATUS; extdecl; +{ } +{ Other Dynamic sql functions } +{ } + isc_dsql_execute_m : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:Pchar;_para6:word; _para7:word; _para8:Pchar):ISC_STATUS; extdecl; + isc_dsql_execute2_m : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:Pchar;_para6:word; _para7:word; _para8:Pchar; _para9:word; _para10:Pchar;_para11:word; _para12:word; _para13:Pchar):ISC_STATUS; extdecl; + isc_dsql_execute_immediate_m : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar;_para6:word; _para7:word; _para8:Pchar; _para9:word; _para10:word;_para11:Pchar):ISC_STATUS; extdecl; + isc_dsql_exec_immed3_m : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar;_para6:word; _para7:word; _para8:Pchar; _para9:word; _para10:word;_para11:Pchar; _para12:word; _para13:Pchar; _para14:word; _para15:word;_para16:Pchar):ISC_STATUS; extdecl; + isc_dsql_fetch_m : function (_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:Pchar; _para5:word;_para6:word; _para7:Pchar):ISC_STATUS; extdecl; + isc_dsql_insert_m : function (_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:Pchar; _para5:word;_para6:word; _para7:Pchar):ISC_STATUS; extdecl; + isc_dsql_prepare_m : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:Pchar;_para6:word; _para7:word; _para8:Pchar; _para9:word; _para10:Pchar):ISC_STATUS; extdecl; + isc_dsql_release : function (_para1:PISC_STATUS; _para2:Pchar):ISC_STATUS; extdecl; + isc_embed_dsql_close : function (_para1:PISC_STATUS; _para2:Pchar):ISC_STATUS; extdecl; + isc_embed_dsql_declare : function (_para1:PISC_STATUS; _para2:Pchar; _para3:Pchar):ISC_STATUS; extdecl; + isc_embed_dsql_describe : function (_para1:PISC_STATUS; _para2:Pchar; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; + isc_embed_dsql_describe_bind : function (_para1:PISC_STATUS; _para2:Pchar; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; + isc_embed_dsql_execute : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:word; _para5:PXSQLDA):ISC_STATUS; extdecl; + isc_embed_dsql_execute2 : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:word; _para5:PXSQLDA;_para6:PXSQLDA):ISC_STATUS; extdecl; + isc_embed_dsql_execute_immed : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar;_para6:word; _para7:PXSQLDA):ISC_STATUS; extdecl; + isc_embed_dsql_fetch : function (_para1:PISC_STATUS; _para2:Pchar; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; + isc_embed_dsql_open : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:word; _para5:PXSQLDA):ISC_STATUS; extdecl; + isc_embed_dsql_open2 : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:word; _para5:PXSQLDA;_para6:PXSQLDA):ISC_STATUS; extdecl; + isc_embed_dsql_insert : function (_para1:PISC_STATUS; _para2:Pchar; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; + isc_embed_dsql_prepare : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pchar; _para5:word;_para6:Pchar; _para7:word; _para8:PXSQLDA):ISC_STATUS; extdecl; + isc_embed_dsql_release : function (_para1:PISC_STATUS; _para2:Pchar):ISC_STATUS; extdecl; +{ } +{ Other Blob functions } +{ } + BLOB_open : function (_para1:isc_blob_handle; _para2:Pchar; _para3:longint):PBSTREAM; extdecl; + BLOB_put : function (_para1:char; _para2:PBSTREAM):longint; extdecl; + BLOB_close : function (_para1:PBSTREAM):longint; extdecl; + BLOB_get : function (_para1:PBSTREAM):longint; extdecl; + BLOB_display : function (_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; + BLOB_dump : function (_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; + BLOB_edit : function (_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; + BLOB_load : function (_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; + BLOB_text_dump : function (_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; + BLOB_text_load : function (_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; + Bopen : function (_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):PBSTREAM; extdecl; +{$IFDEF Unix} + Bopen2 : function (_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar; _para5:word):PBSTREAM; extdecl; +{$ENDIF} +{ } +{ Other Misc functions } +{ } + isc_ftof : function (_para1:Pchar; _para2:word; _para3:Pchar; _para4:word):ISC_LONG; extdecl; + isc_print_blr : function (_para1:Pchar; _para2:isc_callback; _para3:pointer; _para4:smallint):ISC_STATUS; extdecl; + isc_set_debug : procedure (_para1:longint); extdecl; + isc_qtoq : procedure (_para1:PISC_QUAD; _para2:PISC_QUAD); extdecl; + isc_vtof : procedure (_para1:Pchar; _para2:Pchar; _para3:word); extdecl; + isc_vtov : procedure (_para1:Pchar; _para2:Pchar; _para3:smallint); extdecl; + isc_version : function (_para1:Pisc_db_handle; _para2:isc_callback; _para3:pointer):longint; extdecl; +{$IFDEF Unix} + isc_reset_fpe : function (_para1:word):ISC_LONG; extdecl; +{$ENDIF} +{ } +{ Service manager functions } +{ } +(*!!MVC + #define ADD_SPB_LENGTH(p, length) { (p)++ = (length); \ + (p)++ = (length) >> 8;} + +#define ADD_SPB_NUMERIC(p, data) { (p)++ = (data); \ + (p)++ = (data) >> 8; \ + (p)++ = (data) >> 16; \ + (p)++ = (data) >> 24;} +!!MVC *) + isc_service_attach : function (_para1:PISC_STATUS; _para2:word; _para3:Pchar; _para4:Pisc_svc_handle; _para5:word;_para6:Pchar):ISC_STATUS; extdecl; + isc_service_detach : function (_para1:PISC_STATUS; _para2:Pisc_svc_handle):ISC_STATUS; extdecl; + isc_service_query : function (_para1:PISC_STATUS; _para2:Pisc_svc_handle; _para3:Pisc_resv_handle; _para4:word; _para5:Pchar;_para6:word; _para7:Pchar; _para8:word; _para9:Pchar):ISC_STATUS; extdecl; + isc_service_start : function (_para1:PISC_STATUS; _para2:Pisc_svc_handle; _para3:Pisc_resv_handle; _para4:word; _para5:Pchar):ISC_STATUS; extdecl; +{ } +{ Forms functions } +{ } +{$IFDEF Unix} + isc_compile_map : function (_para1:PISC_STATUS; _para2:Pisc_form_handle; _para3:Pisc_req_handle; _para4:Psmallint; _para5:Pchar):ISC_STATUS; extdecl; + isc_compile_menu : function (_para1:PISC_STATUS; _para2:Pisc_form_handle; _para3:Pisc_req_handle; _para4:Psmallint; _para5:Pchar):ISC_STATUS; extdecl; + isc_compile_sub_map : function (_para1:PISC_STATUS; _para2:Pisc_win_handle; _para3:Pisc_req_handle; _para4:Psmallint; _para5:Pchar):ISC_STATUS; extdecl; + isc_create_window : function (_para1:PISC_STATUS; _para2:Pisc_win_handle; _para3:Psmallint; _para4:Pchar; _para5:Psmallint;_para6:Psmallint):ISC_STATUS; extdecl; + isc_delete_window : function (_para1:PISC_STATUS; _para2:Pisc_win_handle):ISC_STATUS; extdecl; + isc_drive_form : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_win_handle; _para5:Pisc_req_handle;_para6:Pbyte; _para7:Pbyte):ISC_STATUS; extdecl; + isc_drive_menu : function (_para1:PISC_STATUS; _para2:Pisc_win_handle; _para3:Pisc_req_handle; _para4:Psmallint; _para5:Pchar;_para6:Psmallint; _para7:Pchar; _para8:Psmallint; _para9:Psmallint; _para10:Pchar;_para11:PISC_LONG):ISC_STATUS; extdecl; + isc_form_delete : function (_para1:PISC_STATUS; _para2:Pisc_form_handle):ISC_STATUS; extdecl; + isc_form_fetch : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_req_handle; _para5:Pbyte):ISC_STATUS; extdecl; + isc_form_insert : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_req_handle; _para5:Pbyte):ISC_STATUS; extdecl; + isc_get_entree : function (_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:Psmallint; _para4:Pchar; _para5:PISC_LONG;_para6:Psmallint):ISC_STATUS; extdecl; + isc_initialize_menu : function (_para1:PISC_STATUS; _para2:Pisc_req_handle):ISC_STATUS; extdecl; + isc_menu : function (_para1:PISC_STATUS; _para2:Pisc_win_handle; _para3:Pisc_req_handle; _para4:Psmallint; _para5:Pchar):ISC_STATUS; extdecl; + isc_load_form : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_form_handle; _para5:Psmallint;_para6:Pchar):ISC_STATUS; extdecl; + isc_pop_window : function (_para1:PISC_STATUS; _para2:Pisc_win_handle):ISC_STATUS; extdecl; + isc_put_entree : function (_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:Psmallint; _para4:Pchar; _para5:PISC_LONG):ISC_STATUS; extdecl; + isc_reset_form : function (_para1:PISC_STATUS; _para2:Pisc_req_handle):ISC_STATUS; extdecl; + isc_suspend_window : function (_para1:PISC_STATUS; _para2:Pisc_win_handle):ISC_STATUS; extdecl; +{$ENDIF} + +Procedure InitialiseIBase60; +Procedure ReleaseIBase60; + +var IBaseLibraryHandle : TLibHandle; + +{$ENDIF} + +implementation + +{$IFDEF LinkDynamically} + +var RefCount : integer; + +Procedure InitialiseIBase60; + +begin + inc(RefCount); + if RefCount = 1 then + begin + IBaseLibraryHandle := loadlibrary(fbclib); + if IBaseLibraryHandle = nilhandle then + begin + IBaseLibraryHandle := loadlibrary(gdslib); + if loadlibrary(gdslib) = nilhandle then + begin + RefCount := 0; + Raise EInOutError.Create('Can not load Firebird or Interbase client. Is it installed? ('+gdslib+' or '+fbclib+')'); + end; + end; + + pointer(isc_attach_database) := GetProcedureAddress(IBaseLibraryHandle,'isc_attach_database'); + pointer(isc_array_gen_sdl) := GetProcedureAddress(IBaseLibraryHandle,'isc_array_gen_sdl'); + pointer(isc_array_get_slice) := GetProcedureAddress(IBaseLibraryHandle,'isc_array_get_slice'); + pointer(isc_array_lookup_bounds) := GetProcedureAddress(IBaseLibraryHandle,'isc_array_lookup_bounds'); + pointer(isc_array_lookup_desc) := GetProcedureAddress(IBaseLibraryHandle,'isc_array_lookup_desc'); + pointer(isc_array_set_desc) := GetProcedureAddress(IBaseLibraryHandle,'isc_array_set_desc'); + pointer(isc_array_put_slice) := GetProcedureAddress(IBaseLibraryHandle,'isc_array_put_slice'); + pointer(isc_blob_default_desc) := GetProcedureAddress(IBaseLibraryHandle,'isc_blob_default_desc'); + pointer(isc_blob_gen_bpb) := GetProcedureAddress(IBaseLibraryHandle,'isc_blob_gen_bpb'); + pointer(isc_blob_info) := GetProcedureAddress(IBaseLibraryHandle,'isc_blob_info'); + pointer(isc_blob_lookup_desc) := GetProcedureAddress(IBaseLibraryHandle,'isc_blob_lookup_desc'); + pointer(isc_blob_set_desc) := GetProcedureAddress(IBaseLibraryHandle,'isc_blob_set_desc'); + pointer(isc_cancel_blob) := GetProcedureAddress(IBaseLibraryHandle,'isc_cancel_blob'); + pointer(isc_cancel_events) := GetProcedureAddress(IBaseLibraryHandle,'isc_cancel_events'); + pointer(isc_close_blob) := GetProcedureAddress(IBaseLibraryHandle,'isc_close_blob'); + pointer(isc_commit_retaining) := GetProcedureAddress(IBaseLibraryHandle,'isc_commit_retaining'); + pointer(isc_commit_transaction) := GetProcedureAddress(IBaseLibraryHandle,'isc_commit_transaction'); + pointer(isc_create_blob) := GetProcedureAddress(IBaseLibraryHandle,'isc_create_blob'); + pointer(isc_create_blob2) := GetProcedureAddress(IBaseLibraryHandle,'isc_create_blob2'); + pointer(isc_create_database) := GetProcedureAddress(IBaseLibraryHandle,'isc_create_database'); + pointer(isc_database_info) := GetProcedureAddress(IBaseLibraryHandle,'isc_database_info'); + pointer(isc_decode_date) := GetProcedureAddress(IBaseLibraryHandle,'isc_decode_date'); + pointer(isc_decode_sql_date) := GetProcedureAddress(IBaseLibraryHandle,'isc_decode_sql_date'); + pointer(isc_decode_sql_time) := GetProcedureAddress(IBaseLibraryHandle,'isc_decode_sql_time'); + pointer(isc_decode_timestamp) := GetProcedureAddress(IBaseLibraryHandle,'isc_decode_timestamp'); + pointer(isc_detach_database) := GetProcedureAddress(IBaseLibraryHandle,'isc_detach_database'); + pointer(isc_drop_database) := GetProcedureAddress(IBaseLibraryHandle,'isc_drop_database'); + pointer(isc_dsql_allocate_statement) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_allocate_statement'); + pointer(isc_dsql_alloc_statement2) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_alloc_statement2'); + pointer(isc_dsql_describe) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_describe'); + pointer(isc_dsql_describe_bind) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_describe_bind'); + pointer(isc_dsql_exec_immed2) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_exec_immed2'); + pointer(isc_dsql_execute) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_execute'); + pointer(isc_dsql_execute2) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_execute2'); + pointer(isc_dsql_execute_immediate) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_execute_immediate'); + pointer(isc_dsql_fetch) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_fetch'); + pointer(isc_dsql_finish) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_finish'); + pointer(isc_dsql_free_statement) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_free_statement'); + pointer(isc_dsql_insert) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_insert'); + pointer(isc_dsql_prepare) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_prepare'); + pointer(isc_dsql_set_cursor_name) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_set_cursor_name'); + pointer(isc_dsql_sql_info) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_sql_info'); + pointer(isc_encode_date) := GetProcedureAddress(IBaseLibraryHandle,'isc_encode_date'); + pointer(isc_encode_sql_date) := GetProcedureAddress(IBaseLibraryHandle,'isc_encode_sql_date'); + pointer(isc_encode_sql_time) := GetProcedureAddress(IBaseLibraryHandle,'isc_encode_sql_time'); + pointer(isc_encode_timestamp) := GetProcedureAddress(IBaseLibraryHandle,'isc_encode_timestamp'); + pointer(isc_event_block) := GetProcedureAddress(IBaseLibraryHandle,'isc_event_block'); + pointer(isc_expand_dpb) := GetProcedureAddress(IBaseLibraryHandle,'isc_expand_dpb'); + pointer(isc_modify_dpb) := GetProcedureAddress(IBaseLibraryHandle,'isc_modify_dpb'); + pointer(isc_free) := GetProcedureAddress(IBaseLibraryHandle,'isc_free'); + pointer(isc_get_segment) := GetProcedureAddress(IBaseLibraryHandle,'isc_get_segment'); + pointer(isc_get_slice) := GetProcedureAddress(IBaseLibraryHandle,'isc_get_slice'); + pointer(isc_interprete) := GetProcedureAddress(IBaseLibraryHandle,'isc_interprete'); + pointer(isc_open_blob) := GetProcedureAddress(IBaseLibraryHandle,'isc_open_blob'); + pointer(isc_open_blob2) := GetProcedureAddress(IBaseLibraryHandle,'isc_open_blob2'); + pointer(isc_prepare_transaction2) := GetProcedureAddress(IBaseLibraryHandle,'isc_prepare_transaction2'); + pointer(isc_print_sqlerror) := GetProcedureAddress(IBaseLibraryHandle,'isc_print_sqlerror'); + pointer(isc_print_status) := GetProcedureAddress(IBaseLibraryHandle,'isc_print_status'); + pointer(isc_put_segment) := GetProcedureAddress(IBaseLibraryHandle,'isc_put_segment'); + pointer(isc_put_slice) := GetProcedureAddress(IBaseLibraryHandle,'isc_put_slice'); + pointer(isc_que_events) := GetProcedureAddress(IBaseLibraryHandle,'isc_que_events'); + pointer(isc_rollback_retaining) := GetProcedureAddress(IBaseLibraryHandle,'isc_rollback_retaining'); + pointer(isc_rollback_transaction) := GetProcedureAddress(IBaseLibraryHandle,'isc_rollback_transaction'); + pointer(isc_start_multiple) := GetProcedureAddress(IBaseLibraryHandle,'isc_start_multiple'); + pointer(isc_start_transaction) := GetProcedureAddress(IBaseLibraryHandle,'isc_start_transaction'); + pointer(isc_sqlcode) := GetProcedureAddress(IBaseLibraryHandle,'isc_sqlcode'); + pointer(isc_sql_interprete) := GetProcedureAddress(IBaseLibraryHandle,'isc_sql_interprete'); + pointer(isc_transaction_info) := GetProcedureAddress(IBaseLibraryHandle,'isc_transaction_info'); + pointer(isc_transact_request) := GetProcedureAddress(IBaseLibraryHandle,'isc_transact_request'); + pointer(isc_vax_integer) := GetProcedureAddress(IBaseLibraryHandle,'isc_vax_integer'); + pointer(isc_portable_integer) := GetProcedureAddress(IBaseLibraryHandle,'isc_portable_integer'); + pointer(isc_add_user) := GetProcedureAddress(IBaseLibraryHandle,'isc_add_user'); + pointer(isc_delete_user) := GetProcedureAddress(IBaseLibraryHandle,'isc_delete_user'); + pointer(isc_modify_user) := GetProcedureAddress(IBaseLibraryHandle,'isc_modify_user'); + pointer(isc_compile_request) := GetProcedureAddress(IBaseLibraryHandle,'isc_compile_request'); + pointer(isc_compile_request2) := GetProcedureAddress(IBaseLibraryHandle,'isc_compile_request2'); + pointer(isc_ddl) := GetProcedureAddress(IBaseLibraryHandle,'isc_ddl'); + pointer(isc_prepare_transaction) := GetProcedureAddress(IBaseLibraryHandle,'isc_prepare_transaction'); + pointer(isc_receive) := GetProcedureAddress(IBaseLibraryHandle,'isc_receive'); + pointer(isc_reconnect_transaction) := GetProcedureAddress(IBaseLibraryHandle,'isc_reconnect_transaction'); + pointer(isc_release_request) := GetProcedureAddress(IBaseLibraryHandle,'isc_release_request'); + pointer(isc_request_info) := GetProcedureAddress(IBaseLibraryHandle,'isc_request_info'); + pointer(isc_seek_blob) := GetProcedureAddress(IBaseLibraryHandle,'isc_seek_blob'); + pointer(isc_send) := GetProcedureAddress(IBaseLibraryHandle,'isc_send'); + pointer(isc_start_and_send) := GetProcedureAddress(IBaseLibraryHandle,'isc_start_and_send'); + pointer(isc_start_request) := GetProcedureAddress(IBaseLibraryHandle,'isc_start_request'); + pointer(isc_unwind_request) := GetProcedureAddress(IBaseLibraryHandle,'isc_unwind_request'); + pointer(isc_wait_for_event) := GetProcedureAddress(IBaseLibraryHandle,'isc_wait_for_event'); + pointer(isc_close) := GetProcedureAddress(IBaseLibraryHandle,'isc_close'); + pointer(isc_declare) := GetProcedureAddress(IBaseLibraryHandle,'isc_declare'); + pointer(isc_describe) := GetProcedureAddress(IBaseLibraryHandle,'isc_describe'); + pointer(isc_describe_bind) := GetProcedureAddress(IBaseLibraryHandle,'isc_describe_bind'); + pointer(isc_execute) := GetProcedureAddress(IBaseLibraryHandle,'isc_execute'); + pointer(isc_execute_immediate) := GetProcedureAddress(IBaseLibraryHandle,'isc_execute_immediate'); + pointer(isc_fetch) := GetProcedureAddress(IBaseLibraryHandle,'isc_fetch'); + pointer(isc_open) := GetProcedureAddress(IBaseLibraryHandle,'isc_open'); + pointer(isc_prepare) := GetProcedureAddress(IBaseLibraryHandle,'isc_prepare'); + pointer(isc_dsql_execute_m) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_execute_m'); + pointer(isc_dsql_execute2_m) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_execute2_m'); + pointer(isc_dsql_execute_immediate_m) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_execute_immediate_m'); + pointer(isc_dsql_exec_immed3_m) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_exec_immed3_m'); + pointer(isc_dsql_fetch_m) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_fetch_m'); + pointer(isc_dsql_insert_m) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_insert_m'); + pointer(isc_dsql_prepare_m) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_prepare_m'); + pointer(isc_dsql_release) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_release'); + pointer(isc_embed_dsql_close) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_close'); + pointer(isc_embed_dsql_declare) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_declare'); + pointer(isc_embed_dsql_describe) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_describe'); + pointer(isc_embed_dsql_describe_bind) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_describe_bind'); + pointer(isc_embed_dsql_execute) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_execute'); + pointer(isc_embed_dsql_execute2) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_execute2'); + pointer(isc_embed_dsql_execute_immed) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_execute_immed'); + pointer(isc_embed_dsql_fetch) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_fetch'); + pointer(isc_embed_dsql_open) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_open'); + pointer(isc_embed_dsql_open2) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_open2'); + pointer(isc_embed_dsql_insert) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_insert'); + pointer(isc_embed_dsql_prepare) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_prepare'); + pointer(isc_embed_dsql_release) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_release'); + pointer(BLOB_open) := GetProcedureAddress(IBaseLibraryHandle,'BLOB_open'); + pointer(BLOB_put) := GetProcedureAddress(IBaseLibraryHandle,'BLOB_put'); + pointer(BLOB_close) := GetProcedureAddress(IBaseLibraryHandle,'BLOB_close'); + pointer(BLOB_get) := GetProcedureAddress(IBaseLibraryHandle,'BLOB_get'); + pointer(BLOB_display) := GetProcedureAddress(IBaseLibraryHandle,'BLOB_display'); + pointer(BLOB_dump) := GetProcedureAddress(IBaseLibraryHandle,'BLOB_dump'); + pointer(BLOB_edit) := GetProcedureAddress(IBaseLibraryHandle,'BLOB_edit'); + pointer(BLOB_load) := GetProcedureAddress(IBaseLibraryHandle,'BLOB_load'); + pointer(BLOB_text_dump) := GetProcedureAddress(IBaseLibraryHandle,'BLOB_text_dump'); + pointer(BLOB_text_load) := GetProcedureAddress(IBaseLibraryHandle,'BLOB_text_load'); + pointer(Bopen) := GetProcedureAddress(IBaseLibraryHandle,'Bopen'); +{$IFDEF Unix} + pointer(Bopen2) := GetProcedureAddress(IBaseLibraryHandle,'Bopen2'); +{$ENDIF} + pointer(isc_ftof) := GetProcedureAddress(IBaseLibraryHandle,'isc_ftof'); + pointer(isc_print_blr) := GetProcedureAddress(IBaseLibraryHandle,'isc_print_blr'); + pointer(isc_set_debug) := GetProcedureAddress(IBaseLibraryHandle,'isc_set_debug'); + pointer(isc_qtoq) := GetProcedureAddress(IBaseLibraryHandle,'isc_qtoq'); + pointer(isc_vtof) := GetProcedureAddress(IBaseLibraryHandle,'isc_vtof'); + pointer(isc_vtov) := GetProcedureAddress(IBaseLibraryHandle,'isc_vtov'); + pointer(isc_version) := GetProcedureAddress(IBaseLibraryHandle,'isc_version'); +{$IFDEF Unix} + pointer(isc_reset_fpe) := GetProcedureAddress(IBaseLibraryHandle,'isc_reset_fpe'); +{$ENDIF} + pointer(isc_service_attach) := GetProcedureAddress(IBaseLibraryHandle,'isc_service_attach'); + pointer(isc_service_detach) := GetProcedureAddress(IBaseLibraryHandle,'isc_service_detach'); + pointer(isc_service_query) := GetProcedureAddress(IBaseLibraryHandle,'isc_service_query'); + pointer(isc_service_start) := GetProcedureAddress(IBaseLibraryHandle,'isc_service_start'); +{$IFDEF Unix} + pointer(isc_compile_map) := GetProcedureAddress(IBaseLibraryHandle,'isc_compile_map'); + pointer(isc_compile_menu) := GetProcedureAddress(IBaseLibraryHandle,'isc_compile_menu'); + pointer(isc_compile_sub_map) := GetProcedureAddress(IBaseLibraryHandle,'isc_compile_sub_map'); + pointer(isc_create_window) := GetProcedureAddress(IBaseLibraryHandle,'isc_create_window'); + pointer(isc_delete_window) := GetProcedureAddress(IBaseLibraryHandle,'isc_delete_window'); + pointer(isc_drive_form) := GetProcedureAddress(IBaseLibraryHandle,'isc_drive_form'); + pointer(isc_drive_menu) := GetProcedureAddress(IBaseLibraryHandle,'isc_drive_menu'); + pointer(isc_form_delete) := GetProcedureAddress(IBaseLibraryHandle,'isc_form_delete'); + pointer(isc_form_fetch) := GetProcedureAddress(IBaseLibraryHandle,'isc_form_fetch'); + pointer(isc_form_insert) := GetProcedureAddress(IBaseLibraryHandle,'isc_form_insert'); + pointer(isc_get_entree) := GetProcedureAddress(IBaseLibraryHandle,'isc_get_entree'); + pointer(isc_initialize_menu) := GetProcedureAddress(IBaseLibraryHandle,'isc_initialize_menu'); + pointer(isc_menu) := GetProcedureAddress(IBaseLibraryHandle,'isc_menu'); + pointer(isc_load_form) := GetProcedureAddress(IBaseLibraryHandle,'isc_load_form'); + pointer(isc_pop_window) := GetProcedureAddress(IBaseLibraryHandle,'isc_pop_window'); + pointer(isc_put_entree) := GetProcedureAddress(IBaseLibraryHandle,'isc_put_entree'); + pointer(isc_reset_form) := GetProcedureAddress(IBaseLibraryHandle,'isc_reset_form'); + pointer(isc_suspend_window) := GetProcedureAddress(IBaseLibraryHandle,'isc_suspend_window'); +{$ENDIF} + end; +end; + +Procedure ReleaseIBase60; + +begin + if RefCount > 0 then dec(RefCount); + if RefCount = 0 then + begin + if not UnloadLibrary(IBaseLibraryHandle) then inc(RefCount); + end; +end; + +{$ENDIF} + +function XSQLDA_LENGTH(n: Integer): Integer; +begin + Result := SizeOf(XSQLDA) + (n - 1) * SizeOf(XSQLVAR); +end; + + diff --git a/packages/base/ibase/ibase60.pp b/packages/base/ibase/ibase60.pp index 503c2d30f0..5f2c64569a 100644 --- a/packages/base/ibase/ibase60.pp +++ b/packages/base/ibase/ibase60.pp @@ -3,639 +3,17 @@ } unit ibase60; -{$MODE objfpc} -{$MACRO on} - -interface - -{$IFDEF Unix} - {$LINKLIB c} - {$LINKLIB crypt} - {$DEFINE extdecl:=cdecl} - const - gdslib = 'gds'; -{$ENDIF} -{$IFDEF Win32} - {$DEFINE extdecl:=stdcall} - const - gdslib = 'gds32.dll'; -{$ENDIF} - -{$i ibase60types.inc} - - { } - { OSRI database functions } - { } - - function isc_attach_database(_para1:PISC_STATUS; _para2:smallint; _para3:Pchar; _para4:Pisc_db_handle; _para5:smallint; - _para6:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_array_gen_sdl(_para1:PISC_STATUS; _para2:PISC_ARRAY_DESC; _para3:Psmallint; _para4:Pchar; _para5:Psmallint):ISC_STATUS; extdecl; external gdslib; - - function isc_array_get_slice(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:PISC_QUAD; _para5:PISC_ARRAY_DESC; - _para6:pointer; _para7:PISC_LONG):ISC_STATUS; extdecl; external gdslib; - - function isc_array_lookup_bounds(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pchar; _para5:Pchar; - _para6:PISC_ARRAY_DESC):ISC_STATUS; extdecl; external gdslib; - - function isc_array_lookup_desc(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pchar; _para5:Pchar; - _para6:PISC_ARRAY_DESC):ISC_STATUS; extdecl; external gdslib; - - function isc_array_set_desc(_para1:PISC_STATUS; _para2:Pchar; _para3:Pchar; _para4:Psmallint; _para5:Psmallint; - _para6:Psmallint; _para7:PISC_ARRAY_DESC):ISC_STATUS; extdecl; external gdslib; - - function isc_array_put_slice(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:PISC_QUAD; _para5:PISC_ARRAY_DESC; - _para6:pointer; _para7:PISC_LONG):ISC_STATUS; extdecl; external gdslib; - - procedure isc_blob_default_desc(_para1:PISC_BLOB_DESC; _para2:Pbyte; _para3:Pbyte); extdecl; external gdslib; - - function isc_blob_gen_bpb(_para1:PISC_STATUS; _para2:PISC_BLOB_DESC; _para3:PISC_BLOB_DESC; _para4:word; _para5:Pbyte; - _para6:Pword):ISC_STATUS; extdecl; external gdslib; - - function isc_blob_info(_para1:PISC_STATUS; _para2:Pisc_blob_handle; _para3:smallint; _para4:Pchar; _para5:smallint; - _para6:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_blob_lookup_desc(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pbyte; _para5:Pbyte; - _para6:PISC_BLOB_DESC; _para7:Pbyte):ISC_STATUS; extdecl; external gdslib; - - function isc_blob_set_desc(_para1:PISC_STATUS; _para2:Pbyte; _para3:Pbyte; _para4:smallint; _para5:smallint; - _para6:smallint; _para7:PISC_BLOB_DESC):ISC_STATUS; extdecl; external gdslib; - - function isc_cancel_blob(_para1:PISC_STATUS; _para2:Pisc_blob_handle):ISC_STATUS; extdecl; external gdslib; - - function isc_cancel_events(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:PISC_LONG):ISC_STATUS; extdecl; external gdslib; - - function isc_close_blob(_para1:PISC_STATUS; _para2:Pisc_blob_handle):ISC_STATUS; extdecl; external gdslib; - - function isc_commit_retaining(_para1:PISC_STATUS; _para2:Pisc_tr_handle):ISC_STATUS; extdecl; external gdslib; - - function isc_commit_transaction(_para1:PISC_STATUS; _para2:Pisc_tr_handle):ISC_STATUS; extdecl; external gdslib; - - function isc_create_blob(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_blob_handle; _para5:PISC_QUAD):ISC_STATUS; extdecl; external gdslib; - - function isc_create_blob2(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_blob_handle; _para5:PISC_QUAD; - _para6:smallint; _para7:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_create_database(_para1:PISC_STATUS; _para2:smallint; _para3:Pchar; _para4:Pisc_db_handle; _para5:smallint; - _para6:Pchar; _para7:smallint):ISC_STATUS; extdecl; external gdslib; - - function isc_database_info(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:smallint; _para4:Pchar; _para5:smallint; - _para6:Pchar):ISC_STATUS; extdecl; external gdslib; - - procedure isc_decode_date(_para1:PISC_QUAD; _para2:pointer); extdecl; external gdslib; - - procedure isc_decode_sql_date(_para1:PISC_DATE; _para2:pointer); extdecl; external gdslib; - - procedure isc_decode_sql_time(_para1:PISC_TIME; _para2:pointer); extdecl; external gdslib; - - procedure isc_decode_timestamp(_para1:PISC_TIMESTAMP; _para2:pointer); extdecl; external gdslib; - - function isc_detach_database(_para1:PISC_STATUS; _para2:Pisc_db_handle):ISC_STATUS; extdecl; external gdslib; - - function isc_drop_database(_para1:PISC_STATUS; _para2:Pisc_db_handle):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_allocate_statement(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_stmt_handle):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_alloc_statement2(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_stmt_handle):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_describe(_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_describe_bind(_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_exec_immed2(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar; - _para6:word; _para7:PXSQLDA; _para8:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_execute(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_execute2(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:PXSQLDA; - _para6:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_execute_immediate(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar; - _para6:word; _para7:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_fetch(_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_finish(_para1:Pisc_db_handle):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_free_statement(_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_insert(_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_prepare(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:Pchar; - _para6:word; _para7:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_set_cursor_name(_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:Pchar; _para4:word):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_sql_info(_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:smallint; _para4:Pchar; _para5:smallint; - _para6:Pchar):ISC_STATUS; extdecl; external gdslib; - - procedure isc_encode_date(_para1:pointer; _para2:PISC_QUAD); extdecl; external gdslib; - - procedure isc_encode_sql_date(_para1:pointer; _para2:PISC_DATE); extdecl; external gdslib; - - procedure isc_encode_sql_time(_para1:pointer; _para2:PISC_TIME); extdecl; external gdslib; - - procedure isc_encode_timestamp(_para1:pointer; _para2:PISC_TIMESTAMP); extdecl; external gdslib; - - function isc_event_block(_para1:PPchar; _para2:PPchar; _para3:word; args:array of const):ISC_LONG; cdecl; external gdslib; - - {!!MVC - void isc_event_counts (unsigned ISC_LONG , - short, - char , - char ); extdecl; external gdslib; - !!MVC } - procedure isc_expand_dpb(_para1:PPchar; _para2:Psmallint; args:array of const); cdecl; external gdslib; - - function isc_modify_dpb(_para1:PPchar; _para2:Psmallint; _para3:word; _para4:Pchar; _para5:smallint):longint; extdecl; external gdslib; - - function isc_free(_para1:Pchar):ISC_LONG; extdecl; external gdslib; - - function isc_get_segment(_para1:PISC_STATUS; _para2:Pisc_blob_handle; _para3:Pword; _para4:word; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_get_slice(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:PISC_QUAD; _para5:smallint; - _para6:Pchar; _para7:smallint; _para8:PISC_LONG; _para9:ISC_LONG; _para10:pointer; - _para11:PISC_LONG):ISC_STATUS; extdecl; external gdslib; - - function isc_interprete(_para1:Pchar; _para2:PPISC_STATUS):ISC_STATUS; extdecl; external gdslib; - - function isc_open_blob(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_blob_handle; _para5:PISC_QUAD):ISC_STATUS; extdecl; external gdslib; - - function isc_open_blob2(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_blob_handle; _para5:PISC_QUAD; - _para6:smallint; _para7:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_prepare_transaction2(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:smallint; _para4:Pchar):ISC_STATUS; extdecl; external gdslib; - - procedure isc_print_sqlerror(_para1:smallint; _para2:PISC_STATUS); extdecl; external gdslib; - - function isc_print_status(_para1:PISC_STATUS):ISC_STATUS; extdecl; external gdslib; - - function isc_put_segment(_para1:PISC_STATUS; _para2:Pisc_blob_handle; _para3:word; _para4:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_put_slice(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:PISC_QUAD; _para5:smallint; - _para6:Pchar; _para7:smallint; _para8:PISC_LONG; _para9:ISC_LONG; _para10:pointer):ISC_STATUS; extdecl; external gdslib; - - function isc_que_events(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:PISC_LONG; _para4:smallint; _para5:Pchar; - _para6:isc_callback; _para7:pointer):ISC_STATUS; extdecl; external gdslib; - - function isc_rollback_retaining(_para1:PISC_STATUS; _para2:Pisc_tr_handle):ISC_STATUS; extdecl; external gdslib; - - function isc_rollback_transaction(_para1:PISC_STATUS; _para2:Pisc_tr_handle):ISC_STATUS; extdecl; external gdslib; - - function isc_start_multiple(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:smallint; _para4:pointer):ISC_STATUS; extdecl; external gdslib; - - function isc_start_transaction(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:smallint; args:array of const):ISC_STATUS; cdecl; external gdslib; - - function isc_sqlcode(_para1:PISC_STATUS):ISC_LONG; extdecl; external gdslib; - - procedure isc_sql_interprete(_para1:smallint; _para2:Pchar; _para3:smallint); extdecl; external gdslib; - - function isc_transaction_info(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:smallint; _para4:Pchar; _para5:smallint; - _para6:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_transact_request(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar; - _para6:word; _para7:Pchar; _para8:word; _para9:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_vax_integer(_para1:Pchar; _para2:smallint):ISC_LONG; extdecl; external gdslib; - - function isc_portable_integer(_para1:Pbyte; _para2:smallint):ISC_INT64; extdecl; external gdslib; - - { } - { Security Functions } - { } - - - function isc_add_user(_para1:PISC_STATUS; _para2:PUSER_SEC_DATA):longint; extdecl; external gdslib; - - function isc_delete_user(_para1:PISC_STATUS; _para2:PUSER_SEC_DATA):longint; extdecl; external gdslib; - - function isc_modify_user(_para1:PISC_STATUS; _para2:PUSER_SEC_DATA):longint; extdecl; external gdslib; - - { } - { Other OSRI functions } - { } - function isc_compile_request(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_req_handle; _para4:smallint; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_compile_request2(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_req_handle; _para4:smallint; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_ddl(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:smallint; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_prepare_transaction(_para1:PISC_STATUS; _para2:Pisc_tr_handle):ISC_STATUS; extdecl; external gdslib; - - function isc_receive(_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:smallint; _para4:smallint; _para5:pointer; - _para6:smallint):ISC_STATUS; extdecl; external gdslib; - - function isc_reconnect_transaction(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:smallint; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_release_request(_para1:PISC_STATUS; _para2:Pisc_req_handle):ISC_STATUS; extdecl; external gdslib; - - function isc_request_info(_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:smallint; _para4:smallint; _para5:Pchar; - _para6:smallint; _para7:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_seek_blob(_para1:PISC_STATUS; _para2:Pisc_blob_handle; _para3:smallint; _para4:ISC_LONG; _para5:PISC_LONG):ISC_STATUS; extdecl; external gdslib; - - function isc_send(_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:smallint; _para4:smallint; _para5:pointer; - _para6:smallint):ISC_STATUS; extdecl; external gdslib; - - function isc_start_and_send(_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:Pisc_tr_handle; _para4:smallint; _para5:smallint; - _para6:pointer; _para7:smallint):ISC_STATUS; extdecl; external gdslib; - - function isc_start_request(_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:Pisc_tr_handle; _para4:smallint):ISC_STATUS; extdecl; external gdslib; - - function isc_unwind_request(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:smallint):ISC_STATUS; extdecl; external gdslib; - - function isc_wait_for_event(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:smallint; _para4:Pchar; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; - - { } - { Other Sql functions } - { } - function isc_close(_para1:PISC_STATUS; _para2:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_declare(_para1:PISC_STATUS; _para2:Pchar; _para3:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_describe(_para1:PISC_STATUS; _para2:Pchar; _para3:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_describe_bind(_para1:PISC_STATUS; _para2:Pchar; _para3:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_execute(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_execute_immediate(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Psmallint; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_fetch(_para1:PISC_STATUS; _para2:Pchar; _para3:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_open(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_prepare(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pchar; _para5:Psmallint; - _para6:Pchar; _para7:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - { } - { Other Dynamic sql functions } - { } - function isc_dsql_execute_m(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:Pchar; - _para6:word; _para7:word; _para8:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_execute2_m(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:Pchar; - _para6:word; _para7:word; _para8:Pchar; _para9:word; _para10:Pchar; - _para11:word; _para12:word; _para13:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_execute_immediate_m(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar; - _para6:word; _para7:word; _para8:Pchar; _para9:word; _para10:word; - _para11:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_exec_immed3_m(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar; - _para6:word; _para7:word; _para8:Pchar; _para9:word; _para10:word; - _para11:Pchar; _para12:word; _para13:Pchar; _para14:word; _para15:word; - _para16:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_fetch_m(_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:Pchar; _para5:word; - _para6:word; _para7:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_insert_m(_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:Pchar; _para5:word; - _para6:word; _para7:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_prepare_m(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:Pchar; - _para6:word; _para7:word; _para8:Pchar; _para9:word; _para10:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_dsql_release(_para1:PISC_STATUS; _para2:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_embed_dsql_close(_para1:PISC_STATUS; _para2:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_embed_dsql_declare(_para1:PISC_STATUS; _para2:Pchar; _para3:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_embed_dsql_describe(_para1:PISC_STATUS; _para2:Pchar; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_embed_dsql_describe_bind(_para1:PISC_STATUS; _para2:Pchar; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_embed_dsql_execute(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:word; _para5:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_embed_dsql_execute2(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:word; _para5:PXSQLDA; - _para6:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_embed_dsql_execute_immed(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar; - _para6:word; _para7:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_embed_dsql_fetch(_para1:PISC_STATUS; _para2:Pchar; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_embed_dsql_open(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:word; _para5:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_embed_dsql_open2(_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:word; _para5:PXSQLDA; - _para6:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_embed_dsql_insert(_para1:PISC_STATUS; _para2:Pchar; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_embed_dsql_prepare(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pchar; _para5:word; - _para6:Pchar; _para7:word; _para8:PXSQLDA):ISC_STATUS; extdecl; external gdslib; - - function isc_embed_dsql_release(_para1:PISC_STATUS; _para2:Pchar):ISC_STATUS; extdecl; external gdslib; - - { } - { Other Blob functions } - { } - function BLOB_open(_para1:isc_blob_handle; _para2:Pchar; _para3:longint):PBSTREAM; extdecl; external gdslib; - - function BLOB_put(_para1:char; _para2:PBSTREAM):longint; extdecl; external gdslib; - - function BLOB_close(_para1:PBSTREAM):longint; extdecl; external gdslib; - - function BLOB_get(_para1:PBSTREAM):longint; extdecl; external gdslib; - - function BLOB_display(_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; external gdslib; - - function BLOB_dump(_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; external gdslib; - - function BLOB_edit(_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; external gdslib; - - function BLOB_load(_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; external gdslib; - - function BLOB_text_dump(_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; external gdslib; - - function BLOB_text_load(_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; external gdslib; - - function Bopen(_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):PBSTREAM; extdecl; external gdslib; - -{$IFDEF Unix} - function Bopen2(_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar; _para5:word):PBSTREAM; extdecl; external gdslib; -{$ENDIF} - - { } - { Other Misc functions } - { } - function isc_ftof(_para1:Pchar; _para2:word; _para3:Pchar; _para4:word):ISC_LONG; extdecl; external gdslib; - - function isc_print_blr(_para1:Pchar; _para2:isc_callback; _para3:pointer; _para4:smallint):ISC_STATUS; extdecl; external gdslib; - - procedure isc_set_debug(_para1:longint); extdecl; external gdslib; - - procedure isc_qtoq(_para1:PISC_QUAD; _para2:PISC_QUAD); extdecl; external gdslib; - - procedure isc_vtof(_para1:Pchar; _para2:Pchar; _para3:word); extdecl; external gdslib; - - procedure isc_vtov(_para1:Pchar; _para2:Pchar; _para3:smallint); extdecl; external gdslib; - - function isc_version(_para1:Pisc_db_handle; _para2:isc_callback; _para3:pointer):longint; extdecl; external gdslib; - -{$IFDEF Unix} - function isc_reset_fpe(_para1:word):ISC_LONG; extdecl; external gdslib; -{$ENDIF} - - { } - { Service manager functions } - { } - (*!!MVC - #define ADD_SPB_LENGTH(p, length) { (p)++ = (length); \ - (p)++ = (length) >> 8;} - - #define ADD_SPB_NUMERIC(p, data) { (p)++ = (data); \ - (p)++ = (data) >> 8; \ - (p)++ = (data) >> 16; \ - (p)++ = (data) >> 24;} - !!MVC *) - - function isc_service_attach(_para1:PISC_STATUS; _para2:word; _para3:Pchar; _para4:Pisc_svc_handle; _para5:word; - _para6:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_service_detach(_para1:PISC_STATUS; _para2:Pisc_svc_handle):ISC_STATUS; extdecl; external gdslib; - - function isc_service_query(_para1:PISC_STATUS; _para2:Pisc_svc_handle; _para3:Pisc_resv_handle; _para4:word; _para5:Pchar; - _para6:word; _para7:Pchar; _para8:word; _para9:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_service_start(_para1:PISC_STATUS; _para2:Pisc_svc_handle; _para3:Pisc_resv_handle; _para4:word; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; - - { } - { Forms functions } - { } -{$IFDEF Unix} - function isc_compile_map(_para1:PISC_STATUS; _para2:Pisc_form_handle; _para3:Pisc_req_handle; _para4:Psmallint; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_compile_menu(_para1:PISC_STATUS; _para2:Pisc_form_handle; _para3:Pisc_req_handle; _para4:Psmallint; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_compile_sub_map(_para1:PISC_STATUS; _para2:Pisc_win_handle; _para3:Pisc_req_handle; _para4:Psmallint; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_create_window(_para1:PISC_STATUS; _para2:Pisc_win_handle; _para3:Psmallint; _para4:Pchar; _para5:Psmallint; - _para6:Psmallint):ISC_STATUS; extdecl; external gdslib; - - function isc_delete_window(_para1:PISC_STATUS; _para2:Pisc_win_handle):ISC_STATUS; extdecl; external gdslib; - - function isc_drive_form(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_win_handle; _para5:Pisc_req_handle; - _para6:Pbyte; _para7:Pbyte):ISC_STATUS; extdecl; external gdslib; - - function isc_drive_menu(_para1:PISC_STATUS; _para2:Pisc_win_handle; _para3:Pisc_req_handle; _para4:Psmallint; _para5:Pchar; - _para6:Psmallint; _para7:Pchar; _para8:Psmallint; _para9:Psmallint; _para10:Pchar; - _para11:PISC_LONG):ISC_STATUS; extdecl; external gdslib; - - function isc_form_delete(_para1:PISC_STATUS; _para2:Pisc_form_handle):ISC_STATUS; extdecl; external gdslib; - - function isc_form_fetch(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_req_handle; _para5:Pbyte):ISC_STATUS; extdecl; external gdslib; - - function isc_form_insert(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_req_handle; _para5:Pbyte):ISC_STATUS; extdecl; external gdslib; - - function isc_get_entree(_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:Psmallint; _para4:Pchar; _para5:PISC_LONG; - _para6:Psmallint):ISC_STATUS; extdecl; external gdslib; - - function isc_initialize_menu(_para1:PISC_STATUS; _para2:Pisc_req_handle):ISC_STATUS; extdecl; external gdslib; - - function isc_menu(_para1:PISC_STATUS; _para2:Pisc_win_handle; _para3:Pisc_req_handle; _para4:Psmallint; _para5:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_load_form(_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_form_handle; _para5:Psmallint; - _para6:Pchar):ISC_STATUS; extdecl; external gdslib; - - function isc_pop_window(_para1:PISC_STATUS; _para2:Pisc_win_handle):ISC_STATUS; extdecl; external gdslib; - - function isc_put_entree(_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:Psmallint; _para4:Pchar; _para5:PISC_LONG):ISC_STATUS; extdecl; external gdslib; - - function isc_reset_form(_para1:PISC_STATUS; _para2:Pisc_req_handle):ISC_STATUS; extdecl; external gdslib; - - function isc_suspend_window(_para1:PISC_STATUS; _para2:Pisc_win_handle):ISC_STATUS; extdecl; external gdslib; -{$ENDIF} - - function isc_attach_database:ISC_STATUS; extdecl; external gdslib; - - function isc_array_gen_sdl:ISC_STATUS; extdecl; external gdslib; - - function isc_array_get_slice:ISC_STATUS; extdecl; external gdslib; - - function isc_array_lookup_bounds:ISC_STATUS; extdecl; external gdslib; - - function isc_array_lookup_desc:ISC_STATUS; extdecl; external gdslib; - - function isc_array_set_desc:ISC_STATUS; extdecl; external gdslib; - - function isc_array_put_slice:ISC_STATUS; extdecl; external gdslib; - - function isc_blob_gen_bpb:ISC_STATUS; extdecl; external gdslib; - - function isc_blob_info:ISC_STATUS; extdecl; external gdslib; - - function isc_blob_lookup_desc:ISC_STATUS; extdecl; external gdslib; - - function isc_blob_set_desc:ISC_STATUS; extdecl; external gdslib; - - function isc_cancel_blob:ISC_STATUS; extdecl; external gdslib; - - function isc_cancel_events:ISC_STATUS; extdecl; external gdslib; - - function isc_close_blob:ISC_STATUS; extdecl; external gdslib; - - function isc_commit_retaining:ISC_STATUS; extdecl; external gdslib; - - function isc_commit_transaction:ISC_STATUS; extdecl; external gdslib; - - function isc_compile_request:ISC_STATUS; extdecl; external gdslib; - - function isc_compile_request2:ISC_STATUS; extdecl; external gdslib; - - function isc_create_blob:ISC_STATUS; extdecl; external gdslib; - - function isc_create_blob2:ISC_STATUS; extdecl; external gdslib; - - function isc_create_database:ISC_STATUS; extdecl; external gdslib; - - function isc_database_info:ISC_STATUS; extdecl; external gdslib; - - function isc_ddl:ISC_STATUS; extdecl; external gdslib; - - procedure isc_decode_date; extdecl; external gdslib; - - procedure isc_decode_sql_date; extdecl; external gdslib; - - procedure isc_decode_sql_time; extdecl; external gdslib; - - procedure isc_decode_timestamp; extdecl; external gdslib; - - function isc_detach_database:ISC_STATUS; extdecl; external gdslib; - - function isc_drop_database:ISC_STATUS; extdecl; external gdslib; - - procedure isc_encode_date; extdecl; external gdslib; - - procedure isc_encode_sql_date; extdecl; external gdslib; - - procedure isc_encode_sql_time; extdecl; external gdslib; - - procedure isc_encode_timestamp; extdecl; external gdslib; - - function isc_event_block:ISC_LONG; cdecl; external gdslib; - - procedure isc_event_counts; extdecl; external gdslib; - - procedure isc_expand_dpb; cdecl; external gdslib; - - function isc_modify_dpb:longint; extdecl; external gdslib; - - function isc_free:ISC_LONG; extdecl; external gdslib; - - function isc_get_segment:ISC_STATUS; extdecl; external gdslib; - - function isc_get_slice:ISC_STATUS; extdecl; external gdslib; - - function isc_interprete:ISC_STATUS; extdecl; external gdslib; - - function isc_open_blob:ISC_STATUS; extdecl; external gdslib; - - function isc_open_blob2:ISC_STATUS; extdecl; external gdslib; - - function isc_prepare_transaction:ISC_STATUS; extdecl; external gdslib; - - function isc_prepare_transaction2:ISC_STATUS; extdecl; external gdslib; - - procedure isc_print_sqlerror; extdecl; external gdslib; - - function isc_print_status:ISC_STATUS; extdecl; external gdslib; - - function isc_put_segment:ISC_STATUS; extdecl; external gdslib; - - function isc_put_slice:ISC_STATUS; extdecl; external gdslib; - - function isc_que_events:ISC_STATUS; extdecl; external gdslib; - - function isc_receive:ISC_STATUS; extdecl; external gdslib; - - function isc_reconnect_transaction:ISC_STATUS; extdecl; external gdslib; - - function isc_release_request:ISC_STATUS; extdecl; external gdslib; - - function isc_request_info:ISC_STATUS; extdecl; external gdslib; - -{$IFDEF Unix} - function isc_reset_fpe:ISC_LONG; extdecl; external gdslib; -{$ENDIF} - - function isc_rollback_transaction:ISC_STATUS; extdecl; external gdslib; - - function isc_rollback_retaining:ISC_STATUS; extdecl; external gdslib; - - function isc_seek_blob:ISC_STATUS; extdecl; external gdslib; - - function isc_send:ISC_STATUS; extdecl; external gdslib; - - function isc_service_attach:ISC_STATUS; extdecl; external gdslib; - - function isc_service_detach:ISC_STATUS; extdecl; external gdslib; - - function isc_service_query:ISC_STATUS; extdecl; external gdslib; - - function isc_service_start:ISC_STATUS; extdecl; external gdslib; - - function isc_start_and_send:ISC_STATUS; extdecl; external gdslib; - - function isc_start_multiple:ISC_STATUS; extdecl; external gdslib; - - function isc_start_request:ISC_STATUS; extdecl; external gdslib; - - function isc_start_transaction:ISC_STATUS; cdecl; external gdslib; - - function isc_sqlcode:ISC_LONG; extdecl; external gdslib; - - function isc_transaction_info:ISC_STATUS; extdecl; external gdslib; - - function isc_transact_request:ISC_STATUS; extdecl; external gdslib; - - function isc_unwind_request:ISC_STATUS; extdecl; external gdslib; - - function isc_wait_for_event:ISC_STATUS; extdecl; external gdslib; - - function isc_ftof:ISC_LONG; extdecl; external gdslib; - - function isc_print_blr:ISC_STATUS; extdecl; external gdslib; - - procedure isc_set_debug; extdecl; external gdslib; - - procedure isc_qtoq; extdecl; external gdslib; - - function isc_vax_integer:ISC_LONG; extdecl; external gdslib; - - procedure isc_vtof; extdecl; external gdslib; - - procedure isc_vtov; extdecl; external gdslib; - - function isc_version:longint; extdecl; external gdslib; - - { } - { Blob functions } - { } - - function Bopen:PBSTREAM; extdecl; external gdslib; - - function BLOB_open:PBSTREAM; extdecl; external gdslib; - -{$IFDEF Unix} - function Bopen2:PBSTREAM; extdecl; external gdslib; -{$ENDIF} - - implementation - -// This function is also defined in ibase60dyn! - -function XSQLDA_LENGTH(n: Integer): Integer; -begin - Result := SizeOf(XSQLDA) + (n - 1) * SizeOf(XSQLVAR); -end; +{$UNDEF LinkDynamically} +{$i ibase60.inc} end. { $Log$ - Revision 1.6 2005-02-14 17:13:19 peter + Revision 1.7 2005-04-24 19:55:55 joost + - Placed dyn. loaded and stat. loaded headers in one file + + Revision 1.6 2005/02/14 17:13:19 peter * truncate log Revision 1.5 2005/02/04 18:14:22 joost diff --git a/packages/base/ibase/ibase60dyn.pp b/packages/base/ibase/ibase60dyn.pp index 45b910ce0b..b67c9eb88b 100644 --- a/packages/base/ibase/ibase60dyn.pp +++ b/packages/base/ibase/ibase60dyn.pp @@ -1,4 +1,7 @@ { + $Id$ + + Contains the Interbase/Firebird-functions calls In this stage only the calls needed for IBConnection are implemented Other calls could be simply implemented, using copy-paste from ibase60 @@ -9,452 +12,9 @@ unit ibase60dyn; -{$mode objfpc}{$H+} -{$MACRO on} +{$DEFINE LinkDynamically} -interface - -uses - dynlibs,sysutils; - -{$IFDEF Unix} - {$LINKLIB c} - {$LINKLIB crypt} - {$DEFINE extdecl:=cdecl} - const - gdslib = 'libgds.so'; - fbclib = 'libfbclient.so'; -{$ENDIF} -{$IFDEF Win32} - {$DEFINE extdecl:=stdcall} - const - gdslib = 'gds32.dll'; - fbclib = 'fbclient.dll'; -{$ENDIF} - -{$i ibase60types.inc} - -var - -{ } -{ OSRI database functions } -{ } - isc_attach_database : function (_para1:PISC_STATUS; _para2:smallint; _para3:Pchar; _para4:Pisc_db_handle; _para5:smallint;_para6:Pchar):ISC_STATUS; extdecl; - isc_array_gen_sdl : function (_para1:PISC_STATUS; _para2:PISC_ARRAY_DESC; _para3:Psmallint; _para4:Pchar; _para5:Psmallint):ISC_STATUS; extdecl; - isc_array_get_slice : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:PISC_QUAD; _para5:PISC_ARRAY_DESC;_para6:pointer; _para7:PISC_LONG):ISC_STATUS; extdecl; - isc_array_lookup_bounds : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pchar; _para5:Pchar;_para6:PISC_ARRAY_DESC):ISC_STATUS; extdecl; - isc_array_lookup_desc : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pchar; _para5:Pchar;_para6:PISC_ARRAY_DESC):ISC_STATUS; extdecl; - isc_array_set_desc : function (_para1:PISC_STATUS; _para2:Pchar; _para3:Pchar; _para4:Psmallint; _para5:Psmallint;_para6:Psmallint; _para7:PISC_ARRAY_DESC):ISC_STATUS; extdecl; - isc_array_put_slice : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:PISC_QUAD; _para5:PISC_ARRAY_DESC;_para6:pointer; _para7:PISC_LONG):ISC_STATUS; extdecl; - isc_blob_default_desc : procedure (_para1:PISC_BLOB_DESC; _para2:Pbyte; _para3:Pbyte); extdecl; - isc_blob_gen_bpb : function (_para1:PISC_STATUS; _para2:PISC_BLOB_DESC; _para3:PISC_BLOB_DESC; _para4:word; _para5:Pbyte;_para6:Pword):ISC_STATUS; extdecl; - isc_blob_info : function (_para1:PISC_STATUS; _para2:Pisc_blob_handle; _para3:smallint; _para4:Pchar; _para5:smallint;_para6:Pchar):ISC_STATUS; extdecl; - isc_blob_lookup_desc : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pbyte; _para5:Pbyte;_para6:PISC_BLOB_DESC; _para7:Pbyte):ISC_STATUS; extdecl; - isc_blob_set_desc : function (_para1:PISC_STATUS; _para2:Pbyte; _para3:Pbyte; _para4:smallint; _para5:smallint;_para6:smallint; _para7:PISC_BLOB_DESC):ISC_STATUS; extdecl; - isc_cancel_blob : function (_para1:PISC_STATUS; _para2:Pisc_blob_handle):ISC_STATUS; extdecl; - isc_cancel_events : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:PISC_LONG):ISC_STATUS; extdecl; - isc_close_blob : function (_para1:PISC_STATUS; _para2:Pisc_blob_handle):ISC_STATUS; extdecl; - isc_commit_retaining : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle):ISC_STATUS; extdecl; - isc_commit_transaction : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle):ISC_STATUS; extdecl; - isc_create_blob : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_blob_handle; _para5:PISC_QUAD):ISC_STATUS; extdecl; - isc_create_blob2 : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_blob_handle; _para5:PISC_QUAD;_para6:smallint; _para7:Pchar):ISC_STATUS; extdecl; - isc_create_database : function (_para1:PISC_STATUS; _para2:smallint; _para3:Pchar; _para4:Pisc_db_handle; _para5:smallint;_para6:Pchar; _para7:smallint):ISC_STATUS; extdecl; - isc_database_info : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:smallint; _para4:Pchar; _para5:smallint;_para6:Pchar):ISC_STATUS; extdecl; - isc_decode_date : procedure (_para1:PISC_QUAD; _para2:pointer); extdecl; - isc_decode_sql_date : procedure (_para1:PISC_DATE; _para2:pointer); extdecl; - isc_decode_sql_time : procedure (_para1:PISC_TIME; _para2:pointer); extdecl; - isc_decode_timestamp : procedure (_para1:PISC_TIMESTAMP; _para2:pointer); extdecl; - isc_detach_database : function (_para1:PISC_STATUS; _para2:Pisc_db_handle):ISC_STATUS; extdecl; - isc_drop_database : function (_para1:PISC_STATUS; _para2:Pisc_db_handle):ISC_STATUS; extdecl; - isc_dsql_allocate_statement : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_stmt_handle):ISC_STATUS; extdecl; - isc_dsql_alloc_statement2 : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_stmt_handle):ISC_STATUS; extdecl; - isc_dsql_describe : function (_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; - isc_dsql_describe_bind : function (_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; - isc_dsql_exec_immed2 : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar;_para6:word; _para7:PXSQLDA; _para8:PXSQLDA):ISC_STATUS; extdecl; - isc_dsql_execute : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:PXSQLDA):ISC_STATUS; extdecl; - isc_dsql_execute2 : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:PXSQLDA;_para6:PXSQLDA):ISC_STATUS; extdecl; - isc_dsql_execute_immediate : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar;_para6:word; _para7:PXSQLDA):ISC_STATUS; extdecl; - isc_dsql_fetch : function (_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; - isc_dsql_finish : function (_para1:Pisc_db_handle):ISC_STATUS; extdecl; - isc_dsql_free_statement : function (_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word):ISC_STATUS; extdecl; - isc_dsql_insert : function (_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; - isc_dsql_prepare : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:Pchar;_para6:word; _para7:PXSQLDA):ISC_STATUS; extdecl; - isc_dsql_set_cursor_name : function (_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:Pchar; _para4:word):ISC_STATUS; extdecl; - isc_dsql_sql_info : function (_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:smallint; _para4:Pchar; _para5:smallint;_para6:Pchar):ISC_STATUS; extdecl; - isc_encode_date : procedure (_para1:pointer; _para2:PISC_QUAD); extdecl; - isc_encode_sql_date : procedure (_para1:pointer; _para2:PISC_DATE); extdecl; - isc_encode_sql_time : procedure (_para1:pointer; _para2:PISC_TIME); extdecl; - isc_encode_timestamp : procedure (_para1:pointer; _para2:PISC_TIMESTAMP); extdecl; - isc_event_block : function (_para1:PPchar; _para2:PPchar; _para3:word; args:array of const):ISC_LONG; cdecl; -{!!MVC - void isc_event_counts (unsigned ISC_LONG , - short, - char , - char ); extdecl; external gdslib; -!!MVC } - isc_expand_dpb : procedure (_para1:PPchar; _para2:Psmallint; args:array of const); cdecl; - isc_modify_dpb : function (_para1:PPchar; _para2:Psmallint; _para3:word; _para4:Pchar; _para5:smallint):longint; extdecl; - isc_free : function (_para1:Pchar):ISC_LONG; extdecl; - isc_get_segment : function (_para1:PISC_STATUS; _para2:Pisc_blob_handle; _para3:Pword; _para4:word; _para5:Pchar):ISC_STATUS; extdecl; - isc_get_slice : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:PISC_QUAD; _para5:smallint;_para6:Pchar; _para7:smallint; _para8:PISC_LONG; _para9:ISC_LONG; _para10:pointer;_para11:PISC_LONG):ISC_STATUS; extdecl; - isc_interprete : function (_para1:Pchar; _para2:PPISC_STATUS):ISC_STATUS; extdecl; - isc_open_blob : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_blob_handle; _para5:PISC_QUAD):ISC_STATUS; extdecl; - isc_open_blob2 : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_blob_handle; _para5:PISC_QUAD;_para6:smallint; _para7:Pchar):ISC_STATUS; extdecl; - isc_prepare_transaction2 : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:smallint; _para4:Pchar):ISC_STATUS; extdecl; - isc_print_sqlerror : procedure (_para1:smallint; _para2:PISC_STATUS); extdecl; - isc_print_status : function (_para1:PISC_STATUS):ISC_STATUS; extdecl; - isc_put_segment : function (_para1:PISC_STATUS; _para2:Pisc_blob_handle; _para3:word; _para4:Pchar):ISC_STATUS; extdecl; - isc_put_slice : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:PISC_QUAD; _para5:smallint;_para6:Pchar; _para7:smallint; _para8:PISC_LONG; _para9:ISC_LONG; _para10:pointer):ISC_STATUS; extdecl; - isc_que_events : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:PISC_LONG; _para4:smallint; _para5:Pchar;_para6:isc_callback; _para7:pointer):ISC_STATUS; extdecl; - isc_rollback_retaining : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle):ISC_STATUS; extdecl; - isc_rollback_transaction : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle):ISC_STATUS; extdecl; - isc_start_multiple : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:smallint; _para4:pointer):ISC_STATUS; extdecl; - isc_start_transaction : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:smallint; args:array of const):ISC_STATUS; cdecl; - isc_sqlcode : function (_para1:PISC_STATUS):ISC_LONG; extdecl; - isc_sql_interprete : procedure (_para1:smallint; _para2:Pchar; _para3:smallint); extdecl; - isc_transaction_info : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:smallint; _para4:Pchar; _para5:smallint;_para6:Pchar):ISC_STATUS; extdecl; - isc_transact_request : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar;_para6:word; _para7:Pchar; _para8:word; _para9:Pchar):ISC_STATUS; extdecl; - isc_vax_integer : function (_para1:Pchar; _para2:smallint):ISC_LONG; extdecl; - isc_portable_integer : function (_para1:Pbyte; _para2:smallint):ISC_INT64; extdecl; -{ } -{ Security Functions } -{ } - isc_add_user : function (_para1:PISC_STATUS; _para2:PUSER_SEC_DATA):longint; extdecl; - isc_delete_user : function (_para1:PISC_STATUS; _para2:PUSER_SEC_DATA):longint; extdecl; - isc_modify_user : function (_para1:PISC_STATUS; _para2:PUSER_SEC_DATA):longint; extdecl; -{ } -{ Other OSRI functions } -{ } - isc_compile_request : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_req_handle; _para4:smallint; _para5:Pchar):ISC_STATUS; extdecl; - isc_compile_request2 : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_req_handle; _para4:smallint; _para5:Pchar):ISC_STATUS; extdecl; - isc_ddl : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:smallint; _para5:Pchar):ISC_STATUS; extdecl; - isc_prepare_transaction : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle):ISC_STATUS; extdecl; - isc_receive : function (_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:smallint; _para4:smallint; _para5:pointer;_para6:smallint):ISC_STATUS; extdecl; - isc_reconnect_transaction : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:smallint; _para5:Pchar):ISC_STATUS; extdecl; - isc_release_request : function (_para1:PISC_STATUS; _para2:Pisc_req_handle):ISC_STATUS; extdecl; - isc_request_info : function (_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:smallint; _para4:smallint; _para5:Pchar;_para6:smallint; _para7:Pchar):ISC_STATUS; extdecl; - isc_seek_blob : function (_para1:PISC_STATUS; _para2:Pisc_blob_handle; _para3:smallint; _para4:ISC_LONG; _para5:PISC_LONG):ISC_STATUS; extdecl; - isc_send : function (_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:smallint; _para4:smallint; _para5:pointer;_para6:smallint):ISC_STATUS; extdecl; - isc_start_and_send : function (_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:Pisc_tr_handle; _para4:smallint; _para5:smallint;_para6:pointer; _para7:smallint):ISC_STATUS; extdecl; - isc_start_request : function (_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:Pisc_tr_handle; _para4:smallint):ISC_STATUS; extdecl; - isc_unwind_request : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:smallint):ISC_STATUS; extdecl; - isc_wait_for_event : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:smallint; _para4:Pchar; _para5:Pchar):ISC_STATUS; extdecl; -{ } -{ Other Sql functions } -{ } - isc_close : function (_para1:PISC_STATUS; _para2:Pchar):ISC_STATUS; extdecl; - isc_declare : function (_para1:PISC_STATUS; _para2:Pchar; _para3:Pchar):ISC_STATUS; extdecl; - isc_describe : function (_para1:PISC_STATUS; _para2:Pchar; _para3:PXSQLDA):ISC_STATUS; extdecl; - isc_describe_bind : function (_para1:PISC_STATUS; _para2:Pchar; _para3:PXSQLDA):ISC_STATUS; extdecl; - isc_execute : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:PXSQLDA):ISC_STATUS; extdecl; - isc_execute_immediate : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Psmallint; _para5:Pchar):ISC_STATUS; extdecl; - isc_fetch : function (_para1:PISC_STATUS; _para2:Pchar; _para3:PXSQLDA):ISC_STATUS; extdecl; - isc_open : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:PXSQLDA):ISC_STATUS; extdecl; - isc_prepare : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pchar; _para5:Psmallint;_para6:Pchar; _para7:PXSQLDA):ISC_STATUS; extdecl; -{ } -{ Other Dynamic sql functions } -{ } - isc_dsql_execute_m : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:Pchar;_para6:word; _para7:word; _para8:Pchar):ISC_STATUS; extdecl; - isc_dsql_execute2_m : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:Pchar;_para6:word; _para7:word; _para8:Pchar; _para9:word; _para10:Pchar;_para11:word; _para12:word; _para13:Pchar):ISC_STATUS; extdecl; - isc_dsql_execute_immediate_m : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar;_para6:word; _para7:word; _para8:Pchar; _para9:word; _para10:word;_para11:Pchar):ISC_STATUS; extdecl; - isc_dsql_exec_immed3_m : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar;_para6:word; _para7:word; _para8:Pchar; _para9:word; _para10:word;_para11:Pchar; _para12:word; _para13:Pchar; _para14:word; _para15:word;_para16:Pchar):ISC_STATUS; extdecl; - isc_dsql_fetch_m : function (_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:Pchar; _para5:word;_para6:word; _para7:Pchar):ISC_STATUS; extdecl; - isc_dsql_insert_m : function (_para1:PISC_STATUS; _para2:Pisc_stmt_handle; _para3:word; _para4:Pchar; _para5:word;_para6:word; _para7:Pchar):ISC_STATUS; extdecl; - isc_dsql_prepare_m : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pisc_stmt_handle; _para4:word; _para5:Pchar;_para6:word; _para7:word; _para8:Pchar; _para9:word; _para10:Pchar):ISC_STATUS; extdecl; - isc_dsql_release : function (_para1:PISC_STATUS; _para2:Pchar):ISC_STATUS; extdecl; - isc_embed_dsql_close : function (_para1:PISC_STATUS; _para2:Pchar):ISC_STATUS; extdecl; - isc_embed_dsql_declare : function (_para1:PISC_STATUS; _para2:Pchar; _para3:Pchar):ISC_STATUS; extdecl; - isc_embed_dsql_describe : function (_para1:PISC_STATUS; _para2:Pchar; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; - isc_embed_dsql_describe_bind : function (_para1:PISC_STATUS; _para2:Pchar; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; - isc_embed_dsql_execute : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:word; _para5:PXSQLDA):ISC_STATUS; extdecl; - isc_embed_dsql_execute2 : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:word; _para5:PXSQLDA;_para6:PXSQLDA):ISC_STATUS; extdecl; - isc_embed_dsql_execute_immed : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:word; _para5:Pchar;_para6:word; _para7:PXSQLDA):ISC_STATUS; extdecl; - isc_embed_dsql_fetch : function (_para1:PISC_STATUS; _para2:Pchar; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; - isc_embed_dsql_open : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:word; _para5:PXSQLDA):ISC_STATUS; extdecl; - isc_embed_dsql_open2 : function (_para1:PISC_STATUS; _para2:Pisc_tr_handle; _para3:Pchar; _para4:word; _para5:PXSQLDA;_para6:PXSQLDA):ISC_STATUS; extdecl; - isc_embed_dsql_insert : function (_para1:PISC_STATUS; _para2:Pchar; _para3:word; _para4:PXSQLDA):ISC_STATUS; extdecl; - isc_embed_dsql_prepare : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pchar; _para5:word;_para6:Pchar; _para7:word; _para8:PXSQLDA):ISC_STATUS; extdecl; - isc_embed_dsql_release : function (_para1:PISC_STATUS; _para2:Pchar):ISC_STATUS; extdecl; -{ } -{ Other Blob functions } -{ } - BLOB_open : function (_para1:isc_blob_handle; _para2:Pchar; _para3:longint):PBSTREAM; extdecl; - BLOB_put : function (_para1:char; _para2:PBSTREAM):longint; extdecl; - BLOB_close : function (_para1:PBSTREAM):longint; extdecl; - BLOB_get : function (_para1:PBSTREAM):longint; extdecl; - BLOB_display : function (_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; - BLOB_dump : function (_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; - BLOB_edit : function (_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; - BLOB_load : function (_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; - BLOB_text_dump : function (_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; - BLOB_text_load : function (_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):longint; extdecl; - Bopen : function (_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar):PBSTREAM; extdecl; -{$IFDEF Unix} - Bopen2 : function (_para1:PISC_QUAD; _para2:isc_db_handle; _para3:isc_tr_handle; _para4:Pchar; _para5:word):PBSTREAM; extdecl; -{$ENDIF} -{ } -{ Other Misc functions } -{ } - isc_ftof : function (_para1:Pchar; _para2:word; _para3:Pchar; _para4:word):ISC_LONG; extdecl; - isc_print_blr : function (_para1:Pchar; _para2:isc_callback; _para3:pointer; _para4:smallint):ISC_STATUS; extdecl; - isc_set_debug : procedure (_para1:longint); extdecl; - isc_qtoq : procedure (_para1:PISC_QUAD; _para2:PISC_QUAD); extdecl; - isc_vtof : procedure (_para1:Pchar; _para2:Pchar; _para3:word); extdecl; - isc_vtov : procedure (_para1:Pchar; _para2:Pchar; _para3:smallint); extdecl; - isc_version : function (_para1:Pisc_db_handle; _para2:isc_callback; _para3:pointer):longint; extdecl; -{$IFDEF Unix} - isc_reset_fpe : function (_para1:word):ISC_LONG; extdecl; -{$ENDIF} -{ } -{ Service manager functions } -{ } -(*!!MVC - #define ADD_SPB_LENGTH(p, length) { (p)++ = (length); \ - (p)++ = (length) >> 8;} - -#define ADD_SPB_NUMERIC(p, data) { (p)++ = (data); \ - (p)++ = (data) >> 8; \ - (p)++ = (data) >> 16; \ - (p)++ = (data) >> 24;} -!!MVC *) - isc_service_attach : function (_para1:PISC_STATUS; _para2:word; _para3:Pchar; _para4:Pisc_svc_handle; _para5:word;_para6:Pchar):ISC_STATUS; extdecl; - isc_service_detach : function (_para1:PISC_STATUS; _para2:Pisc_svc_handle):ISC_STATUS; extdecl; - isc_service_query : function (_para1:PISC_STATUS; _para2:Pisc_svc_handle; _para3:Pisc_resv_handle; _para4:word; _para5:Pchar;_para6:word; _para7:Pchar; _para8:word; _para9:Pchar):ISC_STATUS; extdecl; - isc_service_start : function (_para1:PISC_STATUS; _para2:Pisc_svc_handle; _para3:Pisc_resv_handle; _para4:word; _para5:Pchar):ISC_STATUS; extdecl; -{ } -{ Forms functions } -{ } -{$IFDEF Unix} - isc_compile_map : function (_para1:PISC_STATUS; _para2:Pisc_form_handle; _para3:Pisc_req_handle; _para4:Psmallint; _para5:Pchar):ISC_STATUS; extdecl; - isc_compile_menu : function (_para1:PISC_STATUS; _para2:Pisc_form_handle; _para3:Pisc_req_handle; _para4:Psmallint; _para5:Pchar):ISC_STATUS; extdecl; - isc_compile_sub_map : function (_para1:PISC_STATUS; _para2:Pisc_win_handle; _para3:Pisc_req_handle; _para4:Psmallint; _para5:Pchar):ISC_STATUS; extdecl; - isc_create_window : function (_para1:PISC_STATUS; _para2:Pisc_win_handle; _para3:Psmallint; _para4:Pchar; _para5:Psmallint;_para6:Psmallint):ISC_STATUS; extdecl; - isc_delete_window : function (_para1:PISC_STATUS; _para2:Pisc_win_handle):ISC_STATUS; extdecl; - isc_drive_form : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_win_handle; _para5:Pisc_req_handle;_para6:Pbyte; _para7:Pbyte):ISC_STATUS; extdecl; - isc_drive_menu : function (_para1:PISC_STATUS; _para2:Pisc_win_handle; _para3:Pisc_req_handle; _para4:Psmallint; _para5:Pchar;_para6:Psmallint; _para7:Pchar; _para8:Psmallint; _para9:Psmallint; _para10:Pchar;_para11:PISC_LONG):ISC_STATUS; extdecl; - isc_form_delete : function (_para1:PISC_STATUS; _para2:Pisc_form_handle):ISC_STATUS; extdecl; - isc_form_fetch : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_req_handle; _para5:Pbyte):ISC_STATUS; extdecl; - isc_form_insert : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_req_handle; _para5:Pbyte):ISC_STATUS; extdecl; - isc_get_entree : function (_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:Psmallint; _para4:Pchar; _para5:PISC_LONG;_para6:Psmallint):ISC_STATUS; extdecl; - isc_initialize_menu : function (_para1:PISC_STATUS; _para2:Pisc_req_handle):ISC_STATUS; extdecl; - isc_menu : function (_para1:PISC_STATUS; _para2:Pisc_win_handle; _para3:Pisc_req_handle; _para4:Psmallint; _para5:Pchar):ISC_STATUS; extdecl; - isc_load_form : function (_para1:PISC_STATUS; _para2:Pisc_db_handle; _para3:Pisc_tr_handle; _para4:Pisc_form_handle; _para5:Psmallint;_para6:Pchar):ISC_STATUS; extdecl; - isc_pop_window : function (_para1:PISC_STATUS; _para2:Pisc_win_handle):ISC_STATUS; extdecl; - isc_put_entree : function (_para1:PISC_STATUS; _para2:Pisc_req_handle; _para3:Psmallint; _para4:Pchar; _para5:PISC_LONG):ISC_STATUS; extdecl; - isc_reset_form : function (_para1:PISC_STATUS; _para2:Pisc_req_handle):ISC_STATUS; extdecl; - isc_suspend_window : function (_para1:PISC_STATUS; _para2:Pisc_win_handle):ISC_STATUS; extdecl; -{$ENDIF} - -Procedure InitialiseIBase60; -Procedure ReleaseIBase60; - -var IBaseLibraryHandle : TLibHandle; - -implementation - -var RefCount : integer; - -Procedure InitialiseIBase60; - -begin - inc(RefCount); - if RefCount = 1 then - begin - IBaseLibraryHandle := loadlibrary(fbclib); - if IBaseLibraryHandle = nilhandle then - begin - IBaseLibraryHandle := loadlibrary(gdslib); - if loadlibrary(gdslib) = nilhandle then - begin - RefCount := 0; - Raise EInOutError.Create('Can not load Firebird or Interbase client. Is it installed? ('+gdslib+' or '+fbclib+')'); - end; - end; - - pointer(isc_attach_database) := GetProcedureAddress(IBaseLibraryHandle,'isc_attach_database'); - pointer(isc_array_gen_sdl) := GetProcedureAddress(IBaseLibraryHandle,'isc_array_gen_sdl'); - pointer(isc_array_get_slice) := GetProcedureAddress(IBaseLibraryHandle,'isc_array_get_slice'); - pointer(isc_array_lookup_bounds) := GetProcedureAddress(IBaseLibraryHandle,'isc_array_lookup_bounds'); - pointer(isc_array_lookup_desc) := GetProcedureAddress(IBaseLibraryHandle,'isc_array_lookup_desc'); - pointer(isc_array_set_desc) := GetProcedureAddress(IBaseLibraryHandle,'isc_array_set_desc'); - pointer(isc_array_put_slice) := GetProcedureAddress(IBaseLibraryHandle,'isc_array_put_slice'); - pointer(isc_blob_default_desc) := GetProcedureAddress(IBaseLibraryHandle,'isc_blob_default_desc'); - pointer(isc_blob_gen_bpb) := GetProcedureAddress(IBaseLibraryHandle,'isc_blob_gen_bpb'); - pointer(isc_blob_info) := GetProcedureAddress(IBaseLibraryHandle,'isc_blob_info'); - pointer(isc_blob_lookup_desc) := GetProcedureAddress(IBaseLibraryHandle,'isc_blob_lookup_desc'); - pointer(isc_blob_set_desc) := GetProcedureAddress(IBaseLibraryHandle,'isc_blob_set_desc'); - pointer(isc_cancel_blob) := GetProcedureAddress(IBaseLibraryHandle,'isc_cancel_blob'); - pointer(isc_cancel_events) := GetProcedureAddress(IBaseLibraryHandle,'isc_cancel_events'); - pointer(isc_close_blob) := GetProcedureAddress(IBaseLibraryHandle,'isc_close_blob'); - pointer(isc_commit_retaining) := GetProcedureAddress(IBaseLibraryHandle,'isc_commit_retaining'); - pointer(isc_commit_transaction) := GetProcedureAddress(IBaseLibraryHandle,'isc_commit_transaction'); - pointer(isc_create_blob) := GetProcedureAddress(IBaseLibraryHandle,'isc_create_blob'); - pointer(isc_create_blob2) := GetProcedureAddress(IBaseLibraryHandle,'isc_create_blob2'); - pointer(isc_create_database) := GetProcedureAddress(IBaseLibraryHandle,'isc_create_database'); - pointer(isc_database_info) := GetProcedureAddress(IBaseLibraryHandle,'isc_database_info'); - pointer(isc_decode_date) := GetProcedureAddress(IBaseLibraryHandle,'isc_decode_date'); - pointer(isc_decode_sql_date) := GetProcedureAddress(IBaseLibraryHandle,'isc_decode_sql_date'); - pointer(isc_decode_sql_time) := GetProcedureAddress(IBaseLibraryHandle,'isc_decode_sql_time'); - pointer(isc_decode_timestamp) := GetProcedureAddress(IBaseLibraryHandle,'isc_decode_timestamp'); - pointer(isc_detach_database) := GetProcedureAddress(IBaseLibraryHandle,'isc_detach_database'); - pointer(isc_drop_database) := GetProcedureAddress(IBaseLibraryHandle,'isc_drop_database'); - pointer(isc_dsql_allocate_statement) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_allocate_statement'); - pointer(isc_dsql_alloc_statement2) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_alloc_statement2'); - pointer(isc_dsql_describe) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_describe'); - pointer(isc_dsql_describe_bind) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_describe_bind'); - pointer(isc_dsql_exec_immed2) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_exec_immed2'); - pointer(isc_dsql_execute) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_execute'); - pointer(isc_dsql_execute2) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_execute2'); - pointer(isc_dsql_execute_immediate) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_execute_immediate'); - pointer(isc_dsql_fetch) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_fetch'); - pointer(isc_dsql_finish) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_finish'); - pointer(isc_dsql_free_statement) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_free_statement'); - pointer(isc_dsql_insert) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_insert'); - pointer(isc_dsql_prepare) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_prepare'); - pointer(isc_dsql_set_cursor_name) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_set_cursor_name'); - pointer(isc_dsql_sql_info) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_sql_info'); - pointer(isc_encode_date) := GetProcedureAddress(IBaseLibraryHandle,'isc_encode_date'); - pointer(isc_encode_sql_date) := GetProcedureAddress(IBaseLibraryHandle,'isc_encode_sql_date'); - pointer(isc_encode_sql_time) := GetProcedureAddress(IBaseLibraryHandle,'isc_encode_sql_time'); - pointer(isc_encode_timestamp) := GetProcedureAddress(IBaseLibraryHandle,'isc_encode_timestamp'); - pointer(isc_event_block) := GetProcedureAddress(IBaseLibraryHandle,'isc_event_block'); - pointer(isc_expand_dpb) := GetProcedureAddress(IBaseLibraryHandle,'isc_expand_dpb'); - pointer(isc_modify_dpb) := GetProcedureAddress(IBaseLibraryHandle,'isc_modify_dpb'); - pointer(isc_free) := GetProcedureAddress(IBaseLibraryHandle,'isc_free'); - pointer(isc_get_segment) := GetProcedureAddress(IBaseLibraryHandle,'isc_get_segment'); - pointer(isc_get_slice) := GetProcedureAddress(IBaseLibraryHandle,'isc_get_slice'); - pointer(isc_interprete) := GetProcedureAddress(IBaseLibraryHandle,'isc_interprete'); - pointer(isc_open_blob) := GetProcedureAddress(IBaseLibraryHandle,'isc_open_blob'); - pointer(isc_open_blob2) := GetProcedureAddress(IBaseLibraryHandle,'isc_open_blob2'); - pointer(isc_prepare_transaction2) := GetProcedureAddress(IBaseLibraryHandle,'isc_prepare_transaction2'); - pointer(isc_print_sqlerror) := GetProcedureAddress(IBaseLibraryHandle,'isc_print_sqlerror'); - pointer(isc_print_status) := GetProcedureAddress(IBaseLibraryHandle,'isc_print_status'); - pointer(isc_put_segment) := GetProcedureAddress(IBaseLibraryHandle,'isc_put_segment'); - pointer(isc_put_slice) := GetProcedureAddress(IBaseLibraryHandle,'isc_put_slice'); - pointer(isc_que_events) := GetProcedureAddress(IBaseLibraryHandle,'isc_que_events'); - pointer(isc_rollback_retaining) := GetProcedureAddress(IBaseLibraryHandle,'isc_rollback_retaining'); - pointer(isc_rollback_transaction) := GetProcedureAddress(IBaseLibraryHandle,'isc_rollback_transaction'); - pointer(isc_start_multiple) := GetProcedureAddress(IBaseLibraryHandle,'isc_start_multiple'); - pointer(isc_start_transaction) := GetProcedureAddress(IBaseLibraryHandle,'isc_start_transaction'); - pointer(isc_sqlcode) := GetProcedureAddress(IBaseLibraryHandle,'isc_sqlcode'); - pointer(isc_sql_interprete) := GetProcedureAddress(IBaseLibraryHandle,'isc_sql_interprete'); - pointer(isc_transaction_info) := GetProcedureAddress(IBaseLibraryHandle,'isc_transaction_info'); - pointer(isc_transact_request) := GetProcedureAddress(IBaseLibraryHandle,'isc_transact_request'); - pointer(isc_vax_integer) := GetProcedureAddress(IBaseLibraryHandle,'isc_vax_integer'); - pointer(isc_portable_integer) := GetProcedureAddress(IBaseLibraryHandle,'isc_portable_integer'); - pointer(isc_add_user) := GetProcedureAddress(IBaseLibraryHandle,'isc_add_user'); - pointer(isc_delete_user) := GetProcedureAddress(IBaseLibraryHandle,'isc_delete_user'); - pointer(isc_modify_user) := GetProcedureAddress(IBaseLibraryHandle,'isc_modify_user'); - pointer(isc_compile_request) := GetProcedureAddress(IBaseLibraryHandle,'isc_compile_request'); - pointer(isc_compile_request2) := GetProcedureAddress(IBaseLibraryHandle,'isc_compile_request2'); - pointer(isc_ddl) := GetProcedureAddress(IBaseLibraryHandle,'isc_ddl'); - pointer(isc_prepare_transaction) := GetProcedureAddress(IBaseLibraryHandle,'isc_prepare_transaction'); - pointer(isc_receive) := GetProcedureAddress(IBaseLibraryHandle,'isc_receive'); - pointer(isc_reconnect_transaction) := GetProcedureAddress(IBaseLibraryHandle,'isc_reconnect_transaction'); - pointer(isc_release_request) := GetProcedureAddress(IBaseLibraryHandle,'isc_release_request'); - pointer(isc_request_info) := GetProcedureAddress(IBaseLibraryHandle,'isc_request_info'); - pointer(isc_seek_blob) := GetProcedureAddress(IBaseLibraryHandle,'isc_seek_blob'); - pointer(isc_send) := GetProcedureAddress(IBaseLibraryHandle,'isc_send'); - pointer(isc_start_and_send) := GetProcedureAddress(IBaseLibraryHandle,'isc_start_and_send'); - pointer(isc_start_request) := GetProcedureAddress(IBaseLibraryHandle,'isc_start_request'); - pointer(isc_unwind_request) := GetProcedureAddress(IBaseLibraryHandle,'isc_unwind_request'); - pointer(isc_wait_for_event) := GetProcedureAddress(IBaseLibraryHandle,'isc_wait_for_event'); - pointer(isc_close) := GetProcedureAddress(IBaseLibraryHandle,'isc_close'); - pointer(isc_declare) := GetProcedureAddress(IBaseLibraryHandle,'isc_declare'); - pointer(isc_describe) := GetProcedureAddress(IBaseLibraryHandle,'isc_describe'); - pointer(isc_describe_bind) := GetProcedureAddress(IBaseLibraryHandle,'isc_describe_bind'); - pointer(isc_execute) := GetProcedureAddress(IBaseLibraryHandle,'isc_execute'); - pointer(isc_execute_immediate) := GetProcedureAddress(IBaseLibraryHandle,'isc_execute_immediate'); - pointer(isc_fetch) := GetProcedureAddress(IBaseLibraryHandle,'isc_fetch'); - pointer(isc_open) := GetProcedureAddress(IBaseLibraryHandle,'isc_open'); - pointer(isc_prepare) := GetProcedureAddress(IBaseLibraryHandle,'isc_prepare'); - pointer(isc_dsql_execute_m) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_execute_m'); - pointer(isc_dsql_execute2_m) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_execute2_m'); - pointer(isc_dsql_execute_immediate_m) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_execute_immediate_m'); - pointer(isc_dsql_exec_immed3_m) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_exec_immed3_m'); - pointer(isc_dsql_fetch_m) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_fetch_m'); - pointer(isc_dsql_insert_m) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_insert_m'); - pointer(isc_dsql_prepare_m) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_prepare_m'); - pointer(isc_dsql_release) := GetProcedureAddress(IBaseLibraryHandle,'isc_dsql_release'); - pointer(isc_embed_dsql_close) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_close'); - pointer(isc_embed_dsql_declare) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_declare'); - pointer(isc_embed_dsql_describe) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_describe'); - pointer(isc_embed_dsql_describe_bind) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_describe_bind'); - pointer(isc_embed_dsql_execute) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_execute'); - pointer(isc_embed_dsql_execute2) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_execute2'); - pointer(isc_embed_dsql_execute_immed) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_execute_immed'); - pointer(isc_embed_dsql_fetch) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_fetch'); - pointer(isc_embed_dsql_open) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_open'); - pointer(isc_embed_dsql_open2) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_open2'); - pointer(isc_embed_dsql_insert) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_insert'); - pointer(isc_embed_dsql_prepare) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_prepare'); - pointer(isc_embed_dsql_release) := GetProcedureAddress(IBaseLibraryHandle,'isc_embed_dsql_release'); - pointer(BLOB_open) := GetProcedureAddress(IBaseLibraryHandle,'BLOB_open'); - pointer(BLOB_put) := GetProcedureAddress(IBaseLibraryHandle,'BLOB_put'); - pointer(BLOB_close) := GetProcedureAddress(IBaseLibraryHandle,'BLOB_close'); - pointer(BLOB_get) := GetProcedureAddress(IBaseLibraryHandle,'BLOB_get'); - pointer(BLOB_display) := GetProcedureAddress(IBaseLibraryHandle,'BLOB_display'); - pointer(BLOB_dump) := GetProcedureAddress(IBaseLibraryHandle,'BLOB_dump'); - pointer(BLOB_edit) := GetProcedureAddress(IBaseLibraryHandle,'BLOB_edit'); - pointer(BLOB_load) := GetProcedureAddress(IBaseLibraryHandle,'BLOB_load'); - pointer(BLOB_text_dump) := GetProcedureAddress(IBaseLibraryHandle,'BLOB_text_dump'); - pointer(BLOB_text_load) := GetProcedureAddress(IBaseLibraryHandle,'BLOB_text_load'); - pointer(Bopen) := GetProcedureAddress(IBaseLibraryHandle,'Bopen'); -{$IFDEF Unix} - pointer(Bopen2) := GetProcedureAddress(IBaseLibraryHandle,'Bopen2'); -{$ENDIF} - pointer(isc_ftof) := GetProcedureAddress(IBaseLibraryHandle,'isc_ftof'); - pointer(isc_print_blr) := GetProcedureAddress(IBaseLibraryHandle,'isc_print_blr'); - pointer(isc_set_debug) := GetProcedureAddress(IBaseLibraryHandle,'isc_set_debug'); - pointer(isc_qtoq) := GetProcedureAddress(IBaseLibraryHandle,'isc_qtoq'); - pointer(isc_vtof) := GetProcedureAddress(IBaseLibraryHandle,'isc_vtof'); - pointer(isc_vtov) := GetProcedureAddress(IBaseLibraryHandle,'isc_vtov'); - pointer(isc_version) := GetProcedureAddress(IBaseLibraryHandle,'isc_version'); -{$IFDEF Unix} - pointer(isc_reset_fpe) := GetProcedureAddress(IBaseLibraryHandle,'isc_reset_fpe'); -{$ENDIF} - pointer(isc_service_attach) := GetProcedureAddress(IBaseLibraryHandle,'isc_service_attach'); - pointer(isc_service_detach) := GetProcedureAddress(IBaseLibraryHandle,'isc_service_detach'); - pointer(isc_service_query) := GetProcedureAddress(IBaseLibraryHandle,'isc_service_query'); - pointer(isc_service_start) := GetProcedureAddress(IBaseLibraryHandle,'isc_service_start'); -{$IFDEF Unix} - pointer(isc_compile_map) := GetProcedureAddress(IBaseLibraryHandle,'isc_compile_map'); - pointer(isc_compile_menu) := GetProcedureAddress(IBaseLibraryHandle,'isc_compile_menu'); - pointer(isc_compile_sub_map) := GetProcedureAddress(IBaseLibraryHandle,'isc_compile_sub_map'); - pointer(isc_create_window) := GetProcedureAddress(IBaseLibraryHandle,'isc_create_window'); - pointer(isc_delete_window) := GetProcedureAddress(IBaseLibraryHandle,'isc_delete_window'); - pointer(isc_drive_form) := GetProcedureAddress(IBaseLibraryHandle,'isc_drive_form'); - pointer(isc_drive_menu) := GetProcedureAddress(IBaseLibraryHandle,'isc_drive_menu'); - pointer(isc_form_delete) := GetProcedureAddress(IBaseLibraryHandle,'isc_form_delete'); - pointer(isc_form_fetch) := GetProcedureAddress(IBaseLibraryHandle,'isc_form_fetch'); - pointer(isc_form_insert) := GetProcedureAddress(IBaseLibraryHandle,'isc_form_insert'); - pointer(isc_get_entree) := GetProcedureAddress(IBaseLibraryHandle,'isc_get_entree'); - pointer(isc_initialize_menu) := GetProcedureAddress(IBaseLibraryHandle,'isc_initialize_menu'); - pointer(isc_menu) := GetProcedureAddress(IBaseLibraryHandle,'isc_menu'); - pointer(isc_load_form) := GetProcedureAddress(IBaseLibraryHandle,'isc_load_form'); - pointer(isc_pop_window) := GetProcedureAddress(IBaseLibraryHandle,'isc_pop_window'); - pointer(isc_put_entree) := GetProcedureAddress(IBaseLibraryHandle,'isc_put_entree'); - pointer(isc_reset_form) := GetProcedureAddress(IBaseLibraryHandle,'isc_reset_form'); - pointer(isc_suspend_window) := GetProcedureAddress(IBaseLibraryHandle,'isc_suspend_window'); -{$ENDIF} - end; -end; - -Procedure ReleaseIBase60; - -begin - if RefCount > 0 then dec(RefCount); - if RefCount = 0 then - begin - if not UnloadLibrary(IBaseLibraryHandle) then inc(RefCount); - end; -end; - -// This function is also defined in ibase60! -function XSQLDA_LENGTH(n: Integer): Integer; -begin - Result := SizeOf(XSQLDA) + (n - 1) * SizeOf(XSQLVAR); -end; +{$i ibase60.inc} end. diff --git a/packages/base/ibase/ibase60types.inc b/packages/base/ibase/ibase60types.inc deleted file mode 100644 index 4fc792cd11..0000000000 --- a/packages/base/ibase/ibase60types.inc +++ /dev/null @@ -1,1598 +0,0 @@ -{ - Contains the types needed for use with Interbase/Firebird -} - -type - { Unsigned types } - - UChar = Byte; - UShort = Word; - UInt = DWord; - ULong = DWord; - - { Signed types } - - Int = LongInt; - Long = LongInt; - Short = SmallInt; - Float = Single; - - { Pointers to basic types } - - PInt = ^Int; - PShort = ^Short; - PUShort = ^UShort; - PLong = ^Long; - PULong = ^ULong; - PFloat = ^Float; - PUChar = ^UChar; - PVoid = ^Pointer; - -{$PACKRECORDS C} - - const - ISC_TRUE = 1; - ISC_FALSE = 0; - const - ISC__TRUE = ISC_TRUE; - ISC__FALSE = ISC_FALSE; - -Type - ISC_USHORT = word; - ISC_STATUS = longint; - ISC_INT64 = int64; - ISC_UINT64 = qword; - ISC_LONG = Longint; - - PISC_USHORT = ^ISC_USHORT; - PISC_STATUS = ^ISC_STATUS; - PPISC_STATUS = ^PISC_STATUS; - PISC_INT64 = ^ISC_INT64; - PISC_UINT64 = ^ISC_UINT64; - PISC_LONG = ^ISC_LONG; - - const - DSQL_close = 1; - DSQL_drop = 2; - - {!!MVC - Removed all ISC_FAR, ISC_EXPORT_VARARG and ISC_EXPORT - macros. - They confuse h2pas... - !!MVC } - { } - { Time & Date Support } - { } -{$ifndef _ISC_TIMESTAMP_} - - type - - ISC_DATE = longint; - ISC_TIME = dword; - ISC_TIMESTAMP = record - timestamp_date : ISC_DATE; - timestamp_time : ISC_TIME; - end; - TISC_DATE = ISC_DATE; - TISC_TIME = ISC_TIME; - TISC_TIMESTAMP = ISC_TIMESTAMP; - PISC_DATE = ^ISC_DATE; - PISC_TIME = ^ISC_TIME; - PISC_TIMESTAMP = ^ISC_TIMESTAMP; - const - _ISC_TIMESTAMP_ = 1; -{$endif} - - const - ISC_TIME_SECONDS_PRECISION = 10000; - ISC_TIME_SECONDS_PRECISION_SCALE = -4; - { } - { Blob id structure } - { } - -Type - - GDS_QUAD = record - gds_quad_high : ISC_LONG; - gds_quad_low : ISC_LONG; - end; - TGDS_QUAD = GDS_QUAD; - PGDS_QUAD = ^GDS_QUAD; - -Type - ISC_QUAD = GDS_QUAD; - TISC_QUAD = ISC_QUAD; - PISC_QUAD = ^ISC_QUAD; - -{ !!field redefinitions !! - isc_quad_high = gds_quad_high; - isc_quad_low = gds_quad_low; -} - -type - - ISC_ARRAY_BOUND = record - array_bound_lower : smallint; - array_bound_upper : smallint; - end; - TISC_ARRAY_BOUND = ISC_ARRAY_BOUND; - PISC_ARRAY_BOUND = ^ISC_ARRAY_BOUND; - - ISC_ARRAY_DESC = record - array_desc_dtype : byte; - array_desc_scale : char; - array_desc_length : word; - array_desc_field_name : array[0..31] of char; - array_desc_relation_name : array[0..31] of char; - array_desc_dimensions : smallint; - array_desc_flags : smallint; - array_desc_bounds : array[0..15] of ISC_ARRAY_BOUND; - end; - TISC_ARRAY_DESC = ISC_ARRAY_DESC; - PISC_ARRAY_DESC = ^ISC_ARRAY_DESC; - - ISC_BLOB_DESC = record - blob_desc_subtype : smallint; - blob_desc_charset : smallint; - blob_desc_segment_size : smallint; - blob_desc_field_name : array[0..31] of byte; - blob_desc_relation_name : array[0..31] of byte; - end; - TISC_BLOB_DESC = ISC_BLOB_DESC; - PISC_BLOB_DESC = ^ISC_BLOB_DESC ; - { } - { Blob control structure } - { } - {!!MVC - !!MVC } - { Source filter } - {!!MVC - !!MVC } - { Argument to pass to source } - { filter } - { Target type } - { Source type } - { Length of buffer } - { Length of current segment } - { Length of blob parameter } - { block } - { Address of blob parameter } - { block } - { Address of segment buffer } - { Length of longest segment } - { Total number of segments } - { Total length of blob } - { Address of status vector } - { Application specific data } - TCTLSourceFunction = function : isc_long; - - PISC_BLOB_CTL = ^ISC_BLOB_CTL ; - ISC_BLOB_CTL = record - ctl_source : TCTLSourceFunction; // was ISC_STATUS ( *ctl_source)(); - ctl_source_handle : pisc_blob_ctl ; // was struct isc_blob_ctl * ctl_source_handle; - ctl_to_sub_type : smallint; - ctl_from_sub_type : smallint; - ctl_buffer_length : word; - ctl_segment_length : word; - ctl_bpb_length : word; - ctl_bpb : Pchar; - ctl_buffer : Pbyte; - ctl_max_segment : ISC_LONG; - ctl_number_segments : ISC_LONG; - ctl_total_length : ISC_LONG; - ctl_status : PISC_STATUS; - ctl_data : array[0..7] of longint; - end; - TISC_BLOB_CTL = ISC_BLOB_CTL; - - { } - { Blob stream definitions } - { } - { Blob handle } - { Address of buffer } - { Next character } - { Length of buffer } - { Characters in buffer } - { (mode) ? OUTPUT : INPUT } - - BSTREAM = record - bstr_blob : pointer; - bstr_buffer : Pchar; - bstr_ptr : Pchar; - bstr_length : smallint; - bstr_cnt : smallint; - bstr_mode : char; - end; - TBSTREAM = BSTREAM; - PBstream = ^BSTREAM; - {!!MVC - - #define getb(p) (--(p)->bstr_cnt >= 0 ? (p)->bstr_ptr++ & 0377: BLOB_get (p)) - #define putb(x,p) (((x) == '\n' || (!(--(p)->bstr_cnt))) ? BLOB_put ((x),p) : ((int) ( (p)->bstr_ptr++ = (unsigned) (x)))) - #define putbx(x,p) ((!(--(p)->bstr_cnt)) ? BLOB_put ((x),p) : ((int) ( (p)->bstr_ptr++ = (unsigned) (x)))) - - !!MVC } - { } - { Dynamic SQL definitions } - { } - { } - { Declare the extended SQLDA } - { } - { datatype of field } - { scale factor } - { datatype subtype - BLOBs & Text } - { types only } - { length of data area } - { address of data } - { address of indicator variable } - { length of sqlname field } - { name of field, name length + space } - { for NULL } - { length of relation name } - { field's relation name + space for } - { NULL } - { length of owner name } - { relation's owner name + space for } - { NULL } - { length of alias name } - { relation's alias name + space for } - { NULL } - - XSQLVAR = record - sqltype : smallint; - sqlscale : smallint; - sqlsubtype : smallint; - sqllen : smallint; - sqldata : Pchar; - sqlind : Psmallint; - sqlname_length : smallint; - sqlname : array[0..31] of char; - relname_length : smallint; - relname : array[0..31] of char; - ownname_length : smallint; - ownname : array[0..31] of char; - aliasname_length : smallint; - aliasname : array[0..31] of char; - end; - TXSQLVAR = XSQLVAR; - PXSQLVAR =^XSQLVAR; - { version of this XSQLDA } - { XSQLDA name field } - { length in bytes of SQLDA } - { number of fields allocated } - { actual number of fields } - { first field address } - - XSQLDA = record - version : smallint; - sqldaid : array[0..7] of char; - sqldabc : ISC_LONG; - sqln : smallint; - sqld : smallint; - sqlvar : array[0..0] of XSQLVAR; - end; - TXSQLDA = XSQLDA; - PXSQLDA =^XSQLDA; - - function XSQLDA_LENGTH(n: Integer): Integer; - - - const - SQLDA_VERSION1 = 1; - { meaning is same as DIALECT_xsqlda } - SQL_DIALECT_V5 = 1; - { flagging anything that is delimited - by double quotes as an error and - flagging keyword DATE as an error } - SQL_DIALECT_V6_TRANSITION = 2; - { supports SQL delimited identifier, - SQLDATE/DATE, TIME, TIMESTAMP, - CURRENT_DATE, CURRENT_TIME, - CURRENT_TIMESTAMP, and 64-bit exact - numeric type } - SQL_DIALECT_V6 = 3; - { latest IB DIALECT } - SQL_DIALECT_CURRENT = SQL_DIALECT_V6; - { } - { InterBase Handle Definitions } - { } - - type - isc_att_handle = pointer; - isc_blob_handle = pointer; - isc_db_handle = pointer; - isc_form_handle = pointer; - isc_req_handle = pointer; - isc_stmt_handle = pointer; - isc_svc_handle = pointer; - isc_tr_handle = pointer; - isc_win_handle = pointer; - isc_callback = procedure ;extdecl; - isc_resv_handle = ISC_LONG; - tisc_att_handle = isc_att_handle; - tisc_blob_handle = isc_blob_handle; - tisc_db_handle = isc_db_handle; - tisc_form_handle = isc_form_handle; - tisc_req_handle = isc_req_handle; - tisc_stmt_handle = isc_stmt_handle; - tisc_svc_handle = isc_svc_handle; - tisc_tr_handle = isc_tr_handle; - tisc_win_handle = isc_win_handle; - tisc_callback = isc_callback; - tisc_resv_handle = isc_resv_handle; - pisc_att_handle =^isc_att_handle ; - pisc_blob_handle =^isc_blob_handle ; - pisc_db_handle =^isc_db_handle ; - pisc_form_handle =^isc_form_handle ; - pisc_req_handle =^isc_req_handle ; - pisc_stmt_handle =^isc_stmt_handle ; - pisc_svc_handle =^isc_svc_handle ; - pisc_tr_handle =^isc_tr_handle ; - pisc_win_handle =^isc_win_handle ; - pisc_callback = ^isc_callback; - pisc_resv_handle =^isc_resv_handle ; - - - { } - { Security structures } - { } - - const - sec_uid_spec = $01; - sec_gid_spec = $02; - sec_server_spec = $04; - sec_password_spec = $08; - sec_group_name_spec = $10; - sec_first_name_spec = $20; - sec_middle_name_spec = $40; - sec_last_name_spec = $80; - sec_dba_user_name_spec = $100; - sec_dba_password_spec = $200; - sec_protocol_tcpip = 1; - sec_protocol_netbeui = 2; - sec_protocol_spx = 3; - sec_protocol_local = 4; - { which fields are specified } - { the user's id } - { the user's group id } - { protocol to use for connection } - { server to administer } - { the user's name } - { the user's password } - { the group name } - { the user's first name } - { the user's middle name } - { the user's last name } - { the dba user name } - { the dba password } - - type - - USER_SEC_DATA = record - sec_flags : smallint; - uid : longint; - gid : longint; - protocol : longint; - server : Pchar; - user_name : Pchar; - password : Pchar; - group_name : Pchar; - first_name : Pchar; - middle_name : Pchar; - last_name : Pchar; - dba_user_name : Pchar; - dba_password : Pchar; - end; - TUSER_SEC_DATA = USER_SEC_DATA; - PUSER_SEC_DATA = ^USER_SEC_DATA; - - { } - { Actions to pass to the blob filter (ctl_source) } - { } - - const - isc_blob_filter_open = 0; - isc_blob_filter_get_segment = 1; - isc_blob_filter_close = 2; - isc_blob_filter_create = 3; - isc_blob_filter_put_segment = 4; - isc_blob_filter_alloc = 5; - isc_blob_filter_free = 6; - isc_blob_filter_seek = 7; - { } - { Blr definitions } - { } -{$ifndef _JRD_BLR_H_} - {!!MVC - #define blr_word(n) ((n) % 256), ((n) / 256) - !!MVC } - - const - blr_text = 14; - blr_text2 = 15; - blr_short = 7; - blr_long = 8; - blr_quad = 9; - blr_int64 = 16; - blr_float = 10; - blr_double = 27; - blr_d_float = 11; - blr_timestamp = 35; - blr_varying = 37; - blr_varying2 = 38; - blr_blob = 261; - blr_cstring = 40; - blr_cstring2 = 41; - blr_blob_id = 45; - blr_sql_date = 12; - blr_sql_time = 13; - { Historical alias for pre V6 applications } - blr_date = blr_timestamp; - blr_inner = 0; - blr_left = 1; - blr_right = 2; - blr_full = 3; - blr_gds_code = 0; - blr_sql_code = 1; - blr_exception = 2; - blr_trigger_code = 3; - blr_default_code = 4; - blr_version4 = 4; - blr_version5 = 5; - blr_eoc = 76; - blr_end = 255; - blr_assignment = 1; - blr_begin = 2; - blr_dcl_variable = 3; - blr_message = 4; - blr_erase = 5; - blr_fetch = 6; - blr_for = 7; - blr_if = 8; - blr_loop = 9; - blr_modify = 10; - blr_handler = 11; - blr_receive = 12; - blr_select = 13; - blr_send = 14; - blr_store = 15; - blr_label = 17; - blr_leave = 18; - blr_store2 = 19; - blr_post = 20; - blr_literal = 21; - blr_dbkey = 22; - blr_field = 23; - blr_fid = 24; - blr_parameter = 25; - blr_variable = 26; - blr_average = 27; - blr_count = 28; - blr_maximum = 29; - blr_minimum = 30; - blr_total = 31; - blr_add = 34; - blr_subtract = 35; - blr_multiply = 36; - blr_divide = 37; - blr_negate = 38; - blr_concatenate = 39; - blr_substring = 40; - blr_parameter2 = 41; - blr_from = 42; - blr_via = 43; - blr_user_name = 44; - blr_null = 45; - blr_eql = 47; - blr_neq = 48; - blr_gtr = 49; - blr_geq = 50; - blr_lss = 51; - blr_leq = 52; - blr_containing = 53; - blr_matching = 54; - blr_starting = 55; - blr_between = 56; - blr_or = 57; - blr_and = 58; - blr_not = 59; - blr_any = 60; - blr_missing = 61; - blr_unique = 62; - blr_like = 63; - blr_stream = 65; - blr_set_index = 66; - blr_rse = 67; - blr_first = 68; - blr_project = 69; - blr_sort = 70; - blr_boolean = 71; - blr_ascending = 72; - blr_descending = 73; - blr_relation = 74; - 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; - { get tid of record } - blr_record_version = 154; - { fake server stall } - blr_stall = 155; - 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; -{$endif} - { _JRD_BLR_H_ } - { } - { Database parameter block stuff } - { } - - const - isc_dpb_version1 = 1; - isc_dpb_cdd_pathname = 1; - isc_dpb_allocation = 2; - isc_dpb_journal = 3; - isc_dpb_page_size = 4; - isc_dpb_num_buffers = 5; - isc_dpb_buffer_length = 6; - isc_dpb_debug = 7; - isc_dpb_garbage_collect = 8; - isc_dpb_verify = 9; - isc_dpb_sweep = 10; - isc_dpb_enable_journal = 11; - isc_dpb_disable_journal = 12; - isc_dpb_dbkey_scope = 13; - isc_dpb_number_of_users = 14; - isc_dpb_trace = 15; - isc_dpb_no_garbage_collect = 16; - isc_dpb_damaged = 17; - isc_dpb_license = 18; - isc_dpb_sys_user_name = 19; - isc_dpb_encrypt_key = 20; - isc_dpb_activate_shadow = 21; - isc_dpb_sweep_interval = 22; - isc_dpb_delete_shadow = 23; - isc_dpb_force_write = 24; - isc_dpb_begin_log = 25; - isc_dpb_quit_log = 26; - isc_dpb_no_reserve = 27; - isc_dpb_user_name = 28; - isc_dpb_password = 29; - isc_dpb_password_enc = 30; - isc_dpb_sys_user_name_enc = 31; - isc_dpb_interp = 32; - isc_dpb_online_dump = 33; - isc_dpb_old_file_size = 34; - isc_dpb_old_num_files = 35; - isc_dpb_old_file = 36; - isc_dpb_old_start_page = 37; - isc_dpb_old_start_seqno = 38; - isc_dpb_old_start_file = 39; - isc_dpb_drop_walfile = 40; - isc_dpb_old_dump_id = 41; - isc_dpb_wal_backup_dir = 42; - isc_dpb_wal_chkptlen = 43; - isc_dpb_wal_numbufs = 44; - isc_dpb_wal_bufsize = 45; - isc_dpb_wal_grp_cmt_wait = 46; - isc_dpb_lc_messages = 47; - isc_dpb_lc_ctype = 48; - isc_dpb_cache_manager = 49; - isc_dpb_shutdown = 50; - isc_dpb_online = 51; - isc_dpb_shutdown_delay = 52; - isc_dpb_reserved = 53; - isc_dpb_overwrite = 54; - isc_dpb_sec_attach = 55; - isc_dpb_disable_wal = 56; - isc_dpb_connect_timeout = 57; - isc_dpb_dummy_packet_interval = 58; - isc_dpb_gbak_attach = 59; - isc_dpb_sql_role_name = 60; - isc_dpb_set_page_buffers = 61; - isc_dpb_working_directory = 62; - isc_dpb_SQL_dialect = 63; - isc_dpb_set_db_readonly = 64; - isc_dpb_set_db_SQL_dialect = 65; - isc_dpb_gfix_attach = 66; - isc_dpb_gstat_attach = 67; - { } - { isc_dpb_verify specific flags } - { } - isc_dpb_pages = 1; - isc_dpb_records = 2; - isc_dpb_indices = 4; - isc_dpb_transactions = 8; - isc_dpb_no_update = 16; - isc_dpb_repair = 32; - isc_dpb_ignore = 64; - { } - { isc_dpb_shutdown specific flags } - { } - isc_dpb_shut_cache = 1; - isc_dpb_shut_attachment = 2; - isc_dpb_shut_transaction = 4; - isc_dpb_shut_force = 8; - { } - { Bit assignments in RDB$SYSTEM_FLAG } - { } - RDB_system = 1; - RDB_id_assigned = 2; - { } - { Transaction parameter block stuff } - { } - isc_tpb_version1 = 1; - isc_tpb_version3 = 3; - isc_tpb_consistency = 1; - isc_tpb_concurrency = 2; - isc_tpb_shared = 3; - isc_tpb_protected = 4; - isc_tpb_exclusive = 5; - isc_tpb_wait = 6; - isc_tpb_nowait = 7; - isc_tpb_read = 8; - isc_tpb_write = 9; - isc_tpb_lock_read = 10; - isc_tpb_lock_write = 11; - isc_tpb_verb_time = 12; - isc_tpb_commit_time = 13; - isc_tpb_ignore_limbo = 14; - isc_tpb_read_committed = 15; - isc_tpb_autocommit = 16; - isc_tpb_rec_version = 17; - isc_tpb_no_rec_version = 18; - isc_tpb_restart_requests = 19; - isc_tpb_no_auto_undo = 20; - { } - { Blob Parameter Block } - { } - isc_bpb_version1 = 1; - isc_bpb_source_type = 1; - isc_bpb_target_type = 2; - isc_bpb_type = 3; - isc_bpb_source_interp = 4; - isc_bpb_target_interp = 5; - isc_bpb_filter_parameter = 6; - isc_bpb_type_segmented = 0; - isc_bpb_type_stream = 1; - { } - { Service parameter block stuff } - { } - isc_spb_version1 = 1; - isc_spb_current_version = 2; - isc_spb_version = isc_spb_current_version; - isc_spb_user_name = isc_dpb_user_name; - isc_spb_sys_user_name = isc_dpb_sys_user_name; - isc_spb_sys_user_name_enc = isc_dpb_sys_user_name_enc; - isc_spb_password = isc_dpb_password; - isc_spb_password_enc = isc_dpb_password_enc; - isc_spb_command_line = 105; - isc_spb_dbname = 106; - isc_spb_verbose = 107; - isc_spb_options = 108; - isc_spb_connect_timeout = isc_dpb_connect_timeout; - isc_spb_dummy_packet_interval = isc_dpb_dummy_packet_interval; - isc_spb_sql_role_name = isc_dpb_sql_role_name; - { } - { Information call declarations } - { } - { } - { Common, structural codes } - { } - isc_info_end = 1; - isc_info_truncated = 2; - isc_info_error = 3; - isc_info_data_not_ready = 4; - isc_info_flag_end = 127; - { } - { Database information items } - { } - isc_info_db_id = 4; - isc_info_reads = 5; - isc_info_writes = 6; - isc_info_fetches = 7; - isc_info_marks = 8; - isc_info_implementation = 11; - isc_info_version = 12; - isc_info_base_level = 13; - isc_info_page_size = 14; - isc_info_num_buffers = 15; - isc_info_limbo = 16; - isc_info_current_memory = 17; - isc_info_max_memory = 18; - isc_info_window_turns = 19; - isc_info_license = 20; - isc_info_allocation = 21; - isc_info_attachment_id = 22; - isc_info_read_seq_count = 23; - isc_info_read_idx_count = 24; - isc_info_insert_count = 25; - isc_info_update_count = 26; - isc_info_delete_count = 27; - isc_info_backout_count = 28; - isc_info_purge_count = 29; - isc_info_expunge_count = 30; - isc_info_sweep_interval = 31; - isc_info_ods_version = 32; - isc_info_ods_minor_version = 33; - isc_info_no_reserve = 34; - isc_info_logfile = 35; - isc_info_cur_logfile_name = 36; - isc_info_cur_log_part_offset = 37; - isc_info_num_wal_buffers = 38; - isc_info_wal_buffer_size = 39; - isc_info_wal_ckpt_length = 40; - isc_info_wal_cur_ckpt_interval = 41; - isc_info_wal_prv_ckpt_fname = 42; - isc_info_wal_prv_ckpt_poffset = 43; - isc_info_wal_recv_ckpt_fname = 44; - isc_info_wal_recv_ckpt_poffset = 45; - isc_info_wal_grpc_wait_usecs = 47; - isc_info_wal_num_io = 48; - isc_info_wal_avg_io_size = 49; - isc_info_wal_num_commits = 50; - isc_info_wal_avg_grpc_size = 51; - isc_info_forced_writes = 52; - isc_info_user_names = 53; - isc_info_page_errors = 54; - isc_info_record_errors = 55; - isc_info_bpage_errors = 56; - isc_info_dpage_errors = 57; - isc_info_ipage_errors = 58; - isc_info_ppage_errors = 59; - isc_info_tpage_errors = 60; - isc_info_set_page_buffers = 61; - isc_info_db_SQL_dialect = 62; - isc_info_db_read_only = 63; - isc_info_db_size_in_pages = 64; - { } - { Database information return values } - { } - isc_info_db_impl_rdb_vms = 1; - isc_info_db_impl_rdb_eln = 2; - isc_info_db_impl_rdb_eln_dev = 3; - isc_info_db_impl_rdb_vms_y = 4; - isc_info_db_impl_rdb_eln_y = 5; - isc_info_db_impl_jri = 6; - isc_info_db_impl_jsv = 7; - isc_info_db_impl_isc_a = 25; - isc_info_db_impl_isc_u = 26; - isc_info_db_impl_isc_v = 27; - isc_info_db_impl_isc_s = 28; - isc_info_db_impl_isc_apl_68K = 25; - isc_info_db_impl_isc_vax_ultr = 26; - isc_info_db_impl_isc_vms = 27; - isc_info_db_impl_isc_sun_68k = 28; - isc_info_db_impl_isc_os2 = 29; - isc_info_db_impl_isc_sun4 = 30; - isc_info_db_impl_isc_hp_ux = 31; - isc_info_db_impl_isc_sun_386i = 32; - isc_info_db_impl_isc_vms_orcl = 33; - isc_info_db_impl_isc_mac_aux = 34; - isc_info_db_impl_isc_rt_aix = 35; - isc_info_db_impl_isc_mips_ult = 36; - isc_info_db_impl_isc_xenix = 37; - isc_info_db_impl_isc_dg = 38; - isc_info_db_impl_isc_hp_mpexl = 39; - isc_info_db_impl_isc_hp_ux68K = 40; - isc_info_db_impl_isc_sgi = 41; - isc_info_db_impl_isc_sco_unix = 42; - isc_info_db_impl_isc_cray = 43; - isc_info_db_impl_isc_imp = 44; - isc_info_db_impl_isc_delta = 45; - isc_info_db_impl_isc_next = 46; - isc_info_db_impl_isc_dos = 47; - isc_info_db_impl_isc_winnt = 48; - isc_info_db_impl_isc_epson = 49; - isc_info_db_class_access = 1; - isc_info_db_class_y_valve = 2; - isc_info_db_class_rem_int = 3; - isc_info_db_class_rem_srvr = 4; - isc_info_db_class_pipe_int = 7; - isc_info_db_class_pipe_srvr = 8; - isc_info_db_class_sam_int = 9; - isc_info_db_class_sam_srvr = 10; - isc_info_db_class_gateway = 11; - isc_info_db_class_cache = 12; - { } - { Request information items } - { } - isc_info_number_messages = 4; - isc_info_max_message = 5; - isc_info_max_send = 6; - isc_info_max_receive = 7; - isc_info_state = 8; - isc_info_message_number = 9; - isc_info_message_size = 10; - isc_info_request_cost = 11; - isc_info_access_path = 12; - isc_info_req_select_count = 13; - isc_info_req_insert_count = 14; - isc_info_req_update_count = 15; - isc_info_req_delete_count = 16; - { } - { Access path items } - { } - isc_info_rsb_end = 0; - isc_info_rsb_begin = 1; - isc_info_rsb_type = 2; - isc_info_rsb_relation = 3; - isc_info_rsb_plan = 4; - { } - { Rsb types } - { } - isc_info_rsb_unknown = 1; - isc_info_rsb_indexed = 2; - isc_info_rsb_navigate = 3; - isc_info_rsb_sequential = 4; - isc_info_rsb_cross = 5; - isc_info_rsb_sort = 6; - isc_info_rsb_first = 7; - isc_info_rsb_boolean = 8; - isc_info_rsb_union = 9; - isc_info_rsb_aggregate = 10; - isc_info_rsb_merge = 11; - isc_info_rsb_ext_sequential = 12; - isc_info_rsb_ext_indexed = 13; - isc_info_rsb_ext_dbkey = 14; - isc_info_rsb_left_cross = 15; - isc_info_rsb_select = 16; - isc_info_rsb_sql_join = 17; - isc_info_rsb_simulate = 18; - isc_info_rsb_sim_cross = 19; - isc_info_rsb_once = 20; - isc_info_rsb_procedure = 21; - { } - { Bitmap expressions } - { } - isc_info_rsb_and = 1; - isc_info_rsb_or = 2; - isc_info_rsb_dbkey = 3; - isc_info_rsb_index = 4; - isc_info_req_active = 2; - isc_info_req_inactive = 3; - isc_info_req_send = 4; - isc_info_req_receive = 5; - isc_info_req_select = 6; - isc_info_req_sql_stall = 7; - { } - { Blob information items } - { } - isc_info_blob_num_segments = 4; - isc_info_blob_max_segment = 5; - isc_info_blob_total_length = 6; - isc_info_blob_type = 7; - { } - { Transaction information items } - { } - isc_info_tra_id = 4; - { - Service action items - } - { Starts database backup process on the server } - isc_action_svc_backup = 1; - { Starts database restore process on the server } - isc_action_svc_restore = 2; - { Starts database repair process on the server } - isc_action_svc_repair = 3; - { Adds a new user to the security database } - isc_action_svc_add_user = 4; - { Deletes a user record from the security database } - isc_action_svc_delete_user = 5; - { Modifies a user record in the security database } - isc_action_svc_modify_user = 6; - { Displays a user record from the security database } - isc_action_svc_display_user = 7; - { Sets database properties } - isc_action_svc_properties = 8; - { Adds a license to the license file } - isc_action_svc_add_license = 9; - { Removes a license from the license file } - isc_action_svc_remove_license = 10; - { Retrieves database statistics } - isc_action_svc_db_stats = 11; - { Retrieves the InterBase log file from the server } - isc_action_svc_get_ib_log = 12; - { - Service information items - } - { Retrieves the number of attachments and databases } - isc_info_svc_svr_db_info = 50; - { Retrieves all license keys and IDs from the license file } - isc_info_svc_get_license = 51; - { Retrieves a bitmask representing licensed options on the server } - isc_info_svc_get_license_mask = 52; - { Retrieves the parameters and values for IB_CONFIG } - isc_info_svc_get_config = 53; - { Retrieves the version of the services manager } - isc_info_svc_version = 54; - { Retrieves the version of the InterBase server } - isc_info_svc_server_version = 55; - { Retrieves the implementation of the InterBase server } - isc_info_svc_implementation = 56; - { Retrieves a bitmask representing the server's capabilities } - isc_info_svc_capabilities = 57; - { Retrieves the path to the security database in use by the server } - isc_info_svc_user_dbpath = 58; - { Retrieves the setting of $INTERBASE } - isc_info_svc_get_env = 59; - { Retrieves the setting of $INTERBASE_LCK } - isc_info_svc_get_env_lock = 60; - { Retrieves the setting of $INTERBASE_MSG } - isc_info_svc_get_env_msg = 61; - { Retrieves 1 line of service output per call } - isc_info_svc_line = 62; - { Retrieves as much of the server output as will fit in the supplied buffer } - isc_info_svc_to_eof = 63; - { Sets / signifies a timeout value for reading service information } - isc_info_svc_timeout = 64; - { Retrieves the number of users licensed for accessing the server } - isc_info_svc_get_licensed_users = 65; - { Retrieve the limbo transactions } - isc_info_svc_limbo_trans = 66; - { Checks to see if a service is running on an attachment } - isc_info_svc_running = 67; - { Returns the user information from isc_action_svc_display_users } - isc_info_svc_get_users = 68; - { - Parameters for isc_action_(add|delete|modify)_user - } - isc_spb_sec_userid = 5; - isc_spb_sec_groupid = 6; - isc_spb_sec_username = 7; - isc_spb_sec_password = 8; - isc_spb_sec_groupname = 9; - isc_spb_sec_firstname = 10; - isc_spb_sec_middlename = 11; - isc_spb_sec_lastname = 12; - { - Parameters for isc_action_svc_(add|remove)_license, - isc_info_svc_get_license - } - isc_spb_lic_key = 5; - isc_spb_lic_id = 6; - isc_spb_lic_desc = 7; - { - Parameters for isc_action_svc_backup - } - isc_spb_bkp_file = 5; - isc_spb_bkp_factor = 6; - isc_spb_bkp_length = 7; - isc_spb_bkp_ignore_checksums = $01; - isc_spb_bkp_ignore_limbo = $02; - isc_spb_bkp_metadata_only = $04; - isc_spb_bkp_no_garbage_collect = $08; - isc_spb_bkp_old_descriptions = $10; - isc_spb_bkp_non_transportable = $20; - isc_spb_bkp_convert = $40; - isc_spb_bkp_expand = $80; - { - Parameters for isc_action_svc_properties - } - isc_spb_prp_page_buffers = 5; - isc_spb_prp_sweep_interval = 6; - isc_spb_prp_shutdown_db = 7; - isc_spb_prp_deny_new_attachments = 9; - isc_spb_prp_deny_new_transactions = 10; - isc_spb_prp_reserve_space = 11; - isc_spb_prp_write_mode = 12; - isc_spb_prp_access_mode = 13; - isc_spb_prp_set_sql_dialect = 14; - isc_spb_prp_activate = $0100; - isc_spb_prp_db_online = $0200; - { - Parameters for isc_spb_prp_reserve_space - } - isc_spb_prp_res_use_full = 35; - isc_spb_prp_res = 36; - { - Parameters for isc_spb_prp_write_mode - } - isc_spb_prp_wm_async = 37; - isc_spb_prp_wm_sync = 38; - { - Parameters for isc_spb_prp_access_mode - } - isc_spb_prp_am_readonly = 39; - isc_spb_prp_am_readwrite = 40; - { - Parameters for isc_action_svc_repair - } - isc_spb_rpr_commit_trans = 15; - isc_spb_rpr_rollback_trans = 34; - isc_spb_rpr_recover_two_phase = 17; - isc_spb_tra_id = 18; - isc_spb_single_tra_id = 19; - isc_spb_multi_tra_id = 20; - isc_spb_tra_state = 21; - isc_spb_tra_state_limbo = 22; - isc_spb_tra_state_commit = 23; - isc_spb_tra_state_rollback = 24; - isc_spb_tra_state_unknown = 25; - isc_spb_tra_host_site = 26; - isc_spb_tra_remote_site = 27; - isc_spb_tra_db_path = 28; - isc_spb_tra_advise = 29; - isc_spb_tra_advise_commit = 30; - isc_spb_tra_advise_rollback = 31; - isc_spb_tra_advise_unknown = 33; - isc_spb_rpr_validate_db = $01; - isc_spb_rpr_sweep_db = $02; - isc_spb_rpr_mend_db = $04; - isc_spb_rpr_list_limbo_trans = $08; - isc_spb_rpr_check_db = $10; - isc_spb_rpr_ignore_checksum = $20; - isc_spb_rpr_kill_shadows = $40; - isc_spb_rpr_full = $80; - { - Parameters for isc_action_svc_restore - } - isc_spb_res_buffers = 9; - isc_spb_res_page_size = 10; - isc_spb_res_length = 11; - isc_spb_res_access_mode = 12; - isc_spb_res_deactivate_idx = $0100; - isc_spb_res_no_shadow = $0200; - isc_spb_res_no_validity = $0400; - isc_spb_res_one_at_a_time = $0800; - isc_spb_res_replace = $1000; - isc_spb_res_create = $2000; - isc_spb_res_use_all_space = $4000; - { - Parameters for isc_spb_res_access_mode - } - isc_spb_res_am_readonly = isc_spb_prp_am_readonly; - isc_spb_res_am_readwrite = isc_spb_prp_am_readwrite; - { - Parameters for isc_info_svc_svr_db_info - } - isc_spb_num_att = 5; - isc_spb_num_db = 6; - { - Parameters for isc_info_svc_db_stats - } - isc_spb_sts_data_pages = $01; - isc_spb_sts_db_log = $02; - isc_spb_sts_hdr_pages = $04; - isc_spb_sts_idx_pages = $08; - isc_spb_sts_sys_relations = $10; - { } - { SQL information items } - { } - isc_info_sql_select = 4; - isc_info_sql_bind = 5; - isc_info_sql_num_variables = 6; - isc_info_sql_describe_vars = 7; - isc_info_sql_describe_end = 8; - isc_info_sql_sqlda_seq = 9; - isc_info_sql_message_seq = 10; - isc_info_sql_type = 11; - isc_info_sql_sub_type = 12; - isc_info_sql_scale = 13; - isc_info_sql_length = 14; - isc_info_sql_null_ind = 15; - isc_info_sql_field = 16; - isc_info_sql_relation = 17; - isc_info_sql_owner = 18; - isc_info_sql_alias = 19; - isc_info_sql_sqlda_start = 20; - isc_info_sql_stmt_type = 21; - isc_info_sql_get_plan = 22; - isc_info_sql_records = 23; - isc_info_sql_batch_fetch = 24; - { } - { SQL information return values } - { } - isc_info_sql_stmt_select = 1; - isc_info_sql_stmt_insert = 2; - isc_info_sql_stmt_update = 3; - isc_info_sql_stmt_delete = 4; - isc_info_sql_stmt_ddl = 5; - isc_info_sql_stmt_get_segment = 6; - isc_info_sql_stmt_put_segment = 7; - isc_info_sql_stmt_exec_procedure = 8; - isc_info_sql_stmt_start_trans = 9; - isc_info_sql_stmt_commit = 10; - isc_info_sql_stmt_rollback = 11; - isc_info_sql_stmt_select_for_upd = 12; - isc_info_sql_stmt_set_generator = 13; - { } - { Server configuration key values } - { } - ISCCFG_LOCKMEM_KEY = 0; - ISCCFG_LOCKSEM_KEY = 1; - ISCCFG_LOCKSIG_KEY = 2; - ISCCFG_EVNTMEM_KEY = 3; - ISCCFG_DBCACHE_KEY = 4; - ISCCFG_PRIORITY_KEY = 5; - ISCCFG_IPCMAP_KEY = 6; - ISCCFG_MEMMIN_KEY = 7; - ISCCFG_MEMMAX_KEY = 8; - ISCCFG_LOCKORDER_KEY = 9; - ISCCFG_ANYLOCKMEM_KEY = 10; - ISCCFG_ANYLOCKSEM_KEY = 11; - ISCCFG_ANYLOCKSIG_KEY = 12; - ISCCFG_ANYEVNTMEM_KEY = 13; - ISCCFG_LOCKHASH_KEY = 14; - ISCCFG_DEADLOCK_KEY = 15; - ISCCFG_LOCKSPIN_KEY = 16; - ISCCFG_CONN_TIMEOUT_KEY = 17; - ISCCFG_DUMMY_INTRVL_KEY = 18; - { Internal Use only } - ISCCFG_TRACE_POOLS_KEY = 19; - ISCCFG_REMOTE_BUFFER_KEY = 20; - { } - { Error codes } - { } - isc_facility = 20; - isc_err_base = 335544320; - isc_err_factor = 1; - isc_arg_end = 0; - isc_arg_gds = 1; - isc_arg_string = 2; - isc_arg_cstring = 3; - isc_arg_number = 4; - isc_arg_interpreted = 5; - isc_arg_vms = 6; - isc_arg_unix = 7; - isc_arg_domain = 8; - isc_arg_dos = 9; - isc_arg_mpexl = 10; - isc_arg_mpexl_ipc = 11; - isc_arg_next_mach = 15; - isc_arg_netware = 16; - isc_arg_win32 = 17; - isc_arg_warning = 18; - - { } - { Dynamic Data Definition Language operators } - { } - { } - { Version number } - { } - - const - isc_dyn_version_1 = 1; - isc_dyn_eoc = 255; - { } - { Operations (may be nested) } - { } - isc_dyn_begin = 2; - isc_dyn_end = 3; - isc_dyn_if = 4; - isc_dyn_def_database = 5; - isc_dyn_def_global_fld = 6; - isc_dyn_def_local_fld = 7; - isc_dyn_def_idx = 8; - isc_dyn_def_rel = 9; - isc_dyn_def_sql_fld = 10; - isc_dyn_def_view = 12; - isc_dyn_def_trigger = 15; - isc_dyn_def_security_class = 120; - isc_dyn_def_dimension = 140; - isc_dyn_def_generator = 24; - isc_dyn_def_function = 25; - isc_dyn_def_filter = 26; - isc_dyn_def_function_arg = 27; - isc_dyn_def_shadow = 34; - isc_dyn_def_trigger_msg = 17; - isc_dyn_def_file = 36; - isc_dyn_mod_database = 39; - isc_dyn_mod_rel = 11; - isc_dyn_mod_global_fld = 13; - isc_dyn_mod_idx = 102; - isc_dyn_mod_local_fld = 14; - isc_dyn_mod_sql_fld = 216; - isc_dyn_mod_view = 16; - isc_dyn_mod_security_class = 122; - isc_dyn_mod_trigger = 113; - isc_dyn_mod_trigger_msg = 28; - isc_dyn_delete_database = 18; - isc_dyn_delete_rel = 19; - isc_dyn_delete_global_fld = 20; - isc_dyn_delete_local_fld = 21; - isc_dyn_delete_idx = 22; - isc_dyn_delete_security_class = 123; - isc_dyn_delete_dimensions = 143; - isc_dyn_delete_trigger = 23; - isc_dyn_delete_trigger_msg = 29; - isc_dyn_delete_filter = 32; - isc_dyn_delete_function = 33; - isc_dyn_delete_shadow = 35; - isc_dyn_grant = 30; - isc_dyn_revoke = 31; - isc_dyn_def_primary_key = 37; - isc_dyn_def_foreign_key = 38; - isc_dyn_def_unique = 40; - isc_dyn_def_procedure = 164; - isc_dyn_delete_procedure = 165; - isc_dyn_def_parameter = 135; - isc_dyn_delete_parameter = 136; - isc_dyn_mod_procedure = 175; - isc_dyn_def_log_file = 176; - isc_dyn_def_cache_file = 180; - isc_dyn_def_exception = 181; - isc_dyn_mod_exception = 182; - isc_dyn_del_exception = 183; - isc_dyn_drop_log = 194; - isc_dyn_drop_cache = 195; - isc_dyn_def_default_log = 202; - { } - { View specific stuff } - { } - isc_dyn_view_blr = 43; - isc_dyn_view_source = 44; - isc_dyn_view_relation = 45; - isc_dyn_view_context = 46; - isc_dyn_view_context_name = 47; - { } - { Generic attributes } - { } - isc_dyn_rel_name = 50; - isc_dyn_fld_name = 51; - isc_dyn_new_fld_name = 215; - isc_dyn_idx_name = 52; - isc_dyn_description = 53; - isc_dyn_security_class = 54; - isc_dyn_system_flag = 55; - isc_dyn_update_flag = 56; - isc_dyn_prc_name = 166; - isc_dyn_prm_name = 137; - isc_dyn_sql_object = 196; - isc_dyn_fld_character_set_name = 174; - { } - { Relation specific attributes } - { } - isc_dyn_rel_dbkey_length = 61; - isc_dyn_rel_store_trig = 62; - isc_dyn_rel_modify_trig = 63; - isc_dyn_rel_erase_trig = 64; - isc_dyn_rel_store_trig_source = 65; - isc_dyn_rel_modify_trig_source = 66; - isc_dyn_rel_erase_trig_source = 67; - isc_dyn_rel_ext_file = 68; - isc_dyn_rel_sql_protection = 69; - isc_dyn_rel_constraint = 162; - isc_dyn_delete_rel_constraint = 163; - { } - { Global field specific attributes } - { } - isc_dyn_fld_type = 70; - isc_dyn_fld_length = 71; - isc_dyn_fld_scale = 72; - isc_dyn_fld_sub_type = 73; - isc_dyn_fld_segment_length = 74; - isc_dyn_fld_query_header = 75; - isc_dyn_fld_edit_string = 76; - isc_dyn_fld_validation_blr = 77; - isc_dyn_fld_validation_source = 78; - isc_dyn_fld_computed_blr = 79; - isc_dyn_fld_computed_source = 80; - isc_dyn_fld_missing_value = 81; - isc_dyn_fld_default_value = 82; - isc_dyn_fld_query_name = 83; - isc_dyn_fld_dimensions = 84; - isc_dyn_fld_not_null = 85; - isc_dyn_fld_precision = 86; - isc_dyn_fld_char_length = 172; - isc_dyn_fld_collation = 173; - isc_dyn_fld_default_source = 193; - isc_dyn_del_default = 197; - isc_dyn_del_validation = 198; - isc_dyn_single_validation = 199; - isc_dyn_fld_character_set = 203; - { } - { Local field specific attributes } - { } - isc_dyn_fld_source = 90; - isc_dyn_fld_base_fld = 91; - isc_dyn_fld_position = 92; - isc_dyn_fld_update_flag = 93; - { } - { Index specific attributes } - { } - isc_dyn_idx_unique = 100; - isc_dyn_idx_inactive = 101; - isc_dyn_idx_type = 103; - isc_dyn_idx_foreign_key = 104; - isc_dyn_idx_ref_column = 105; - isc_dyn_idx_statistic = 204; - { } - { Trigger specific attributes } - { } - isc_dyn_trg_type = 110; - isc_dyn_trg_blr = 111; - isc_dyn_trg_source = 112; - isc_dyn_trg_name = 114; - isc_dyn_trg_sequence = 115; - isc_dyn_trg_inactive = 116; - isc_dyn_trg_msg_number = 117; - isc_dyn_trg_msg = 118; - { } - { Security Class specific attributes } - { } - isc_dyn_scl_acl = 121; - isc_dyn_grant_user = 130; - isc_dyn_grant_proc = 186; - isc_dyn_grant_trig = 187; - isc_dyn_grant_view = 188; - isc_dyn_grant_options = 132; - isc_dyn_grant_user_group = 205; - { } - { Dimension specific information } - { } - isc_dyn_dim_lower = 141; - isc_dyn_dim_upper = 142; - { } - { File specific attributes } - { } - isc_dyn_file_name = 125; - isc_dyn_file_start = 126; - isc_dyn_file_length = 127; - isc_dyn_shadow_number = 128; - isc_dyn_shadow_man_auto = 129; - isc_dyn_shadow_conditional = 130; - { } - { Log file specific attributes } - { } - isc_dyn_log_file_sequence = 177; - isc_dyn_log_file_partitions = 178; - isc_dyn_log_file_serial = 179; - isc_dyn_log_file_overflow = 200; - isc_dyn_log_file_raw = 201; - { } - { Log specific attributes } - { } - isc_dyn_log_group_commit_wait = 189; - isc_dyn_log_buffer_size = 190; - isc_dyn_log_check_point_length = 191; - isc_dyn_log_num_of_buffers = 192; - { } - { Function specific attributes } - { } - isc_dyn_function_name = 145; - isc_dyn_function_type = 146; - isc_dyn_func_module_name = 147; - isc_dyn_func_entry_point = 148; - isc_dyn_func_return_argument = 149; - isc_dyn_func_arg_position = 150; - isc_dyn_func_mechanism = 151; - isc_dyn_filter_in_subtype = 152; - isc_dyn_filter_out_subtype = 153; - isc_dyn_description2 = 154; - isc_dyn_fld_computed_source2 = 155; - isc_dyn_fld_edit_string2 = 156; - isc_dyn_fld_query_header2 = 157; - isc_dyn_fld_validation_source2 = 158; - isc_dyn_trg_msg2 = 159; - isc_dyn_trg_source2 = 160; - isc_dyn_view_source2 = 161; - isc_dyn_xcp_msg2 = 184; - { } - { Generator specific attributes } - { } - isc_dyn_generator_name = 95; - isc_dyn_generator_id = 96; - { } - { Procedure specific attributes } - { } - isc_dyn_prc_inputs = 167; - isc_dyn_prc_outputs = 168; - isc_dyn_prc_source = 169; - isc_dyn_prc_blr = 170; - isc_dyn_prc_source2 = 171; - { } - { Parameter specific attributes } - { } - isc_dyn_prm_number = 138; - isc_dyn_prm_type = 139; - { } - { Relation specific attributes } - { } - isc_dyn_xcp_msg = 185; - { } - { Cascading referential integrity values } - { } - isc_dyn_foreign_key_update = 205; - isc_dyn_foreign_key_delete = 206; - isc_dyn_foreign_key_cascade = 207; - isc_dyn_foreign_key_default = 208; - isc_dyn_foreign_key_null = 209; - isc_dyn_foreign_key_none = 210; - { } - { SQL role values } - { } - isc_dyn_def_sql_role = 211; - isc_dyn_sql_role_name = 212; - isc_dyn_grant_admin_options = 213; - isc_dyn_del_sql_role = 214; - { } - { Last $dyn value assigned } - { } - isc_dyn_last_dyn_value = 216; - { } - { Array slice description language (SDL) } - { } - isc_sdl_version1 = 1; - isc_sdl_eoc = 255; - isc_sdl_relation = 2; - isc_sdl_rid = 3; - isc_sdl_field = 4; - isc_sdl_fid = 5; - isc_sdl_struct = 6; - isc_sdl_variable = 7; - isc_sdl_scalar = 8; - isc_sdl_tiny_integer = 9; - isc_sdl_short_integer = 10; - isc_sdl_long_integer = 11; - isc_sdl_literal = 12; - isc_sdl_add = 13; - isc_sdl_subtract = 14; - isc_sdl_multiply = 15; - isc_sdl_divide = 16; - isc_sdl_negate = 17; - isc_sdl_eql = 18; - isc_sdl_neq = 19; - isc_sdl_gtr = 20; - isc_sdl_geq = 21; - isc_sdl_lss = 22; - isc_sdl_leq = 23; - isc_sdl_and = 24; - isc_sdl_or = 25; - isc_sdl_not = 26; - isc_sdl_while = 27; - isc_sdl_assignment = 28; - isc_sdl_label = 29; - isc_sdl_leave = 30; - isc_sdl_begin = 31; - isc_sdl_end = 32; - isc_sdl_do3 = 33; - isc_sdl_do2 = 34; - isc_sdl_do1 = 35; - isc_sdl_element = 36; - { } - { International text interpretation values } - { } - isc_interp_eng_ascii = 0; - isc_interp_jpn_sjis = 5; - isc_interp_jpn_euc = 6; - { } - { SQL definitions } - { } - SQL_TEXT = 452; - SQL_VARYING = 448; - SQL_SHORT = 500; - SQL_LONG = 496; - SQL_FLOAT = 482; - SQL_DOUBLE = 480; - SQL_D_FLOAT = 530; - SQL_TIMESTAMP = 510; - SQL_BLOB = 520; - SQL_ARRAY = 540; - SQL_QUAD = 550; - SQL_TYPE_TIME = 560; - SQL_TYPE_DATE = 570; - SQL_INT64 = 580; - { Historical alias for pre V6 applications } - SQL_DATE = SQL_TIMESTAMP; - { } - { Blob Subtypes } - { } - { types less than zero are reserved for customer use } - isc_blob_untyped = 0; - { internal subtypes } - isc_blob_text = 1; - isc_blob_blr = 2; - isc_blob_acl = 3; - isc_blob_ranges = 4; - isc_blob_summary = 5; - isc_blob_format = 6; - isc_blob_tra = 7; - isc_blob_extfile = 8; - { the range 20-30 is reserved for dBASE and Paradox types } - isc_blob_formatted_memo = 20; - isc_blob_paradox_ole = 21; - isc_blob_graphic = 22; - isc_blob_dbase_ole = 23; - isc_blob_typed_binary = 24; -