1 |
|
2 |
{$IFDEF FPC}
|
3 |
{$PACKRECORDS C}
|
4 |
{$ENDIF}
|
5 |
|
6 |
|
7 |
{
|
8 |
* PROGRAM: JRD Access Method
|
9 |
* MODULE: inf.h
|
10 |
* DESCRIPTION: Information call declarations.
|
11 |
*
|
12 |
* The contents of this file are subject to the Interbase Public
|
13 |
* License Version 1.0 (the "License"); you may not use this file
|
14 |
* except in compliance with the License. You may obtain a copy
|
15 |
* of the License at http://www.Inprise.com/IPL.html
|
16 |
*
|
17 |
* Software distributed under the License is distributed on an
|
18 |
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
|
19 |
* or implied. See the License for the specific language governing
|
20 |
* rights and limitations under the License.
|
21 |
*
|
22 |
* The Original Code was created by Inprise Corporation
|
23 |
* and its predecessors. Portions created by Inprise Corporation are
|
24 |
* Copyright (C) Inprise Corporation.
|
25 |
*
|
26 |
* All Rights Reserved.
|
27 |
* Contributor(s): ______________________________________.
|
28 |
*
|
29 |
* 2001.07.28: John Bellardo: Added isc_info_rsb_skip to support LIMIT.
|
30 |
}
|
31 |
{$ifndef FIREBIRD_IMPL_INF_PUB_H}
|
32 |
{$define FIREBIRD_IMPL_INF_PUB_H}
|
33 |
{ Common, structural codes }
|
34 |
{************************** }
|
35 |
|
36 |
const
|
37 |
isc_info_end = 1;
|
38 |
isc_info_truncated = 2;
|
39 |
isc_info_error = 3;
|
40 |
isc_info_data_not_ready = 4;
|
41 |
isc_info_length = 126;
|
42 |
isc_info_flag_end = 127;
|
43 |
{**************************** }
|
44 |
{ Database information items }
|
45 |
{**************************** }
|
46 |
{ Begin deprecated WAL and JOURNAL items. }
|
47 |
{ End deprecated WAL and JOURNAL items. }
|
48 |
{ Values 65 -100 unused to avoid conflict with InterBase }
|
49 |
{ codes 126 and 127 are used for special purposes }
|
50 |
{ do not use them here }
|
51 |
{ Return list of features supported by provider of current connection }
|
52 |
{ Leave this LAST! }
|
53 |
|
54 |
type
|
55 |
db_info_types = Longint;
|
56 |
Const
|
57 |
isc_info_db_id = 4;
|
58 |
isc_info_reads = 5;
|
59 |
isc_info_writes = 6;
|
60 |
isc_info_fetches = 7;
|
61 |
isc_info_marks = 8;
|
62 |
isc_info_implementation = 11;
|
63 |
isc_info_isc_version = 12;
|
64 |
isc_info_base_level = 13;
|
65 |
isc_info_page_size = 14;
|
66 |
isc_info_num_buffers = 15;
|
67 |
isc_info_limbo = 16;
|
68 |
isc_info_current_memory = 17;
|
69 |
isc_info_max_memory = 18;
|
70 |
isc_info_window_turns = 19;
|
71 |
isc_info_license = 20;
|
72 |
isc_info_allocation = 21;
|
73 |
isc_info_attachment_id = 22;
|
74 |
isc_info_read_seq_count = 23;
|
75 |
isc_info_read_idx_count = 24;
|
76 |
isc_info_insert_count = 25;
|
77 |
isc_info_update_count = 26;
|
78 |
isc_info_delete_count = 27;
|
79 |
isc_info_backout_count = 28;
|
80 |
isc_info_purge_count = 29;
|
81 |
isc_info_expunge_count = 30;
|
82 |
isc_info_sweep_interval = 31;
|
83 |
isc_info_ods_version = 32;
|
84 |
isc_info_ods_minor_version = 33;
|
85 |
isc_info_no_reserve = 34;
|
86 |
isc_info_logfile = 35;
|
87 |
isc_info_cur_logfile_name = 36;
|
88 |
isc_info_cur_log_part_offset = 37;
|
89 |
isc_info_num_wal_buffers = 38;
|
90 |
isc_info_wal_buffer_size = 39;
|
91 |
isc_info_wal_ckpt_length = 40;
|
92 |
isc_info_wal_cur_ckpt_interval = 41;
|
93 |
isc_info_wal_prv_ckpt_fname = 42;
|
94 |
isc_info_wal_prv_ckpt_poffset = 43;
|
95 |
isc_info_wal_recv_ckpt_fname = 44;
|
96 |
isc_info_wal_recv_ckpt_poffset = 45;
|
97 |
isc_info_wal_grpc_wait_usecs = 47;
|
98 |
isc_info_wal_num_io = 48;
|
99 |
isc_info_wal_avg_io_size = 49;
|
100 |
isc_info_wal_num_commits = 50;
|
101 |
isc_info_wal_avg_grpc_size = 51;
|
102 |
isc_info_forced_writes = 52;
|
103 |
isc_info_user_names = 53;
|
104 |
isc_info_page_errors = 54;
|
105 |
isc_info_record_errors = 55;
|
106 |
isc_info_bpage_errors = 56;
|
107 |
isc_info_dpage_errors = 57;
|
108 |
isc_info_ipage_errors = 58;
|
109 |
isc_info_ppage_errors = 59;
|
110 |
isc_info_tpage_errors = 60;
|
111 |
isc_info_set_page_buffers = 61;
|
112 |
isc_info_db_sql_dialect = 62;
|
113 |
isc_info_db_read_only = 63;
|
114 |
isc_info_db_size_in_pages = 64;
|
115 |
frb_info_att_charset = 101;
|
116 |
isc_info_db_class = 102;
|
117 |
isc_info_firebird_version = 103;
|
118 |
isc_info_oldest_transaction = 104;
|
119 |
isc_info_oldest_active = 105;
|
120 |
isc_info_oldest_snapshot = 106;
|
121 |
isc_info_next_transaction = 107;
|
122 |
isc_info_db_provider = 108;
|
123 |
isc_info_active_transactions = 109;
|
124 |
isc_info_active_tran_count = 110;
|
125 |
isc_info_creation_date = 111;
|
126 |
isc_info_db_file_size = 112;
|
127 |
fb_info_page_contents = 113;
|
128 |
fb_info_implementation = 114;
|
129 |
fb_info_page_warns = 115;
|
130 |
fb_info_record_warns = 116;
|
131 |
fb_info_bpage_warns = 117;
|
132 |
fb_info_dpage_warns = 118;
|
133 |
fb_info_ipage_warns = 119;
|
134 |
fb_info_ppage_warns = 120;
|
135 |
fb_info_tpage_warns = 121;
|
136 |
fb_info_pip_errors = 122;
|
137 |
fb_info_pip_warns = 123;
|
138 |
fb_info_pages_used = 124;
|
139 |
fb_info_pages_free = 125;
|
140 |
fb_info_ses_idle_timeout_db = 129;
|
141 |
fb_info_ses_idle_timeout_att = 130;
|
142 |
fb_info_ses_idle_timeout_run = 131;
|
143 |
fb_info_conn_flags = 132;
|
144 |
fb_info_crypt_key = 133;
|
145 |
fb_info_crypt_state = 134;
|
146 |
fb_info_statement_timeout_db = 135;
|
147 |
fb_info_statement_timeout_att = 136;
|
148 |
fb_info_protocol_version = 137;
|
149 |
fb_info_crypt_plugin = 138;
|
150 |
fb_info_creation_timestamp_tz = 139;
|
151 |
fb_info_wire_crypt = 140;
|
152 |
fb_info_features = 141;
|
153 |
fb_info_next_attachment = 142;
|
154 |
fb_info_next_statement = 143;
|
155 |
fb_info_db_guid = 144;
|
156 |
fb_info_db_file_id = 145;
|
157 |
fb_info_replica_mode = 146;
|
158 |
isc_info_db_last_value = 147;
|
159 |
|
160 |
{ flags set in fb_info_crypt_state }
|
161 |
|
162 |
type
|
163 |
db_info_crypt = Longint;
|
164 |
Const
|
165 |
fb_info_crypt_encrypted = $01;
|
166 |
fb_info_crypt_process = $02;
|
167 |
|
168 |
{ response to fb_info_features }
|
169 |
{ Multiple prepared statements in single attachment }
|
170 |
{ Multiple concurrent transaction in single attachment }
|
171 |
{ Query parameters can be named }
|
172 |
{ ALTER SESSION RESET is supported }
|
173 |
{ Read consistency TIL is supported }
|
174 |
{ Statement timeout is supported }
|
175 |
{ Prepared statements are not dropped on transaction end }
|
176 |
{ Not really a feature. Keep this last. }
|
177 |
|
178 |
type
|
179 |
info_features = Longint;
|
180 |
Const
|
181 |
fb_feature_multi_statements = 1;
|
182 |
fb_feature_multi_transactions = 2;
|
183 |
fb_feature_named_parameters = 3;
|
184 |
fb_feature_session_reset = 4;
|
185 |
fb_feature_read_consistency = 5;
|
186 |
fb_feature_statement_timeout = 6;
|
187 |
fb_feature_statement_long_life = 7;
|
188 |
fb_feature_max = 8;
|
189 |
|
190 |
{ response to fb_info_replica_mode }
|
191 |
|
192 |
type
|
193 |
replica_mode = Longint;
|
194 |
Const
|
195 |
fb_info_replica_none = 0;
|
196 |
fb_info_replica_read_only = 1;
|
197 |
fb_info_replica_read_write = 2;
|
198 |
|
199 |
isc_info_version = isc_info_isc_version;
|
200 |
{************************************ }
|
201 |
{ Database information return values }
|
202 |
{************************************ }
|
203 |
{ Leave this LAST! }
|
204 |
|
205 |
type
|
206 |
info_db_implementations = Longint;
|
207 |
Const
|
208 |
isc_info_db_impl_rdb_vms = 1;
|
209 |
isc_info_db_impl_rdb_eln = 2;
|
210 |
isc_info_db_impl_rdb_eln_dev = 3;
|
211 |
isc_info_db_impl_rdb_vms_y = 4;
|
212 |
isc_info_db_impl_rdb_eln_y = 5;
|
213 |
isc_info_db_impl_jri = 6;
|
214 |
isc_info_db_impl_jsv = 7;
|
215 |
isc_info_db_impl_isc_apl_68K = 25;
|
216 |
isc_info_db_impl_isc_vax_ultr = 26;
|
217 |
isc_info_db_impl_isc_vms = 27;
|
218 |
isc_info_db_impl_isc_sun_68k = 28;
|
219 |
isc_info_db_impl_isc_os2 = 29;
|
220 |
isc_info_db_impl_isc_sun4 = 30;
|
221 |
isc_info_db_impl_isc_hp_ux = 31;
|
222 |
isc_info_db_impl_isc_sun_386i = 32;
|
223 |
isc_info_db_impl_isc_vms_orcl = 33;
|
224 |
isc_info_db_impl_isc_mac_aux = 34;
|
225 |
isc_info_db_impl_isc_rt_aix = 35;
|
226 |
isc_info_db_impl_isc_mips_ult = 36;
|
227 |
isc_info_db_impl_isc_xenix = 37;
|
228 |
isc_info_db_impl_isc_dg = 38;
|
229 |
isc_info_db_impl_isc_hp_mpexl = 39;
|
230 |
isc_info_db_impl_isc_hp_ux68K = 40;
|
231 |
isc_info_db_impl_isc_sgi = 41;
|
232 |
isc_info_db_impl_isc_sco_unix = 42;
|
233 |
isc_info_db_impl_isc_cray = 43;
|
234 |
isc_info_db_impl_isc_imp = 44;
|
235 |
isc_info_db_impl_isc_delta = 45;
|
236 |
isc_info_db_impl_isc_next = 46;
|
237 |
isc_info_db_impl_isc_dos = 47;
|
238 |
isc_info_db_impl_m88K = 48;
|
239 |
isc_info_db_impl_unixware = 49;
|
240 |
isc_info_db_impl_isc_winnt_x86 = 50;
|
241 |
isc_info_db_impl_isc_epson = 51;
|
242 |
isc_info_db_impl_alpha_osf = 52;
|
243 |
isc_info_db_impl_alpha_vms = 53;
|
244 |
isc_info_db_impl_netware_386 = 54;
|
245 |
isc_info_db_impl_win_only = 55;
|
246 |
isc_info_db_impl_ncr_3000 = 56;
|
247 |
isc_info_db_impl_winnt_ppc = 57;
|
248 |
isc_info_db_impl_dg_x86 = 58;
|
249 |
isc_info_db_impl_sco_ev = 59;
|
250 |
isc_info_db_impl_i386 = 60;
|
251 |
isc_info_db_impl_freebsd = 61;
|
252 |
isc_info_db_impl_netbsd = 62;
|
253 |
isc_info_db_impl_darwin_ppc = 63;
|
254 |
isc_info_db_impl_sinixz = 64;
|
255 |
isc_info_db_impl_linux_sparc = 65;
|
256 |
isc_info_db_impl_linux_amd64 = 66;
|
257 |
isc_info_db_impl_freebsd_amd64 = 67;
|
258 |
isc_info_db_impl_winnt_amd64 = 68;
|
259 |
isc_info_db_impl_linux_ppc = 69;
|
260 |
isc_info_db_impl_darwin_x86 = 70;
|
261 |
isc_info_db_impl_linux_mipsel = 71;
|
262 |
isc_info_db_impl_linux_mips = 72;
|
263 |
isc_info_db_impl_darwin_x64 = 73;
|
264 |
isc_info_db_impl_sun_amd64 = 74;
|
265 |
isc_info_db_impl_linux_arm = 75;
|
266 |
isc_info_db_impl_linux_ia64 = 76;
|
267 |
isc_info_db_impl_darwin_ppc64 = 77;
|
268 |
isc_info_db_impl_linux_s390x = 78;
|
269 |
isc_info_db_impl_linux_s390 = 79;
|
270 |
isc_info_db_impl_linux_sh = 80;
|
271 |
isc_info_db_impl_linux_sheb = 81;
|
272 |
isc_info_db_impl_linux_hppa = 82;
|
273 |
isc_info_db_impl_linux_alpha = 83;
|
274 |
isc_info_db_impl_linux_arm64 = 84;
|
275 |
isc_info_db_impl_linux_ppc64el = 85;
|
276 |
isc_info_db_impl_linux_ppc64 = 86;
|
277 |
isc_info_db_impl_linux_m68k = 87;
|
278 |
isc_info_db_impl_linux_riscv64 = 88;
|
279 |
isc_info_db_impl_last_value = 89;
|
280 |
|
281 |
{ Leave this LAST! }
|
282 |
|
283 |
type
|
284 |
info_db_class = Longint;
|
285 |
Const
|
286 |
isc_info_db_class_access = 1;
|
287 |
isc_info_db_class_y_valve = 2;
|
288 |
isc_info_db_class_rem_int = 3;
|
289 |
isc_info_db_class_rem_srvr = 4;
|
290 |
isc_info_db_class_pipe_int = 7;
|
291 |
isc_info_db_class_pipe_srvr = 8;
|
292 |
isc_info_db_class_sam_int = 9;
|
293 |
isc_info_db_class_sam_srvr = 10;
|
294 |
isc_info_db_class_gateway = 11;
|
295 |
isc_info_db_class_cache = 12;
|
296 |
isc_info_db_class_classic_access = 13;
|
297 |
isc_info_db_class_server_access = 14;
|
298 |
isc_info_db_class_last_value = 15;
|
299 |
|
300 |
{ Leave this LAST! }
|
301 |
|
302 |
type
|
303 |
info_db_provider = Longint;
|
304 |
Const
|
305 |
isc_info_db_code_rdb_eln = 1;
|
306 |
isc_info_db_code_rdb_vms = 2;
|
307 |
isc_info_db_code_interbase = 3;
|
308 |
isc_info_db_code_firebird = 4;
|
309 |
isc_info_db_code_last_value = 5;
|
310 |
|
311 |
{*************************** }
|
312 |
{ Request information items }
|
313 |
{*************************** }
|
314 |
isc_info_number_messages = 4;
|
315 |
isc_info_max_message = 5;
|
316 |
isc_info_max_send = 6;
|
317 |
isc_info_max_receive = 7;
|
318 |
isc_info_state = 8;
|
319 |
isc_info_message_number = 9;
|
320 |
isc_info_message_size = 10;
|
321 |
isc_info_request_cost = 11;
|
322 |
isc_info_access_path = 12;
|
323 |
isc_info_req_select_count = 13;
|
324 |
isc_info_req_insert_count = 14;
|
325 |
isc_info_req_update_count = 15;
|
326 |
isc_info_req_delete_count = 16;
|
327 |
{******************* }
|
328 |
{ Access path items }
|
329 |
{******************* }
|
330 |
isc_info_rsb_end = 0;
|
331 |
isc_info_rsb_begin = 1;
|
332 |
isc_info_rsb_type = 2;
|
333 |
isc_info_rsb_relation = 3;
|
334 |
isc_info_rsb_plan = 4;
|
335 |
{*********** }
|
336 |
{ RecordSource (RSB) types }
|
337 |
{*********** }
|
338 |
isc_info_rsb_unknown = 1;
|
339 |
isc_info_rsb_indexed = 2;
|
340 |
isc_info_rsb_navigate = 3;
|
341 |
isc_info_rsb_sequential = 4;
|
342 |
isc_info_rsb_cross = 5;
|
343 |
isc_info_rsb_sort = 6;
|
344 |
isc_info_rsb_first = 7;
|
345 |
isc_info_rsb_boolean = 8;
|
346 |
isc_info_rsb_union = 9;
|
347 |
isc_info_rsb_aggregate = 10;
|
348 |
isc_info_rsb_merge = 11;
|
349 |
isc_info_rsb_ext_sequential = 12;
|
350 |
isc_info_rsb_ext_indexed = 13;
|
351 |
isc_info_rsb_ext_dbkey = 14;
|
352 |
isc_info_rsb_left_cross = 15;
|
353 |
isc_info_rsb_select = 16;
|
354 |
isc_info_rsb_sql_join = 17;
|
355 |
isc_info_rsb_simulate = 18;
|
356 |
isc_info_rsb_sim_cross = 19;
|
357 |
isc_info_rsb_once = 20;
|
358 |
isc_info_rsb_procedure = 21;
|
359 |
isc_info_rsb_skip = 22;
|
360 |
isc_info_rsb_virt_sequential = 23;
|
361 |
isc_info_rsb_recursive = 24;
|
362 |
isc_info_rsb_window = 25;
|
363 |
isc_info_rsb_singular = 26;
|
364 |
isc_info_rsb_writelock = 27;
|
365 |
isc_info_rsb_buffer = 28;
|
366 |
isc_info_rsb_hash = 29;
|
367 |
{******************** }
|
368 |
{ Bitmap expressions }
|
369 |
{******************** }
|
370 |
isc_info_rsb_and = 1;
|
371 |
isc_info_rsb_or = 2;
|
372 |
isc_info_rsb_dbkey = 3;
|
373 |
isc_info_rsb_index = 4;
|
374 |
isc_info_req_active = 2;
|
375 |
isc_info_req_inactive = 3;
|
376 |
isc_info_req_send = 4;
|
377 |
isc_info_req_receive = 5;
|
378 |
isc_info_req_select = 6;
|
379 |
isc_info_req_sql_stall = 7;
|
380 |
{************************ }
|
381 |
{ Blob information items }
|
382 |
{************************ }
|
383 |
isc_info_blob_num_segments = 4;
|
384 |
isc_info_blob_max_segment = 5;
|
385 |
isc_info_blob_total_length = 6;
|
386 |
isc_info_blob_type = 7;
|
387 |
{******************************* }
|
388 |
{ Transaction information items }
|
389 |
{******************************* }
|
390 |
isc_info_tra_id = 4;
|
391 |
isc_info_tra_oldest_interesting = 5;
|
392 |
isc_info_tra_oldest_snapshot = 6;
|
393 |
isc_info_tra_oldest_active = 7;
|
394 |
isc_info_tra_isolation = 8;
|
395 |
isc_info_tra_access = 9;
|
396 |
isc_info_tra_lock_timeout = 10;
|
397 |
fb_info_tra_dbpath = 11;
|
398 |
fb_info_tra_snapshot_number = 12;
|
399 |
{ isc_info_tra_isolation responses }
|
400 |
isc_info_tra_consistency = 1;
|
401 |
isc_info_tra_concurrency = 2;
|
402 |
isc_info_tra_read_committed = 3;
|
403 |
{ isc_info_tra_read_committed options }
|
404 |
isc_info_tra_no_rec_version = 0;
|
405 |
isc_info_tra_rec_version = 1;
|
406 |
isc_info_tra_read_consistency = 2;
|
407 |
{ isc_info_tra_access responses }
|
408 |
isc_info_tra_readonly = 0;
|
409 |
isc_info_tra_readwrite = 1;
|
410 |
{*********************** }
|
411 |
{ SQL information items }
|
412 |
{*********************** }
|
413 |
isc_info_sql_select = 4;
|
414 |
isc_info_sql_bind = 5;
|
415 |
isc_info_sql_num_variables = 6;
|
416 |
isc_info_sql_describe_vars = 7;
|
417 |
isc_info_sql_describe_end = 8;
|
418 |
isc_info_sql_sqlda_seq = 9;
|
419 |
isc_info_sql_message_seq = 10;
|
420 |
isc_info_sql_type = 11;
|
421 |
isc_info_sql_sub_type = 12;
|
422 |
isc_info_sql_scale = 13;
|
423 |
isc_info_sql_length = 14;
|
424 |
isc_info_sql_null_ind = 15;
|
425 |
isc_info_sql_field = 16;
|
426 |
isc_info_sql_relation = 17;
|
427 |
isc_info_sql_owner = 18;
|
428 |
isc_info_sql_alias = 19;
|
429 |
isc_info_sql_sqlda_start = 20;
|
430 |
isc_info_sql_stmt_type = 21;
|
431 |
isc_info_sql_get_plan = 22;
|
432 |
isc_info_sql_records = 23;
|
433 |
isc_info_sql_batch_fetch = 24;
|
434 |
isc_info_sql_relation_alias = 25;
|
435 |
isc_info_sql_explain_plan = 26;
|
436 |
isc_info_sql_stmt_flags = 27;
|
437 |
isc_info_sql_stmt_timeout_user = 28;
|
438 |
isc_info_sql_stmt_timeout_run = 29;
|
439 |
isc_info_sql_stmt_blob_align = 30;
|
440 |
{******************************* }
|
441 |
{ SQL information return values }
|
442 |
{******************************* }
|
443 |
isc_info_sql_stmt_select = 1;
|
444 |
isc_info_sql_stmt_insert = 2;
|
445 |
isc_info_sql_stmt_update = 3;
|
446 |
isc_info_sql_stmt_delete = 4;
|
447 |
isc_info_sql_stmt_ddl = 5;
|
448 |
isc_info_sql_stmt_get_segment = 6;
|
449 |
isc_info_sql_stmt_put_segment = 7;
|
450 |
isc_info_sql_stmt_exec_procedure = 8;
|
451 |
isc_info_sql_stmt_start_trans = 9;
|
452 |
isc_info_sql_stmt_commit = 10;
|
453 |
isc_info_sql_stmt_rollback = 11;
|
454 |
isc_info_sql_stmt_select_for_upd = 12;
|
455 |
isc_info_sql_stmt_set_generator = 13;
|
456 |
isc_info_sql_stmt_savepoint = 14;
|
457 |
{$endif}
|
458 |
{ FIREBIRD_IMPL_INF_PUB_H }
|
459 |
|