#ifndef DSRI_H #define DSRI_H /* * DSRI.H: Generated Fri Mar 26 14:41:00 2010 * GENERATED FILE. PLEASE DO NOT EDIT. */ /* *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * D S R I _ D E F I N I T I O N S * Copyright (c) 1984 through 2010 * by * Oracle Corporation, Redwood Shores, Ca. U.S.A. * This software is furnished under a license and may be used and copied * only in accordance with the terms of such license and with the * inclusion of the above copyright notice. This software or any other * copies thereof may not be provided or otherwise made available to any * other person. No title to and ownership of the software is hereby * transferred. * The information in this software is subject to change without notice * and should not be construed as a commitment by Oracle Corporation. * ABSTRACT * These are the values that are defined by the DSRI architecture. * They include the binary language representation (BLR), * metadata binary language representation (MBLR), parameter * blocks, information calls and other things. *--------------------------------------------------------------------------- */ /* *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * RDB_K_ * This section contains the vakues for all the RDB_K_ values *--------------------------------------------------------------------------- */ /* * These are the general limits established by the architecture */ #define RDB_K_MAX_SYNONYM_CHAIN 64 #define RDB_K_MESSAGE_VECTOR_SIZE 20 /* * Define the values for RDB_SYSTEM_FLAG */ #define RDB_K_SYSFLG_USER 0 #define RDB_K_SYSFLG_SYSTEM 1 #define RDB_K_SYSFLG_LAYERED 2 /* *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * RDB_K_DB_TYPE_ * This section contains the values for the database types. The values are u * mainly at create, attach, change and delete database time. *--------------------------------------------------------------------------- */ #define RDB_K_DB_TYPE_UNKNOWN 0 #define RDB_K_DB_TYPE_MIN 1 /* Rdb */ #define RDB_K_DB_TYPE_VMS 1 #define RDB_K_DB_TYPE_DECRDB RDB_K_DB_TYPE_VMS #define RDB_K_DB_TYPE_RDB RDB_K_DB_TYPE_VMS /* Rdb/ELN */ #define RDB_K_DB_TYPE_ELAN 2 /* VIDA for IDMS/R */ #define RDB_K_DB_TYPE_VIDA 3 /* RdbAccess for DB2 */ #define RDB_K_DB_TYPE_VIDA2 4 /* RdbAccess for Oracle */ #define RDB_K_DB_TYPE_VIDAO 5 /* RdbAccess for RMS */ #define RDB_K_DB_TYPE_NSDS 6 /* Data Access Facility */ #define RDB_K_DB_TYPE_DAF RDB_K_DB_TYPE_NSDS /* Internal testing */ #define RDB_K_DB_TYPE_BRIDGE 7 /* DB Integrator */ #define RDB_K_DB_TYPE_DBI 8 /* RdbAccess for EDA/SQL */ #define RDB_K_DB_TYPE_EDASQL 9 /* RdbAccess for SQL400 */ #define RDB_K_DB_TYPE_SQL400 10 /* RdbAccess for SQL Access */ #define RDB_K_DB_TYPE_SQLACC 11 /* RdbAccess for Sybase */ #define RDB_K_DB_TYPE_SYBASE 12 /* RdbAccess for ORACLE */ #define RDB_K_DB_TYPE_ORACLE 13 /* RdbAccess for DB2 */ #define RDB_K_DB_TYPE_DB2 14 /* DB Integrator Gateway for Sequelink (SQLNK) */ #define RDB_K_DB_TYPE_SQLNK 15 /* DB Integrator Gateway for PC Data (ODBC) */ #define RDB_K_DB_TYPE_ODBC 16 /* DB Integrator Gateway for RMS and Custom Drivers (NREL) */ #define RDB_K_DB_TYPE_NREL 17 #define RDB_K_DB_TYPE_MAX 17 /* *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * RDB_K_FACILITY_ * This section contains the facility values for the database systems. *--------------------------------------------------------------------------- */ #define RDB_K_FACILITY_ALL 0 #define RDB_K_FACILITY_RDB_VMS 1 #define RDB_K_FACILITY_DECRDB RDB_K_FACILITY_RDB_VMS #define RDB_K_FACILITY_RDB RDB_K_FACILITY_RDB_VMS #define RDB_K_FACILITY_RDB_ELN 2 #define RDB_K_FACILITY_VIDA 3 #define RDB_K_FACILITY_VIDA2 4 #define RDB_K_FACILITY_VIDAO 5 #define RDB_K_FACILITY_NSDS 6 #define RDB_K_FACILITY_DAF RDB_K_FACILITY_NSDS #define RDB_K_FACILITY_BRIDGE 7 #define RDB_K_FACILITY_DBI 8 #define RDB_K_FACILITY_EDASQL 9 #define RDB_K_FACILITY_SQL400 10 #define RDB_K_FACILITY_SQLACC 11 #define RDB_K_FACILITY_SYBASE 12 #define RDB_K_FACILITY_ORACLE 13 #define RDB_K_FACILITY_DB2 14 #define RDB_K_FACILITY_SQLNK 15 #define RDB_K_FACILITY_ODBC 16 #define RDB_K_FACILITY_NREL 17 /* *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * RDB_K_SECURE_ * RDB_K_SECURE_FAC_ * This section contains the security facility values. *--------------------------------------------------------------------------- */ #define RDB_K_SECURE_VERSION1 1 #define RDB_K_SECURE_VERSION2 2 #define RDB_K_SECURE_FAC_UNKNOWN 0 #define RDB_K_SECURE_FAC_VMS 1 #define RDB_K_SECURE_FAC_DECRDB RDB_K_SECURE_FAC_VMS #define RDB_K_SECURE_FAC_RDB RDB_K_SECURE_FAC_VMS #define RDB_K_SECURE_FAC_ELN 2 #define RDB_K_SECURE_FAC_REMOTE 3 #define RDB_K_SECURE_FAC_VIDA 4 #define RDB_K_SECURE_FAC_VIDA2 5 #define RDB_K_SECURE_FAC_VIDAO 6 #define RDB_K_SECURE_FAC_NSDS 7 #define RDB_K_SECURE_FAC_DAF RDB_K_SECURE_FAC_NSDS #define RDB_K_SECURE_FAC_BRIDGE 8 #define RDB_K_SECURE_FAC_DBI 9 #define RDB_K_SECURE_FAC_EDASQL 10 #define RDB_K_SECURE_FAC_SQL400 11 #define RDB_K_SECURE_FAC_SQLACC 12 #define RDB_K_SECURE_FAC_SYBASE 13 #define RDB_K_SECURE_FAC_ORACLE 14 #define RDB_K_SECURE_FAC_DB2 15 #define RDB_K_SECURE_FAC_SQLNK 16 #define RDB_K_SECURE_FAC_ODBC 17 #define RDB_K_SECURE_FAC_NREL 18 #define RDB_K_SECURE_MIN 1 #define RDB_K_SECURE_USER_NAME 1 #define RDB_K_SECURE_USER_PWD 2 #define RDB_K_SECURE_CONNECTION_NAME 3 #define RDB_K_SECURE_CANCEL_CONNECTION 4 #define RDB_K_SECURE_OVERRIDE_PRIVS 5 #define RDB_K_SECURE_REFRESH_UIC 6 #define RDB_K_SECURE_MAX 6 /* *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * RDB_K_HANDLE_ * This section contains the handle values. *--------------------------------------------------------------------------- */ #define RDB_K_HANDLE_MIN 1 #define RDB_K_HANDLE_DATABASE 1 #define RDB_K_HANDLE_TRANSACTION 2 #define RDB_K_HANDLE_REQUEST 3 #define RDB_K_HANDLE_SEGMENTED_STRING 4 #define RDB_K_HANDLE_MARKPOINT 5 #define RDB_K_HANDLE_NOTREQUIRED 6 #define RDB_K_HANDLE_MAX 6 /* *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * RDB_K_PLTFRM_ * This section contains the platform values. *--------------------------------------------------------------------------- */ #define RDB_K_PLTFRM_MIN 0 #define RDB_K_PLTFRM_VMS 0 #define RDB_K_PLTFRM_UNIX 1 #define RDB_K_PLTFRM_WNT 2 #define RDB_K_PLTFRM_MAX 2 /* *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * RDB_K_CALLBACK_ * This section contains the callback values. *--------------------------------------------------------------------------- */ #define RDB_K_CALLBACK_MIN 0 /* The value zero is the initial value and should never be seen by SQL */ #define RDB_K_CALLBACK_UNKNOWN 0 /* The transaction ended with a sucessful COMMIT */ #define RDB_K_CALLBACK_COMMITTED 1 /* The transaction ended with a successful ROLLBACK */ #define RDB_K_CALLBACK_ROLLEDBACK 2 /* The transaction ended with either a ROLLBACK (such as after constraint */ /* failure) or with a 2PC failure. Whether the ultimate resolution is */ /* COMMIT or ROLLBACK can not be determined */ #define RDB_K_CALLBACK_FAILED 3 #define RDB_K_CALLBACK_MAX 3 /* *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * RDB_K_PROFILE_ * This section contains the special values stored in RDB_PROFILE_TYPE * column in the RDB_PROFILES table * Note: RDB_K_PROFILE_UNKNOWN indicates that the target is either * a role (RDB_K_PROFILE_ROLES) or a user (RDB_K_PROFILE_USERS) and that * the engine should make the determination from the operating system. *--------------------------------------------------------------------------- */ #define RDB_K_PROFILE_MIN 0 #define RDB_K_PROFILE_QUOTAS 0 #define RDB_K_PROFILE_ROLES 1 #define RDB_K_PROFILE_DEFAULT_ROLES 2 #define RDB_K_PROFILE_USERS 3 #define RDB_K_PROFILE_UNKNOWN 4 #define RDB_K_PROFILE_MAX 4 /* * These literals are reserved values for users (database creator, * DEFAULT, PUBLIC) and roles (BATCH, DIALUP, INTERACTIVE, NETWORK, LOCAL * and REMOTE) */ #define RDB_K_PRF_DB_CREATOR_ID 1 #define RDB_K_PRF_DEFAULT_ID 2 #define RDB_K_PRF_PUBLIC_ID 1073741823 /* %X3FFFFFFF */ #define RDB_K_PRF_BATCH_ID -2147483647 /* %X80000001 */ #define RDB_K_PRF_DIALUP_ID -2147483646 /* %X80000002 */ #define RDB_K_PRF_INTERACTIVE_ID -2147483645 /* %X80000003 */ #define RDB_K_PRF_LOCAL_ID -2147483644 /* %X80000004 */ #define RDB_K_PRF_NETWORK_ID -2147483643 /* %X80000005 */ #define RDB_K_PRF_REMOTE_ID -2147483642 /* %X80000006 */ /* * These values define the bit mapping for the profile privilege masks * */ /* Symbolic name Value */ /* ------------- ----- */ #define RDB_K_PRF_ALL 0 #define RDB_K_PRF_ANY_CATALOG 1 #define RDB_K_PRF_ANY_COLLATION 2 #define RDB_K_PRF_ANY_FIELD 3 #define RDB_K_PRF_ANY_FUNCTION 4 #define RDB_K_PRF_ANY_INDEX 5 #define RDB_K_PRF_ANY_MODULE 6 #define RDB_K_PRF_ANY_OUTLINE 7 #define RDB_K_PRF_ANY_PROCEDURE 8 #define RDB_K_PRF_ANY_PROFILE 9 #define RDB_K_PRF_ANY_RELATION 10 #define RDB_K_PRF_ANY_REF_ROLE 11 #define RDB_K_PRF_ANY_REF_SYSPRIV 12 #define RDB_K_PRF_ANY_ROLE 13 #define RDB_K_PRF_ANY_SCHEMA 14 #define RDB_K_PRF_ANY_SEQUENCE 15 #define RDB_K_PRF_ANY_STOMAP 16 #define RDB_K_PRF_ANY_SYNONYM 17 #define RDB_K_PRF_ANY_TRIGGER 18 #define RDB_K_PRF_ANY_TYPE 19 #define RDB_K_PRF_ANY_USER 20 #define RDB_K_PRF_ANY_VIEW 21 #define RDB_K_PRF_ANY_TEMP_TABLE 22 /* Mask name Value */ /* ------------- ----- */ #define RDB_M_PRF_ALL (1< * RDB_K_DPB2_ * This section contains all the values for the Database Parameter Block used * in attach, create and change database *--------------------------------------------------------------------------- */ /* * DPB version tags */ #define RDB_K_DPB_VERSION1 1 #define RDB_K_DPB_VERSION2 2 /* *----------------------------------------------------------------------------- * DPB version 1 tags *----------------------------------------------------------------------------- */ #define RDB_K_DPB_MIN 1 #define RDB_K_DPB_CDD_PATHNAME 1 #define RDB_K_DPB_ALLOCATION 2 #define RDB_K_DPB_AIJ 3 #define RDB_K_DPB_PAGE_SIZE 4 #define RDB_K_DPB_NUM_BUFF 5 #define RDB_K_DPB_BUFFER_LENGTH 6 #define RDB_K_DPB_DEBUG 7 #define RDB_K_DPB_GARBAGE_COLLECT 8 #define RDB_K_DPB_VERIFY 9 #define RDB_K_DPB_SWEEP 10 #define RDB_K_DPB_ENABLE_JOURNAL 11 #define RDB_K_DPB_DISABLE_JOURNAL 12 #define RDB_K_DPB_DBKEY_SCOPE 13 #define RDB_K_DPB_NUM_USERS 14 #define RDB_K_DPB_DB_EXTENT 15 #define RDB_K_DPB_EXT_DB_MIN_NUM_PAGES 16 #define RDB_K_DPB_EXT_DB_MAX_NUM_PAGES 17 #define RDB_K_DPB_EXT_DB_PCT_GROWTH 18 #define RDB_K_DPB_SNP_ALLOCATION 19 #define RDB_K_DPB_SNP_ENABLED 20 #define RDB_K_DPB_SNP_DISABLED 21 #define RDB_K_DPB_SNP_EXTENT 22 #define RDB_K_DPB_EXT_SNP_MIN_NUM_PAGES 23 #define RDB_K_DPB_EXT_SNP_MAX_NUM_PAGES 24 #define RDB_K_DPB_EXT_SNP_PCT_GROWTH 25 #define RDB_K_DPB_AIJ_CONTINUOUS 26 #define RDB_K_DPB_AIJ_ONCE 27 #define RDB_K_DPB_AIJ_SPOOL_FILE 28 #define RDB_K_DPB_DESCRIPTION_SOURCE 29 #define RDB_K_DPB_CONVERT 30 #define RDB_K_DPB_SNAPSHOT 31 #define RDB_K_DPB_OPEN_MANUAL 32 #define RDB_K_DPB_OPEN_AUTOMATIC 33 #define RDB_K_DPB_DEFINE_STORAGE 34 #define RDB_K_DPB_CHANGE_STORAGE 35 #define RDB_K_DPB_STORAGE_NAME 36 #define RDB_K_DPB_FILESPEC 37 #define RDB_K_DPB_EXTENSIBLE 38 #define RDB_K_DPB_SNP_DEFERRED 39 #define RDB_K_DPB_NUM_NODES 40 #define RDB_K_DPB_FILE_TYPE 41 #define RDB_K_DPB_CDD_MAINTAINED 42 #define RDB_K_DPB_CDD_REQUIRED 43 #define RDB_K_DPB_SEGMENT_AREA 44 /* SPAMS is not currently used */ #define RDB_K_DPB_SPAMS 45 #define RDB_K_DPB_SPAM_THRESHOLD_1 46 #define RDB_K_DPB_SPAM_THRESHOLD_2 47 #define RDB_K_DPB_SPAM_THRESHOLD_3 48 #define RDB_K_DPB_SPAM_INTERVAL 49 #define RDB_K_DPB_AIJ_ALLOCATION 50 #define RDB_K_DPB_AIJ_EXTENT 51 #define RDB_K_DPB_DBR_BUFFERS 52 #define RDB_K_DPB_END_STORAGE_AREA 53 #define RDB_K_DPB_MAX 53 /* *----------------------------------------------------------------------------- * DPB version 1 sub options *----------------------------------------------------------------------------- */ /* DBKEY scope */ #define RDB_K_DPB_DBKEY_SCOPE_TRANS 0 #define RDB_K_DPB_DBKEY_SCOPE_ATTACH 1 /* Deferred snapshots */ #define RDB_K_DPB_SNP_DEFERRED_NO 0 #define RDB_K_DPB_SNP_DEFERRED_YES 1 /* CDD required */ #define RDB_K_DPB_EXT_DICT_IGNORED 0 #define RDB_K_DPB_EXT_DICT_REQUIRED 1 /* CDD update */ #define RDB_K_DPB_CLI_DICT_IGNORED 0 #define RDB_K_DPB_CLI_DICT_MAINTAINED 1 #define RDB_K_DPB_CLI_DICT_UNLINK 2 /* CDD database */ #define RDB_K_DPB_DICT_DATABASE_NO 0 #define RDB_K_DPB_DICT_DATABASE_YES 1 /* Multischema */ #define RDB_K_DPB_MULTISCHEMA_NO 0 #define RDB_K_DPB_MULTISCHEMA_YES 1 /* Global buffering */ #define RDB_K_DPB_GB_OFF 0 #define RDB_K_DPB_GB_ON 1 /* Fast commit */ #define RDB_K_DPB_CHKPNT_OFF 0 #define RDB_K_DPB_CHKPNT_ON 1 /* File types */ #define RDB_K_DPB_FT_PARTITIONED 0 #define RDB_K_DPB_FT_CLUSTERED 1 /* Protection */ #define RDB_K_DPB_PROT_DEFAULT 0 #define RDB_K_DPB_PROT_ANSI_COMPLIANT 1 /* Mask for pages, indices, records and transactions */ #define RDB_M_DPB_SWP_PAGES 1 #define RDB_M_DPB_SWP_RECORDS 2 #define RDB_M_DPB_SWP_INDICES 4 #define RDB_M_DPB_SWP_TRANSACTIONS 8 /* *----------------------------------------------------------------------------- * DPB version 2 tags *----------------------------------------------------------------------------- */ #define RDB_K_DPB2_MIN 1 #define RDB_K_DPB2_DBKEY_SCOPE 1 /* Deprecated for Rdb V6.0 */ /* Tag will be removed in the future */ #define RDB_K_DPB2_AIJ 1 /* The above 2 tags happen to have the same value. Luckily, they do not */ /* clash currently because RDB_K_DPB2_DBKEY_SCOPE is used by */ /* RDB_K_FACILITY_ALL and RDB_K_DPB2_AIJ is used by RDB_K_FACILITY_RDB_VMS. */ /* RDB_K_DPB2_AIJ is being deprecated by Rdb V6.0. */ #define RDB_K_DPB2_ALLOCATION 2 #define RDB_K_DPB2_PAGE_SIZE 3 #define RDB_K_DPB2_NUM_BUFF 4 #define RDB_K_DPB2_BUFFER_LENGTH 5 #define RDB_K_DPB2_NUM_USERS 6 #define RDB_K_DPB2_EXT_DB_MIN_NUM_PAGES 7 #define RDB_K_DPB2_EXT_DB_MAX_NUM_PAGES 8 #define RDB_K_DPB2_EXT_DB_PCT_GROWTH 9 #define RDB_K_DPB2_SNP_ALLOCATION 10 #define RDB_K_DPB2_SNP_FLAG 11 #define RDB_K_DPB2_EXT_SNP_MIN_NUMPAGES 12 #define RDB_K_DPB2_EXT_SNP_MAX_NUMPAGES 13 #define RDB_K_DPB2_EXT_SNP_PCT_GROWTH 14 #define RDB_K_DPB2_DB_EXTENT 15 #define RDB_K_DPB2_CDD_PATHNAME 16 #define RDB_K_DPB2_AIJ_ALLOCATION 17 #define RDB_K_DPB2_AIJ_EXTENT 18 #define RDB_K_DPB2_DBR_BUFFERS 19 #define RDB_K_DPB2_SNP_ENABLED 20 #define RDB_K_DPB2_SNP_DISABLED 21 #define RDB_K_DPB2_SNP_EXTENT 22 #define RDB_K_DPB2_SPAM_THRESHOLD_1 23 #define RDB_K_DPB2_SPAM_THRESHOLD_2 24 #define RDB_K_DPB2_SPAM_THRESHOLD_3 25 #define RDB_K_DPB2_AIJ_CONTINUOUS 26 #define RDB_K_DPB2_AIJ_ONCE 27 #define RDB_K_DPB2_AIJ_SPOOL_FILE 28 #define RDB_K_DPB2_DESCRIPTION_SOURCE 29 #define RDB_K_DPB2_CONVERT 30 #define RDB_K_DPB2_SNAPSHOT 31 #define RDB_K_DPB2_OPEN_MANUAL 32 #define RDB_K_DPB2_OPEN_AUTOMATIC 33 #define RDB_K_DPB2_DEFINE_STORAGE 34 #define RDB_K_DPB2_CHANGE_STORAGE 35 #define RDB_K_DPB2_STORAGE_NAME 36 #define RDB_K_DPB2_FILESPEC 37 #define RDB_K_DPB2_EXTENSIBLE 38 #define RDB_K_DPB2_SNP_DEFERRED 39 #define RDB_K_DPB2_NUM_NODES 40 #define RDB_K_DPB2_FILE_TYPE 41 #define RDB_K_DPB2_CDD_MAINTAINED 42 #define RDB_K_DPB2_CDD_REQUIRED 43 #define RDB_K_DPB2_SEGMENT_AREA 44 /* SPAMS is not currently used */ #define RDB_K_DPB2_SPAMS 45 #define RDB_K_DPB2_SPAM_INTERVAL 46 #define RDB_K_DPB2_END_STORAGE_AREA 47 #define RDB_K_DPB2_ALG 48 #define RDB_K_DPB2_DELETE_STORAGE 49 #define RDB_K_DPB2_LAYERED_ACCESS 50 #define RDB_K_DPB2_REQUEST_SCOPE 51 #define RDB_K_DPB2_READ_ONLY 52 #define RDB_K_DPB2_PROTECTION 53 #define RDB_K_DPB2_COLLATION_SEQUENCE 54 #define RDB_K_DPB2_DDTM_NOTINVOLVED 55 #define RDB_K_DPB2_FROM_JSV 56 #define RDB_K_DPB2_CDD_DICTIONARY 57 #define RDB_K_DPB2_CHECK_ACCESS 58 /* * Added in Rdb/VMS V4.1 */ /* SERdb integrity */ #define RDB_K_DPB2_KEEP_INTEGRITY 59 /* SERdb meta level */ #define RDB_K_DPB2_META_LEVEL 60 #define RDB_K_DPB2_WORM 61 #define RDB_K_DPB2_MULTISCHEMA 62 /* Image name passed to DECtrace */ #define RDB_K_DPB2_IMAGE_NAME 63 /* Global buffering */ #define RDB_K_DPB2_GB_ENABLED 64 #define RDB_K_DPB2_GB_NUM_BUFF 65 #define RDB_K_DPB2_GB_NUM_PER_USER 66 /* Fast commit */ #define RDB_K_DPB2_FC_CHKPT_INTERVAL 67 #define RDB_K_DPB2_FC_CHKPT_ENABLED 68 #define RDB_K_DPB2_FC_CHKPT_TIME 69 /* Carry-over */ #define RDB_K_DPB2_CARRY_OVER 70 /* Lock timeout */ #define RDB_K_DPB2_LOCK_TIMEOUT 71 /* Fast commit */ #define RDB_K_DPB2_FC_COMMIT_TO_JOURNAL 72 #define RDB_K_DPB2_FC_TRANS_INTERVAL 73 /* * Added in Rdb/VMS V4.2 */ /* MIA character set */ #define RDB_K_DPB2_DEF_CSET_ID 74 #define RDB_K_DPB2_NAT_CSET_ID 75 #define RDB_K_DPB2_ROOT_FILE_ACL_TYPE 76 #define RDB_K_DPB2_ROOT_FILE_ACL 77 /* area extent enable */ #define RDB_K_DPB2_DB_EXTENT_ENABLED 78 /* name character set */ #define RDB_K_DPB2_NAM_CSET_ID 79 /* SERdb mac policy */ #define RDB_K_DPB2_MAC_POLICY 80 /* * Added in Rdb V5.1 */ #define RDB_K_DPB2_PRESTART_TXN 81 /* * Added in Rdb V6.0 */ /* Cache Filename */ #define RDB_K_DPB2_AIJ_CACHE_FILE 82 /* Backup Server */ #define RDB_K_DPB2_AIJ_BCK_SERVER 83 /* Backup Same as Journal */ #define RDB_K_DPB2_AIJ_SUPERCEDE 84 /* Log Server */ #define RDB_K_DPB2_AIJ_LOG_SERVER 85 /* Overwrite AIJ option */ #define RDB_K_DPB2_JOURNAL_OVERWRITE 86 #define RDB_K_DPB2_DEFINE_JOURNAL 87 #define RDB_K_DPB2_CHANGE_JOURNAL 88 #define RDB_K_DPB2_JOURNAL_NAME 89 #define RDB_K_DPB2_DELETE_JOURNAL 90 /* Notify Operator */ #define RDB_K_DPB2_JOURNAL_NOTIFY 91 /* Enable Journal */ #define RDB_K_DPB2_USE_JOURNAL 92 #define RDB_K_DPB2_END_JOURNAL 93 /* Reserve n Journals */ #define RDB_K_DPB2_RESERVE_JOURNAL 94 /* Reserve n Storage Areas */ #define RDB_K_DPB2_RESERVE_STORAGE 95 #define RDB_K_DPB2_RESTRICTED_ACCESS 96 #define RDB_K_DPB2_STATISTICS 97 #define RDB_K_DPB2_IDX_COMPRESSION 98 /* Locking is page/row */ #define RDB_K_DPB2_AREA_LOCKING 99 /* DBI special tags */ #define RDB_K_DPB2_TEMP_PROXY 100 #define RDB_K_DPB2_DEFAULT_LINK 101 #define RDB_K_DPB2_SQL92_SEMANTICS 102 /* SQL behaviour */ #define RDB_K_DPB2_GB_INHIB_FLAG 103 /* Inhibit binding to gl */ /* * Added in V6.1 */ #define RDB_K_DPB2_ASYNCH_ENABLED 104 /* Allows asynch DSRI */ #define RDB_K_DPB2_NOTIFY_OP_CLASS 105 /* notify operator class */ #define RDB_K_DPB2_SHUTDOWN_TIME 106 /* shutdown time when er */ #define RDB_K_DPB2_ASYNCH_PREFETCH 107 /* asynch prefetch */ #define RDB_K_DPB2_ABW_CLEAN_BUFFERS 108 /* buf count for asyn be */ #define RDB_K_DPB2_ASYNCH_BATCHWRITE 109 /* asyn betch write */ #define RDB_K_DPB2_APF_DEPTH 110 /* buf count for prefetch */ #define RDB_K_DPB2_PARTITIONED_LOCK 111 /* lock partitioning */ #define RDB_K_DPB2_GB_TRANSFER 112 /* page transfer for glo */ #define RDB_K_DPB2_INCR_BACKUP 113 /* incremental backup */ #define RDB_K_DPB2_ABW_MAX_BUFFERS 114 /* asyn batch write max */ #define RDB_K_DPB2_AREA_ADD_MULTITHREAD 115 /* # of areas created at */ /* * Added in V7.0 */ #define RDB_K_DPB2_DEFAULT_STORAGE 116 /* default storage area name */ #define RDB_K_DPB2_DEFAULT_TEMPLATE 117 /* default template area name */ #define RDB_K_DPB2_D_ASYNCH_PREFETCH 118 /* detected async prefetch */ #define RDB_K_DPB2_DAPF_DEPTH 119 /* detected apf depth */ #define RDB_K_DPB2_DAPF_THRESHOLD 120 /* detected apf threshold */ #define RDB_K_DPB2_USE_CACHE 121 /* enable row caching */ #define RDB_K_DPB2_DEFINE_CACHE 122 /* create a cache */ #define RDB_K_DPB2_CHANGE_CACHE 123 /* alter a cache */ #define RDB_K_DPB2_DELETE_CACHE 124 /* drop a cache */ #define RDB_K_DPB2_CACHE_NAME 125 /* name of cache */ #define RDB_K_DPB2_RESERVE_CACHE 126 /* reserve cache slots */ #define RDB_K_DPB2_WORKLOAD_ENABLED 127 /* enable workload collection */ #define RDB_K_DPB2_FILESPEC_EDIT 128 /* edit string for file spec */ #define RDB_K_DPB2_END_CACHE 129 /* end of cache definition */ #define RDB_K_DPB2_CARD_UPDATE_ENABLED 130 /* enable cardinality updates */ #define RDB_K_DPB2_DDL_ENABLED 131 /* enable use of DDL */ #define RDB_K_DPB2_RESERVE_TEMPLATE 132 /* reserve template slots */ #define RDB_K_DPB2_DEFER_CARD_UPDATE 133 /* defer cardinality update to DETACH */ #define RDB_K_DPB2_DEFINE_TXN_MODES 134 /* allowed txn modes for database */ #define RDB_K_DPB2_CHANGE_TXN_MODES 135 /* alter txn modes for database */ #define RDB_K_DPB2_INTERNAL_USE 136 /* special tag */ #define RDB_K_DPB2_MEMORY_MAPPING 137 /* mem map options */ #define RDB_K_DPB2_CHECKSUM 138 /* ena/disable checksum on area */ #define RDB_K_DPB2_SNP_CHECKSUM 139 /* ena/disable checksum on area */ #define RDB_K_DPB2_CACHE_REPLACE 140 /* cache replacement policy */ #define RDB_K_DPB2_RC_LOCATION 141 /* cache: location */ #define RDB_K_DPB2_RC_SWEEP_INTERVAL 142 /* cache: sweep interval */ #define RDB_K_DPB2_RC_RESERVED_RECS 143 /* cache: reserved rows */ #define RDB_K_DPB2_RC_SWEEP_THRESHOLDS 144 /* cache: sweep thresholds */ #define RDB_K_DPB2_RC_SWEEP_RECS 145 /* cache: sweep rows */ /* * Added in Rdb V7.1 */ #define RDB_K_DPB2_RESERVE_SEQUENCES 146 /* seq: reserve */ #define RDB_K_DPB2_RC_CHKPT_DEST 147 /* cache: destination */ #define RDB_K_DPB2_RC_CHKPT_TIME 148 /* cache: checkpoint time */ #define RDB_K_DPB2_SECURITY_POLICY 149 /* db: how is security checking performed */ #define RDB_K_DPB2_BUFFER_TYPE 150 /* ruj: local/global */ #define RDB_K_DPB2_DISPLAY_CSET_ID 151 /* auto translate */ #define RDB_K_DPB2_SECURITY_CREATOR_ID 152 /* (import tag) */ #define RDB_K_DPB2_OBJECT_SYNONYMS 153 /* does RDB_OBJECT_SYNONYMS exist? */ #define RDB_K_DPB2_LOGMINER 154 /* enable/disable logminer */ #define RDB_K_DPB2_NDX_PREFIX_CARD 155 /* system index: prf card setting */ #define RDB_K_DPB2_NDX_TYPE 156 /* system index: type of sorted index */ #define RDB_K_DPB2_GALAXY_SUPPORT 157 /* enable/disable galaxy */ #define RDB_K_DPB2_SHARED_INSTANCE 158 /* single or multiple instances */ #define RDB_K_DPB2_FC_CHKPT_TXN 159 /* * Added in Rdb 7.2 */ #define RDB_K_DPB2_GB_ALLOCATION 160 /* Allocation in bytes (not buffers) */ #define RDB_K_DPB2_MAX 160 /* *----------------------------------------------------------------------------- * DPB version 2 sub options *----------------------------------------------------------------------------- */ /* Generic ON and OFF */ #define RDB_K_DPB2_OFF 0 #define RDB_K_DPB2_ON 1 #define RDB_K_DPB2_UNKNOWN -1 /* Prefix cardinality collection */ #define RDB_K_DPB2_COLLECT_DISABLED 0 #define RDB_K_DPB2_COLLECT_ENABLED 1 #define RDB_K_DPB2_COLLECT_FULL 2 /* Logminer bits options (use disabled to clear bits, */ /* other values to set mask) */ #define RDB_K_DPB2_LOGMINER_ENABLED 0 #define RDB_K_DPB2_LOGMINER_CONTINUOUS 1 #define RDB_M_DPB2_LOGMINER_DISABLED 0 #define RDB_M_DPB2_LOGMINER_ENABLED (1< * This section contains all the values for the Transaction Parameter Block * used in transactions. *--------------------------------------------------------------------------- */ /* *----------------------------------------------------------------------------- * TPB version tags *----------------------------------------------------------------------------- */ #define TPB_K_VERSION 1 /* *----------------------------------------------------------------------------- * TPB option tags *----------------------------------------------------------------------------- */ #define TPB_K_OPT_MIN 1 /* high-consistency */ #define TPB_K_DEGREE3 1 /* high-concurrency */ #define TPB_K_DEGREE2 2 /* Used with LOCK_READ and LOCK_WRITE. */ #define TPB_K_SHARED 3 #define TPB_K_PROTECTED 4 #define TPB_K_EXCLUSIVE 5 #define TPB_K_WAIT 6 #define TPB_K_NOWAIT 7 #define TPB_K_READ 8 /* READ_ONLY (snapshot) */ #define TPB_K_WRITE 9 /* READ_WRITE */ /* Followed by relation name & optional mode. */ #define TPB_K_LOCK_READ 10 #define TPB_K_LOCK_WRITE 11 /* Followed by constraint name. */ #define TPB_K_VERB_TIME 12 #define TPB_K_COMMIT_TIME 13 /* BATCH_UPDATE */ #define TPB_K_BATCH_UPDATE 14 /* Retain Mode Transaction */ #define TPB_K_RETAIN_LOCKS 15 /* Allow auto ready of relations used by constrs and trigs */ #define TPB_K_AUTO_LOCKS 16 /* Disable default auto locking mode. */ #define TPB_K_NOAUTO_LOCKS 17 #define TPB_K_DEFER_INDEX_UPDATES 18 #define TPB_K_2PC_TRANSACTION 18 /* obsolete */ #define TPB_K_DDTM_NOTINVOLVED 19 /* obsolete */ #define TPB_K_FROM_JSV 20 /* obsolete */ /* WAIT n seconds */ #define TPB_K_WAIT_INTERVAL 21 /* TPB unique tid for DECtrace */ #define TPB_K_UNIQUE_ID 22 /* * Isolation levels */ /* NRR/Phantoms */ #define TPB_K_ISOLATION_LEVEL1 23 /* Phantoms */ #define TPB_K_ISOLATION_LEVEL2 24 /* Repeatable Reads/No Phantoms */ #define TPB_K_ISOLATION_LEVEL3 25 /* Dirty Reads */ #define TPB_K_ISOLATION_LEVEL0 26 /* Reserving for data definition */ #define TPB_K_LOCK_DDL 27 /* Partitioned table reservation */ #define TPB_K_PARTITION 28 /* Utility wants the best read-only style transaction */ #define TPB_K_UTILITY_READ 29 /* Name the TPB buffer */ #define TPB_K_BUFFER_NAME 30 #define TPB_K_OPT_MAX 30 /* *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * RDB_K_INFO_ * RDB_K_INFO__ * This section contains the information tags. *--------------------------------------------------------------------------- */ /* *----------------------------------------------------------------------------- * Generic tags *----------------------------------------------------------------------------- */ #define RDB_K_INFO_MIN 0 #define RDB_K_INFO_FILLER 0 #define RDB_K_INFO_END 1 #define RDB_K_INFO_TRUNCATED 2 #define RDB_K_INFO_ERROR 3 #define RDB_K_INFO_MAX 3 /* * There should be no new tags added to the above */ /* *----------------------------------------------------------------------------- * Database identifiers * Tags start at 4 because 1-3 is used by the generic tags *----------------------------------------------------------------------------- */ #define RDB_K_INFO_DB_MIN RDB_K_INFO_MIN #define RDB_K_INFO_DB_ID 4 #define RDB_K_INFO_DB_READS 5 #define RDB_K_INFO_DB_WRITES 6 #define RDB_K_INFO_DB_FETCHES 7 #define RDB_K_INFO_DB_MARKS 8 #define RDB_K_INFO_DB_ASTS 9 #define RDB_K_INFO_DB_AST_WRITES 10 #define RDB_K_INFO_DB_IMPLEMENTATION 11 #define RDB_K_INFO_DB_VERSION 12 #define RDB_K_INFO_DB_BASE_LEVEL 13 #define RDB_K_INFO_DB_PAGE_SIZE 14 #define RDB_K_INFO_DB_NUMBER_BUFFERS 15 #define RDB_K_INFO_DB_LIMBO 16 #define RDB_K_INFO_DB_NAME 17 /* *++ * Rdb/VMS V3.0 Physical Structure Information (KODA) for RDO EXPORT * Per Area Information */ #define RDB_K_INFO_DB_STO_AREA_STATS 18 #define RDB_K_INFO_DB_ALLOCATION 19 #define RDB_K_INFO_DB_EXTENT_MIN 20 #define RDB_K_INFO_DB_EXTENT_MAX 21 #define RDB_K_INFO_DB_EXTENT_PRCNT 22 #define RDB_K_INFO_DB_SNP_EXTENT_MIN 23 #define RDB_K_INFO_DB_SNP_EXTENT_MAX 24 #define RDB_K_INFO_DB_SNP_EXTENT_PRCNT 25 #define RDB_K_INFO_DB_SNP_ALLOCATION 26 #define RDB_K_INFO_DB_SNP_FILE 27 #define RDB_K_INFO_DB_AREA_FILE 28 #define RDB_K_INFO_DB_AREA_TYPE 29 #define RDB_K_INFO_DB_AREA_NAME 30 /* *-- *++ * Database-wide information */ #define RDB_K_INFO_DB_STO_AREA_LIST 31 #define RDB_K_INFO_DB_SEGMENT_AREA 32 #define RDB_K_INFO_DB_NUMBER_USERS 33 #define RDB_K_INFO_DB_NUMBER_NODES 34 #define RDB_K_INFO_DB_NUMBER_DBR_BFRS 35 #define RDB_K_INFO_DB_SNP_ENABLED 36 #define RDB_K_INFO_DB_SNP_DEFERRED 37 #define RDB_K_INFO_DB_AIJ_ALLOCATION 38 #define RDB_K_INFO_DB_AIJ_EXTENSION 39 #define RDB_K_INFO_DB_BUFFER_SIZE 40 #define RDB_K_INFO_DB_AREA_ACCESS_MODE 41 #define RDB_K_INFO_DB_MFDB 42 /* *-- */ #define RDB_K_INFO_DB_REMOTE_NODE 43 /* *++ * New storage area options */ #define RDB_K_INFO_DB_ALLOCATION_MAX 44 #define RDB_K_INFO_DB_SNP_ALLOC_MAX 45 /* *-- *++ * Security options */ #define RDB_K_INFO_DB_AUDIT_EVENTS 46 #define RDB_K_INFO_DB_AUDIT_ALARM_NAME 47 #define RDB_K_INFO_DB_AUDIT_FILE_NAME 48 #define RDB_K_INFO_DB_AUDIT_FLAGS 49 /* *-- *++ * SERdb info call options */ #define RDB_K_INFO_DB_INTEGRITY 50 #define RDB_K_INFO_DB_SINGLE_LEVEL 51 /* *-- */ #define RDB_K_INFO_DB_ALG_COUNT 52 /* Adjustable Lock Granularity */ #define RDB_K_INFO_DB_SPAM_INTERVAL 53 /* Storage area SPAM interval */ #define RDB_K_INFO_DB_AREA_THRESHOLD 54 /* Storage area threshold */ #define RDB_K_INFO_DB_LAREA_THRESHOLD 55 /* Logical area threshold */ #define RDB_K_INFO_DB_GB_ENABLED 56 /* Global buffering enabled */ #define RDB_K_INFO_DB_GB_NUM_BUFF 57 /* Number of global buffers */ #define RDB_K_INFO_DB_GB_NUM_PER_USER 58 /* Number Buffers Per User */ #define RDB_K_INFO_DB_FC_CHKPT_INTERVAL 59 /* Fast commit Checkpoint interval */ #define RDB_K_INFO_DB_FC_CHKPT_ENABLED 60 /* Fast commit Checkpoint enabled */ #define RDB_K_INFO_DB_FC_CHKPT_TIME 61 /* Fast commit Chckpt time interval */ #define RDB_K_INFO_DB_AIJ_FILE_NAME 62 /* Names for the AIJ */ #define RDB_K_INFO_DB_LCKOPT_ENABLED 63 /* carry over lock enabled */ #define RDB_K_INFO_DB_LOCK_TIMEOUT 64 /* default lock wait time interval */ #define RDB_K_INFO_DB_FC_COMMIT_TO_JRNL 65 /* Fast commit enabled */ #define RDB_K_INFO_DB_FC_TSN_INTERVAL 66 /* Fast commit TSN interval */ #define RDB_K_INFO_DB_MULTISCHEMA 67 /* Is multischema enabled? */ #define RDB_K_INFO_DB_CSET 68 /* What are the DB csets ? */ #define RDB_K_INFO_DB_STO_AREA_COUNT 69 /* Return number of storage areas */ #define RDB_K_INFO_DB_ROOT_FILE_ACL 70 /* Database root file ACL */ #define RDB_K_INFO_DB_EXTENT_ENABLED 71 /* Return TRUE if EXTENT ENABLED */ #define RDB_K_INFO_DB_MAC_POLICY 72 /* SERdb mac policy */ /* * Rdb V6.0 */ #define RDB_K_INFO_DB_AIJ_LIST 73 /* list of aij names */ #define RDB_K_INFO_DB_AIJ_COUNT 74 /* count of aij's */ #define RDB_K_INFO_DB_AIJ_NAME 75 /* name of journal */ #define RDB_K_INFO_DB_AIJ_STATS 76 /* statistics for AIJ's */ #define RDB_K_INFO_DB_AIJ_FREE 77 /* count of unused aij's */ #define RDB_K_INFO_DB_STO_AREA_FREE 78 /* count of unused areas */ #define RDB_K_INFO_DB_STATISTICS 79 /* Are statistics enabled or not */ #define RDB_K_INFO_DB_AIJ_SPOOL_FILE 80 /* AIJ spool file spec */ #define RDB_K_INFO_DB_AIJ_CACHE_FILE 81 /* AIJ cache file spec */ #define RDB_K_INFO_DB_AIJ_SUPERSEDE 82 /* bck filename same as journal */ #define RDB_K_INFO_DB_AIJ_BCK_SERVER 83 /* is bck server enabled or not */ #define RDB_K_INFO_DB_AIJ_LOG_SERVER 84 /* is log server enabled or not */ #define RDB_K_INFO_DB_AIJ_OVERWRITE 85 /* is circ aij used for only redo */ #define RDB_K_INFO_DB_AIJ_ENABLED 86 /* aij used or not */ #define RDB_K_INFO_DB_IDX_COMPRESSION 87 /* system index compression */ #define RDB_K_INFO_DB_AREA_LOCKING 88 /* locking is page or record */ #define RDB_K_INFO_DB_RESTRICTED_ACCESS 89 /* access is restricted */ #define RDB_K_INFO_DB_AIJ_NOTIFY 90 /* notify operator */ #define RDB_K_INFO_DB_ACTIVE_JOURNAL 91 /* active journal */ #define RDB_K_INFO_DB_DEFAULT_LINK 92 /* DBI: default link */ /* * V6.1 */ #define RDB_K_INFO_DB_OPEN_MODE 93 /* 7.0: manual/automatic */ #define RDB_K_INFO_DB_SHUTDOWN_TIME 94 /* shutdown time when error */ #define RDB_K_INFO_DB_ASYNCH_PREFETCH 95 /* asynch prefetch */ #define RDB_K_INFO_DB_ABW_CLEAN_BUFFERS 96 /* buf count for betch write */ #define RDB_K_INFO_DB_ASYNCH_BATCHWRITE 97 /* asyn betch write */ #define RDB_K_INFO_DB_APF_DEPTH 98 /* depth for asyn prefetch */ #define RDB_K_INFO_DB_PARTITIONED_LOCK 99 /* lock partitioning */ #define RDB_K_INFO_DB_GB_TRANSFER 100 /* page transfer for global buf */ #define RDB_K_INFO_DB_INCR_BACKUP 101 /* incremental backup */ #define RDB_K_INFO_DB_ABW_MAX_BUFFERS 102 /* max buf for asyn batch write */ /* * V7.0 */ #define RDB_K_INFO_DB_DEF_STORAGE_NAME 103 /* db default area */ #define RDB_K_INFO_DB_DEF_TEMPLATE_NAME 104 /* * db default template */ #define RDB_K_INFO_DB_D_ASYNCH_PREFETCH 105 /* detected asynch prefetch */ #define RDB_K_INFO_DB_DAPF_DEPTH 106 /* depth for detected APF */ #define RDB_K_INFO_DB_DAPF_THRESHOLD 107 /* threshold for detected APF */ #define RDB_K_INFO_DB_CACHE_NAME 108 /* cache name */ #define RDB_K_INFO_DB_CACHE_LIST 109 /* list of cache names */ #define RDB_K_INFO_DB_CACHE_COUNT 110 /* count of cache slots */ #define RDB_K_INFO_DB_CACHE_STATS 111 /* stats for cache */ #define RDB_K_INFO_DB_CACHE_FREE 112 /* unused cache */ #define RDB_K_INFO_DB_TEMPLATE_FREE 113 /* * unused templates */ #define RDB_K_INFO_DB_WORKLOAD_ENABLED 114 /* is workload collection enabled? */ #define RDB_K_INFO_DB_CARD_UPD_ENABLED 115 /* is cardinality collection enabled */ #define RDB_K_INFO_DB_DDL_ENABLED 116 /* is DDL allowed? */ #define RDB_K_INFO_DB_AIJ_EDIT_STRING 117 /* bckfile edit string */ #define RDB_K_INFO_DB_ROW_CACHE_ENABLED 118 /* is row cache enabled? */ #define RDB_K_INFO_DB_RUJ_FILE_LOCATION 119 /* directory for ruj */ #define RDB_K_INFO_DB_TEMPLATE_ENABLED 120 /* * is area a TEMPLATE? */ /* txn-modes-enabled describes the root definitions */ #define RDB_K_INFO_DB_TXN_MODES_ENABLED 121 /* current database txn modes */ #define RDB_K_INFO_DB_MEMORY_MAPPING 122 /* database & cache: memory mapping */ #define RDB_K_INFO_DB_CHECKSUM_FLAG 123 /* storage area: chksum flag setting */ #define RDB_K_INFO_DB_SNP_CHECKSUM_FLAG 124 /* snapshot area: chksum flag setting */ #define RDB_K_INFO_DB_CACHE_REPLACE 125 /* cache: replacement policy */ #define RDB_K_INFO_DB_CACHE_SWEEP_INTVL 126 /* database: sweep interval */ #define RDB_K_INFO_DB_CACHE_LOCATION 127 /* database & cache: location */ #define RDB_K_INFO_DB_CACHE_RSVD_RECS 128 /* cache: reserved rows */ #define RDB_K_INFO_DB_CACHE_SWEEP_RECS 129 /* cache: sweep records */ #define RDB_K_INFO_DB_CACHE_THRESHOLDS 130 /* cache: hi/lo thresholds */ /* * V7.1 */ #define RDB_K_INFO_DB_SEQUENCES_FREE 131 /* seq: free slots */ #define RDB_K_INFO_DB_SORT_STATS_LIST 132 #define RDB_K_INFO_DB_CACHE_CHKPT_TIME 133 #define RDB_K_INFO_DB_CACHE_CHKPT_DEST 134 #define RDB_K_INFO_DB_SECURITY_POLICY 135 #define RDB_K_INFO_DB_SEQUENCE_COUNT 136 #define RDB_K_INFO_DB_RUJ_BUFFER_TYPE 137 #define RDB_K_INFO_DB_OBJECT_SYNONYMS 138 /* Are synonyms supported? */ /* txn-modes-current describes the current state which may differ */ /* from txn-modes-enabled */ #define RDB_K_INFO_DB_TXN_MODES_CURRENT 139 /* current database txn modes */ #define RDB_K_INFO_DB_SESSION_DEF_TXN 140 /* does session have default txn? */ #define RDB_K_INFO_DB_NDX_TYPE 141 /* system index type */ #define RDB_K_INFO_DB_NDX_PRF_COLLECT 142 /* system index prefix collection */ #define RDB_K_INFO_DB_LOGMINER_ENABLED 143 /* is LogMiner enabled? */ #define RDB_K_INFO_DB_PRESTARTED_TXN 144 /* prestarted txn mode */ #define RDB_K_INFO_DB_GALAXY_ENABLED 145 /* is Galaxy support enabled? */ #define RDB_K_INFO_DB_SHARED_INSTANCE 146 /* single or multiple instances */ #define RDB_K_INFO_DB_FC_CHKPT_TXN 147 /* Fast commit Checkpoint txn interval */ /* * V7.1.1 */ #define RDB_K_INFO_DB_CAPABILITY1 148 /* capablities bitmask */ #define RDB_K_INFO_DB_VERSION_ORA 149 /* Ora style version string */ #define RDB_K_INFO_DB_FULL_VERSION 150 /* Full version string */ /* * V7.1.3 */ #define RDB_K_INFO_DB_QG_CPU_TIME 151 #define RDB_K_INFO_DB_QG_ELAPSED_TIME 152 #define RDB_K_INFO_DB_QG_ROW_LIMIT 153 #define RDB_K_INFO_DB_MAX 153 /* *----------------------------------------------------------------------------- * RDB_K_INFO_DB_IMPL_ * Database implementation *----------------------------------------------------------------------------- */ #define RDB_K_INFO_DB_IMPL_UNKNOWN 0 #define RDB_K_INFO_DB_IMPL_VMS 1 #define RDB_K_INFO_DB_IMPL_DECRDB RDB_K_INFO_DB_IMPL_VMS #define RDB_K_INFO_DB_IMPL_RDB RDB_K_INFO_DB_IMPL_VMS #define RDB_K_INFO_DB_IMPL_ELAN 2 #define RDB_K_INFO_DB_IMPL_ELAN_DEV 3 #define RDB_K_INFO_DB_IMPL_DDAL_Y 4 #define RDB_K_INFO_DB_IMPL_ELAN_Y 5 #define RDB_K_INFO_DB_IMPL_JRI 6 #define RDB_K_INFO_DB_IMPL_REM_CLIENT RDB_K_INFO_DB_IMPL_JRI #define RDB_K_INFO_DB_IMPL_JSV 7 #define RDB_K_INFO_DB_IMPL_REM_SERVER RDB_K_INFO_DB_IMPL_JSV #define RDB_K_INFO_DB_IMPL_SERVER 8 #define RDB_K_INFO_DB_IMPL_MACHINE 9 #define RDB_K_INFO_DB_IMPL_VIDA 10 #define RDB_K_INFO_DB_IMPL_IDB_PC 11 #define RDB_K_INFO_DB_IMPL_IDB 12 #define RDB_K_INFO_DB_IMPL_VIDA2_VMS 13 #define RDB_K_INFO_DB_IMPL_VIDA2_MVS 14 #define RDB_K_INFO_DB_IMPL_CICS 15 #define RDB_K_INFO_DB_IMPL_DB2 16 /* RdbAccess for Oracle client */ #define RDB_K_INFO_DB_IMPL_VIDAOC 17 /* RdbAccess for Oracle server */ #define RDB_K_INFO_DB_IMPL_VIDAOS 18 /* Oracle Version number */ #define RDB_K_INFO_DB_IMPL_ORACLE 19 #define RDB_K_INFO_DB_IMPL_NSDS 20 #define RDB_K_INFO_DB_IMPL_DAF RDB_K_INFO_DB_IMPL_NSDS #define RDB_K_INFO_DB_IMPL_BRIDGE 21 #define RDB_K_INFO_DB_IMPL_SERDB 22 #define RDB_K_INFO_DB_IMPL_DBI 23 #define RDB_K_INFO_DB_IMPL_EDASQL 24 #define RDB_K_INFO_DB_IMPL_SQL400 25 #define RDB_K_INFO_DB_IMPL_SQLACC 26 #define RDB_K_INFO_DB_IMPL_SYBASE 27 #define RDB_K_INFO_DB_IMPL_LSYB 28 /* Link to Sybase */ #define RDB_K_INFO_DB_IMPL_LEDA 29 /* Link to EDA/SQL */ #define RDB_K_INFO_DB_IMPL_LDB2 30 #define RDB_K_INFO_DB_IMPL_LORA 31 /* Link to Oracle */ #define RDB_K_INFO_DB_IMPL_SQLNK 32 #define RDB_K_INFO_DB_IMPL_ODBC 33 #define RDB_K_INFO_DB_IMPL_NREL 34 #define RDB_K_INFO_DB_IMPL_LRED 35 /* Link to ODBC */ #define RDB_K_INFO_DB_IMPL_MAX 35 /* *----------------------------------------------------------------------------- * RDB_K_INFO_DB_CLASS_ * Database classes *----------------------------------------------------------------------------- */ #define RDB_K_INFO_DB_CLASS_DBMS 1 #define RDB_K_INFO_DB_CLASS_Y_VALVE 2 #define RDB_K_INFO_DB_CLASS_REM_INT 3 #define RDB_K_INFO_DB_CLASS_REM_SRVR 4 /* *----------------------------------------------------------------------------- * RDB_K_INFO_REQ_ * Request identifiers * Note: RDB_K_INFO_REQ items cause information to be returned from * RDB_REQUEST_INFO and RDB_COMPILE_REQUEST. RDB_K_SET_REQ items are ignored * by RDB_REQUEST_INFO, but cause parameters to be set by RDB_COMPILE_REQUEST. *----------------------------------------------------------------------------- */ #define RDB_K_INFO_REQ_MIN RDB_K_INFO_MIN /* * Tags start at 4 because 1-3 is used by the generic tags */ /* Number different msg types */ #define RDB_K_INFO_REQ_NUM_MSGS 4 /* Largest msg type */ #define RDB_K_INFO_REQ_MAX_MSG 5 /* Maximum send msg length */ #define RDB_K_INFO_REQ_MAX_SEND 6 /* Maximum receive msg length */ #define RDB_K_INFO_REQ_MAX_RECEIVE 7 /* Current request state */ #define RDB_K_INFO_REQ_STATE 8 /* Current message for send */ #define RDB_K_INFO_REQ_MSG_NUMBER 9 /* Send message length */ #define RDB_K_INFO_REQ_MSG_SIZE 10 /* Use optimizer number. */ #define RDB_K_INFO_REQ_COST 11 /* Estimated # of rows returned */ #define RDB_K_INFO_REQ_EST_ROWS 12 /* Return type of strategy used */ #define RDB_K_INFO_REQ_OPT_PREF 13 /* Set type of strategy desired (see also the RDB_K_INFO_OPT_PREF* literals) */ #define RDB_K_SET_REQ_OPT_PREF 14 /* limit on query compile time */ #define RDB_K_SET_REQ_MAX_COMP_TIME 15 /* limit on rows for query */ #define RDB_K_SET_REQ_MAX_ROWS 16 /* Request used for UPDATE */ #define RDB_K_SET_REQ_FOR_UPDATE 17 /* Is request used for UPDATE? */ #define RDB_K_INFO_REQ_FOR_UPDATE 18 /* User specified object name */ #define RDB_K_SET_REQ_NAME 19 /* limit on compile CPU time */ #define RDB_K_SET_REQ_MAX_COMP_CPU 20 /* Request changes transaction state */ #define RDB_K_SET_REQ_TRANS_ACTION 21 /* Does request changes transaction state? */ #define RDB_K_INFO_REQ_TRANS_ACTION 22 /* Pseudo module name */ #define RDB_K_SET_REQ_MODULE_NAME 23 /* Routine name */ #define RDB_K_SET_REQ_ROUTINE_NAME 24 /* PARAM: NULL semantics */ #define RDB_K_SET_REQ_NULL_PARAMETERS 25 /* PARAM3: length in char or octets */ #define RDB_K_SET_REQ_CHAR_LENGTH 26 /* Outline Mode */ #define RDB_K_SET_REQ_OUTL_MODE 27 /* Outline Option */ #define RDB_K_SET_REQ_OUTL_OPTION 28 /* Outline Name */ #define RDB_K_SET_REQ_OUTL_NAME 29 /* Warn if string trunc occurs during GET */ #define RDB_K_SET_REQ_WARN_TRUNC 30 /* Warn if nulls elim in set function */ #define RDB_K_SET_REQ_WARN_ELIM_NULL 31 /* Hold cursor open across rollback or commit */ #define RDB_K_SET_REQ_HOLD_OPEN 32 /* Item contains an ASCIL OBLR buffer */ #define RDB_K_SET_REQ_OUTL_OBLR 33 /* Outline Compliance (see RDB_K_INFO_OUTL_COMPL_* values also) */ #define RDB_K_SET_REQ_OUTL_COMPL 34 /* Force query to use SEQUENTIAL */ #define RDB_K_SET_REQ_OPT_SEQ 35 /* Query governor on QUERY TIME */ #define RDB_K_SET_REQ_MAX_QRY_TIME 36 /* Query governor on QUERY CPU */ #define RDB_K_SET_REQ_MAX_QRY_CPU 37 /* Query governor on query I/O */ #define RDB_K_SET_REQ_MAX_QRY_IO 38 /* with sampled/aggressive selectivity */ #define RDB_K_SET_REQ_OPT_SEL 39 /* mark request as a compound statement */ #define RDB_K_SET_REQ_IS_COMPOUND 40 /* Cursor name */ #define RDB_K_SET_REQ_CURSOR_NAME 41 /* Mark request as system query */ #define RDB_K_SET_REQ_SYSTEM_QUERY 42 /* Enable/disable AUTOMATIC TRANSLATION for this query */ #define RDB_K_SET_REQ_AUTO_TRANSLATE 43 #define RDB_K_INFO_REQ_MAX 43 /* *----------------------------------------------------------------------------- * RDB_K_INFO_REQ_STATE_ * Request states *----------------------------------------------------------------------------- */ #define RDB_K_INFO_REQ_STATE_ACTIVE 2 #define RDB_K_INFO_REQ_STATE_INACTIVE 3 #define RDB_K_INFO_REQ_STATE_SEND 4 #define RDB_K_INFO_REQ_STATE_RECEIVE 5 #define RDB_K_INFO_REQ_STATE_SELECT 6 #define RDB_K_INFO_REQ_STATE_MAX 7 /* *----------------------------------------------------------------------------- * RDB_K_INFO_TRA_ * Transaction information *----------------------------------------------------------------------------- */ #define RDB_K_INFO_TRA_MIN RDB_K_INFO_MIN /* * Tags start at 4 because 1-3 is used by the generic tags */ /* Transaction id */ #define RDB_K_INFO_TRA_ID 4 /* Type of transaction */ #define RDB_K_INFO_TRA_TYPE 5 /* Isolation Level */ #define RDB_K_INFO_TRA_ISOLATION_LEVEL 6 #define RDB_K_INFO_TRA_MAX 6 /* *----------------------------------------------------------------------------- * RDB_K_INFO_BLOB_ * Segmented string (Blob) information *----------------------------------------------------------------------------- */ #define RDB_K_INFO_BLOB_MIN RDB_K_INFO_MIN /* * Tags start at 4 because 1-3 is used by the generic tags */ #define RDB_K_INFO_BLOB_NUM_SEGMENTS 4 #define RDB_K_INFO_BLOB_MAX_SEGMENT 5 #define RDB_K_INFO_BLOB_TOTAL_LENGTH 6 #define RDB_K_INFO_BLOB_CURRENT_SEGMENT 7 #define RDB_K_INFO_BLOB_MAX 7 /* *----------------------------------------------------------------------------- * RDB_K_BLOB_ * Segmented string (Blob) parameter structure *----------------------------------------------------------------------------- */ /* name of the table */ #define RDB_K_BLOB_TABLE_NAME 4 /* name of the column */ #define RDB_K_BLOB_COLUMN_NAME 5 /* name of the cursor */ #define RDB_K_BLOB_CURSOR_NAME 6 /* associated request handle */ #define RDB_K_BLOB_REQUEST_HANDLE 7 /* name of containing module */ #define RDB_K_BLOB_MODULE_NAME 8 /* id of scratch table (needs RDB_K_BLOB_MODULE_NAME) */ #define RDB_K_BLOB_SCRATCH_TABLE_ID 9 #define RDB_K_BLOB_MAX 9 /* *----------------------------------------------------------------------------- * RDB_K_LOB_MODE_ tags * Describes the semantics of a segmented string (aka LOB) data type *----------------------------------------------------------------------------- */ #define RDB_K_LOB_MODE_DSRI 0 #define RDB_K_LOB_MODE_ORA 1 #define RDB_K_LOB_MODE_SQL99 2 #define RDB_K_LOB_MODE_LIST_UDT 3 /* *----------------------------------------------------------------------------- * RDB_K_TXN_ * Transaction parameter structure *----------------------------------------------------------------------------- */ /* hand for database */ #define RDB_K_TXN_DB_HANDLE 4 /* attributes (TPB) */ #define RDB_K_TXN_ATTRIBUTES 5 /* 2pc transaction id */ #define RDB_K_TXN_TRANSACTION_ID 6 /* enable/disable initialization of txn handle */ #define RDB_K_TXN_INIT_HANDLE 7 #define RDB_K_TXN_MAX 7 /* * Information sub-options */ /* *----------------------------------------------------------------------------- * Storage area access modes *----------------------------------------------------------------------------- */ #define RDB_K_INFO_STAREA_MODE_RW 0 #define RDB_K_INFO_STAREA_MODE_RO 1 #define RDB_K_INFO_STAREA_MODE_WORM 2 /* *----------------------------------------------------------------------------- * Settings accepted for RDB_K_INFO_REQ_OPT_SET_PREF * These values correspond to the setting of the flag REQ_V_FAST_FIRST_FLAG * and various other Rdb attributes for the request compile *----------------------------------------------------------------------------- */ /* TOTAL TIME optimization */ #define RDB_K_INFO_OPT_PREF_TT 0 /* FAST FIRST optimization */ #define RDB_K_INFO_OPT_PREF_FF 1 /* NONE (no preferences) */ #define RDB_K_INFO_OPT_PREF_NONE 2 /* TOTAL TIME - override query outline */ #define RDB_K_INFO_OPT_PREF_TT_OVERRIDE 3 /* FAST FIRST - override query outline */ #define RDB_K_INFO_OPT_PREF_FF_OVERRIDE 4 /* NONE - override query outline */ #define RDB_K_INFO_OPT_PREF_NN_OVERRIDE 5 /* SELECTIVITY = SAMPLED */ #define RDB_K_INFO_OPT_PREF_SAMPLED 6 /* SELECTIVITY = AGGRESSIVE (aka Oracle RDBMS) */ #define RDB_K_INFO_OPT_PREF_AGGRESSIVE 7 /* *----------------------------------------------------------------------------- * Settings accepted for RDB_K_INFO_REQ_OPT_SET_COMPL *----------------------------------------------------------------------------- */ /* Compliance OPTIONAL */ #define RDB_K_INFO_OUTL_COMPL_OPTIONAL 0 /* Compliance MANDATORY */ #define RDB_K_INFO_OUTL_COMPL_MANDATORY 1 /* *----------------------------------------------------------------------------- * Index values for the RDB_K_INFO_DB_MEMORY_MAPPING result buffer *----------------------------------------------------------------------------- */ /* Subtags for MEMORY_MAPPING */ #define RDB_K_INFO_MEMMAP_SYSBUF 0 #define RDB_K_INFO_MEMMAP_VLM 1 #define RDB_K_INFO_MEMMAP_WINDOW_CNT 2 #define RDB_K_INFO_MEMMAP_RESIDENT 3 #define RDB_K_INFO_MEMMAP_WORKING_SET 4 /* *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * RDB_K_EXT_ * RDB_K_EXT__ * This section contains the extension tags used in calls to RDB_EXTENSION. *--------------------------------------------------------------------------- */ /* *----------------------------------------------------------------------------- * Call indices *----------------------------------------------------------------------------- */ #define RDB_K_EXT_MIN 1 #define RDB_K_EXT_ANALYZE 1 #define RDB_K_EXT_MONITOR_SHOW 2 #define RDB_K_EXT_MONITOR_OPER 3 #define RDB_K_EXT_RESOURCE_SHOW 4 #define RDB_K_EXT_CONVERT_FIXUP 5 #define RDB_K_EXT_GARBAGE_COLLECT RDB_K_EXT_CONVERT_FIXUP /* reused tag */ #define RDB_K_EXT_VERIFY 6 /* Rdb/ELN - REUSE */ #define RDB_K_EXT_DELPRC_STREAM 7 #define RDB_K_SWEEP RDB_K_EXT_DELPRC_STREAM /* reused tag */ #define RDB_K_EXT_PARSE_ACL 8 #define RDB_K_EXT_FORMAT_ACL 9 #define RDB_K_EXT_RETURN_ACCESS 10 #define RDB_K_EXT_CHECK_CONSTRAINTS 11 #define RDB_K_EXT_SET_TXN_CURRENT 12 #define RDB_K_EXT_OLDEST_TRANSACTION RDB_K_EXT_SET_TXN_CURRENT /* resued tag */ #define RDB_K_EXT_CHECK_ACCESS 13 #define RDB_K_EXT_SET_AUDIT 14 /* Parse ANSI SQL date/time literal */ #define RDB_K_EXT_PARSE_DATETIME 15 /* Format ANSI SQL date/time literal */ #define RDB_K_EXT_FORMAT_DATETIME 16 /* get character set information */ #define RDB_K_EXT_MIA_SYSTEM_INFO 17 /* Pack date/time vector to quadword */ #define RDB_K_EXT_PACK_DATETIME 18 /* Unpack quadword to date/time vector */ #define RDB_K_EXT_UNPACK_DATETIME 19 /* Establish default transaction TPB */ #define RDB_K_EXT_SET_DEFAULT_TRANS 20 /* Establish default module context (includes transaction and more) */ #define RDB_K_EXT_MODULE_SETUP 20 /* Get system information */ #define RDB_K_EXT_SYSTEM_INFO 21 /* Get/Set engine information */ #define RDB_K_EXT_ENGINE_INFO 22 /* Get/Set dispatch information */ #define RDB_K_EXT_DISPATCH_INFO 23 /* Check external routine existence */ #define RDB_K_EXT_CHECK_EXT_ROUTINE 24 /* Process TRACE flags set and show */ #define RDB_K_EXT_SET_TRACE_FLAGS 25 /* new ext functions for controlling XA distributed transactions */ #define RDB_K_EXT_RECOVER_XA 26 #define RDB_K_EXT_COMMIT_XA 27 #define RDB_K_EXT_ROLLBACK_XA 28 /* new extension functions for client context management (ext funnctions) */ #define RDB_K_EXT_CREATE_CLIENT_CTX 29 #define RDB_K_EXT_DELETE_CLIENT_CTX 30 #define RDB_K_EXT_SET_CLIENT_CTX 31 #define RDB_K_EXT_GET_CLIENT_CTX 32 /* allows client to register callback routine (used for transaction */ /* cleanup after a distributed TM commits/rollsback a transaction) */ #define RDB_K_EXT_SET_TXN_CALLBACK 33 /* these rdb_extension functions are used to allow fine tuning of the */ /* deferred index updates (see TPB_K_DEFER_INDEX_UPDATES) */ #define RDB_K_EXT_PREP_DEFERRED_INDEX 34 #define RDB_K_EXT_UPDATE_DEFERRED_INDEX 35 /* Allow user to pass extra reserving clauses */ #define RDB_K_EXT_RESERVE_TABLE 36 /* Check the BLR fragment */ #define RDB_K_EXT_PARSE_VALEXP_BLR 37 /* Allow user to pass extra evaluating clauses */ #define RDB_K_EXT_EVALUATE_CONSTRAINT 38 /* Establish the SQL language level (for semantic support) */ #define RDB_K_EXT_SET_SQL_LEVEL 39 /* Terminate IMPORT DATABASE scope */ #define RDB_K_EXT_BEGIN_IMPORT_DATABASE 40 #define RDB_K_EXT_END_IMPORT_DATABASE 41 /* Return the dtype of the BLR expression */ #define RDB_K_EXT_GET_VALEXP_DTYPE 42 /* Access the quietpoint lock */ #define RDB_K_EXT_REQUEST_QUIET_POINT 43 #define RDB_K_EXT_RELEASE_QUIET_POINT 44 /* Enable/Disable the query governor */ #define RDB_K_EXT_QUERY_GOVERNOR 45 /* Modify the AIP */ #define RDB_K_EXT_MODIFY_AIP 46 #define RDB_K_EXT_MAX 46 /* *----------------------------------------------------------------------------- * Specific call parameters * The value 1-4 is reserved for the RDB_K_INFO_ tags * All tags start at 5 *----------------------------------------------------------------------------- */ /* *----------------------------------------------------------------------------- * tags specific to Analyze called through RDB_EXTENSION *----------------------------------------------------------------------------- */ #define RDB_K_EXT_ANALYZE_MIN 5 #define RDB_K_EXT_PAGE_CNT 5 #define RDB_K_EXT_PAGE_SIZE 6 #define RDB_K_EXT_REC_LEN 7 #define RDB_K_EXT_REC_CNT 8 #define RDB_K_EXT_FRAG_CNT 9 #define RDB_K_EXT_LEN_AVAIL 10 #define RDB_K_EXT_LEN_USED 11 #define RDB_K_EXT_USED_HIST 12 #define RDB_K_EXT_NODE_LEN 13 #define RDB_K_EXT_DUP_LEN 14 #define RDB_K_EXT_NODE_CNT 15 #define RDB_K_EXT_DUP_CNT 16 #define RDB_K_EXT_NODE_LEVEL 17 #define RDB_K_EXT_ANALYZE_MAX 17 /* *----------------------------------------------------------------------------- * tags specific to ACL *----------------------------------------------------------------------------- */ #define RDB_K_EXT_ACL_MIN 5 #define RDB_K_EXT_ACL_STR 5 #define RDB_K_EXT_ACL_ENT 6 #define RDB_K_EXT_ACL_WIDTH 7 #define RDB_K_EXT_ACL_TERM 8 #define RDB_K_EXT_ACL_INDENT 9 #define RDB_K_EXT_ACL_ERRPOS 10 #define RDB_K_EXT_ACL_DB_ACCESS 11 #define RDB_K_EXT_ACL_REL_ACCESS 12 #define RDB_K_EXT_ACL_ACCESS 13 #define RDB_K_EXT_ACL_FLD_ACCESS 14 #define RDB_K_EXT_ACL_PRIV_NAMES 15 #define RDB_K_EXT_ACL_FORMAT 16 #define RDB_K_EXT_ACL_TYPE_ANSI 17 #define RDB_K_EXT_ACL_DB_ACCNOVR 18 #define RDB_K_EXT_ACL_REL_ACCNOVR 19 #define RDB_K_EXT_ACL_FLD_ACCNOVR 20 #define RDB_K_EXT_ACL_MOD_ACCESS 21 #define RDB_K_EXT_ACL_MOD_ACCNOVR 22 #define RDB_K_EXT_ACL_RTN_ACCESS 23 #define RDB_K_EXT_ACL_RTN_ACCNOVR 24 #define RDB_K_EXT_ACL_SEQ_ACCESS 25 #define RDB_K_EXT_ACL_SEQ_ACCNOVR 26 #define RDB_K_EXT_ACL_PARSE_REVOKE 27 #define RDB_K_EXT_ACL_MAX 27 /* *----------------------------------------------------------------------------- * tags specific to SET AUDIT *----------------------------------------------------------------------------- */ #define RDB_K_EXT_AUD_MIN 5 #define RDB_K_EXT_AUD_JNL 5 #define RDB_K_EXT_AUD_ALA 6 #define RDB_K_EXT_AUD_FIRST 7 #define RDB_K_EXT_AUD_FLUSH 8 #define RDB_K_EXT_AUD_TYPE 9 #define RDB_K_EXT_AUD_PURGE 10 #define RDB_K_EXT_AUD_PRIV 11 #define RDB_K_EXT_AUD_START 12 #define RDB_K_EXT_AUD_STOP 13 #define RDB_K_EXT_AUD_ENABLE 14 #define RDB_K_EXT_AUD_DISABLE 15 #define RDB_K_EXT_AUD_RMU 16 #define RDB_K_EXT_AUD_PROT 17 #define RDB_K_EXT_AUD_IDENT 18 #define RDB_K_EXT_AUD_ACE 19 #define RDB_K_EXT_AUD_DACCESS 20 #define RDB_K_EXT_AUD_MACCESS 21 #define RDB_K_EXT_AUD_ALL 22 #define RDB_K_EXT_AUD_SCHEMA 23 #define RDB_K_EXT_AUD_TABLE 24 #define RDB_K_EXT_AUD_COLUMN 25 #define RDB_K_EXT_AUD_NONE 26 #define RDB_K_EXT_AUD_NAME 27 #define RDB_K_EXT_AUD_RMU_CMD 28 #define RDB_K_EXT_AUD_MAX 28 /* * These literals are used to define the legal values for the * RDB_K_EXT_AUD_TYPE tag */ #define RDB_K_AUDIT_TYPE_AUDIT 1 #define RDB_K_AUDIT_TYPE_ALARM 2 #define RDB_K_AUDIT_TYPE_BOTH 3 /* *----------------------------------------------------------------------------- * Tags specific to parsing datatypes. *----------------------------------------------------------------------------- */ /* Minimum value */ #define RDB_K_EXT_DT_MIN 5 /* Literal string to parse */ #define RDB_K_EXT_DT_STRING 5 /* Subtype of literal */ #define RDB_K_EXT_DT_SUB_TYPE 6 /* Value after parse */ #define RDB_K_EXT_DT_VALUE 7 /* Seconds precision */ #define RDB_K_EXT_DT_SCALE 8 /* Interval leading field precision */ #define RDB_K_EXT_DT_ILF_PREC 9 /* Vector of date/time fields */ #define RDB_K_EXT_DT_VECTOR 10 /* data type */ #define RDB_K_EXT_DT_TYPE 11 /* length, collation */ #define RDB_K_EXT_DT_LENGTH 12 /* collating sequence */ #define RDB_K_EXT_DT_COLLATION 13 /* Maximum value */ #define RDB_K_EXT_DT_MAX 13 /* *----------------------------------------------------------------------------- * Tags specific to module setup *----------------------------------------------------------------------------- */ #define RDB_K_EXT_TXN_MIN 5 /* Default tpb */ #define RDB_K_EXT_TXN_DEFAULT_TPB 5 /* Pseudo module name */ #define RDB_K_EXT_TXN_MODULE_NAME 6 /* Temporary DDL for this module */ #define RDB_K_EXT_TXN_TEMP_DDL 7 #define RDB_K_EXT_TXN_MAX 7 /* *----------------------------------------------------------------------------- * Tags specific to SET_SQL_LEVEL *----------------------------------------------------------------------------- */ #define RDB_K_EXT_LVL_MIN 5 /* Dialect level */ #define RDB_K_EXT_LVL_LEVEL 5 /* Autotranslate */ #define RDB_K_EXT_LVL_AUTOTRANS 6 #define RDB_K_EXT_LVL_MAX 6 /* *----------------------------------------------------------------------------- * Tags specific to QUERY_GOVERNOR *----------------------------------------------------------------------------- */ #define RDB_K_EXT_QG_MIN 5 /* Limit CPU time */ #define RDB_K_EXT_QG_CPU_TIME 5 /* Limit ELAPSED time */ #define RDB_K_EXT_QG_ELAPSED_TIME 6 /* Limit rows */ #define RDB_K_EXT_QG_RETURNED_ROWS 7 #define RDB_K_EXT_QG_MAX 7 /* *----------------------------------------------------------------------------- * Tags specific to RDB_K_EXT_MODIFY_AIP *----------------------------------------------------------------------------- */ #define RDB_K_EXT_MODAIP_MIN 5 #define RDB_K_EXT_MODAIP_LAREA_ID 5 #define RDB_K_EXT_MODAIP_REBUILD_SPAMS 6 #define RDB_K_EXT_MODAIP_LAREA_NAME 7 #define RDB_K_EXT_MODAIP_LAREA_RENAME 8 #define RDB_K_EXT_MODAIP_TABLE_NAME 9 #define RDB_K_EXT_MODAIP_THRESHOLDS 10 #define RDB_K_EXT_MODAIP_REC_LENGTH 11 #define RDB_K_EXT_MODAIP_MAX 11 /* *----------------------------------------------------------------------------- * tags specific to database system functions *----------------------------------------------------------------------------- */ #define RDB_K_EXT_SYS_MIN 5 /* Database name passed through the handle */ #define RDB_K_EXT_SYS_DB_NAME 5 /* temp name */ #define RDB_K_EXT_SYS_HND_DB_NAME RDB_K_EXT_SYS_DB_NAME /* Database type information */ #define RDB_K_EXT_SYS_DB_TYPE 6 #define RDB_K_EXT_SYS_MAX 6 /* *----------------------------------------------------------------------------- * tags specific to database engine functions *----------------------------------------------------------------------------- */ #define RDB_K_EXT_ENG_MIN 5 /* Trace callback address */ #define RDB_K_EXT_ENG_TRC_CB_ADDR 5 /* Trace callback param */ #define RDB_K_EXT_ENG_TRC_CB_PARAM 6 /* Env buffer address */ #define RDB_K_EXT_ENG_ENV_BUF_ADDR 7 /* Trace callback param */ #define RDB_K_EXT_ENG_ENV_BUF_LEN 8 /* CPID for Windows NT */ #define RDB_K_EXT_ENG_CPID_VALUE 9 #define RDB_K_EXT_ENG_MAX 9 /* *----------------------------------------------------------------------------- * tags specific to dispatch functions *----------------------------------------------------------------------------- */ #define RDB_K_EXT_DISP_MIN 5 /* receive prefetch count */ #define RDB_K_EXT_DISP_RCV_PREFETCH 5 /* segmented string prefetch count */ #define RDB_K_EXT_DISP_SGS_PREFETCH 6 /* let call know if the asynch feature is enabled */ #define RDB_K_EXT_DISP_ASYNCH_ENABLED 7 #define RDB_K_EXT_DISP_MAX 7 /* *----------------------------------------------------------------------------- * tags specific to extended character set support (MIA/NTT) *----------------------------------------------------------------------------- */ #define RDB_K_EXT_CSET_MIN 5 #define RDB_K_EXT_CSET_BY_ID 5 #define RDB_K_EXT_CSET_BY_NAME 6 #define RDB_K_EXT_CSET_LIST 7 #define RDB_K_EXT_CSET_ID 8 #define RDB_K_EXT_CSET_NAME 9 #define RDB_K_EXT_CSET_VERSION 10 #define RDB_K_EXT_CSET_FORM_OF_USE 11 #define RDB_K_EXT_CSET_NAMES_CSET 12 #define RDB_K_EXT_CSET_MIN_OCTETS 13 #define RDB_K_EXT_CSET_MAX_OCTETS 14 #define RDB_K_EXT_CSET_STR_WILD 15 #define RDB_K_EXT_CSET_CHAR_WILD 16 #define RDB_K_EXT_CSET_BLANK 17 #define RDB_K_EXT_CSET_ASSOC_CSET 18 #define RDB_K_EXT_CSET_FLAGS 19 #define RDB_K_EXT_CSET_TRANS 20 #define RDB_K_EXT_CSET_MAX 20 /* *----------------------------------------------------------------------------- * tags specific to external routines *----------------------------------------------------------------------------- */ #define RDB_K_EXT_RTX_MIN 5 /* Routine name */ #define RDB_K_EXT_RTX_ROUTINE_NAME 5 /* Error type */ #define RDB_K_EXT_RTX_ERROR_TYPE 6 /* Image name */ #define RDB_K_EXT_RTX_IMAGE_NAME 7 /* Body entry point name */ #define RDB_K_EXT_RTX_BODY_ENT_NAME 8 /* Notify entry point name */ #define RDB_K_EXT_RTX_NTFY_ENT_NAME 9 /* Error text */ #define RDB_K_EXT_RTX_ERROR_TEXT 10 #define RDB_K_EXT_RTX_MAX 10 /* *----------------------------------------------------------------------------- * Rdb_Extension tags specific to RDB_K_EXT_SET_TRACE_FLAGS *----------------------------------------------------------------------------- */ #define RDB_K_EXT_FLAG_MIN 5 /* Input flag string */ #define RDB_K_EXT_FLAG_STRING 5 /* Ask for current flag setting, prefix in out buffer */ #define RDB_K_EXT_FLAG_SHOW 6 #define RDB_K_EXT_FLAG_MAX 6 /* *----------------------------------------------------------------------------- * Rdb_Extension tags specific to XA distributed transaction management: * RDB_K_EXT_RECOVER_XA, RDB_K_EXT_COMMIT_XA and RDB_K_EXT_ROLLBACK_XA *----------------------------------------------------------------------------- */ #define RDB_K_EXT_XA_TID 5 #define RDB_K_EXT_XA_MAXCOUNT 6 #define RDB_K_EXT_XA_FLAGS 7 #define RDB_K_EXT_XA_MAX 7 /* *----------------------------------------------------------------------------- * Rdb_Extension tags specific to external function client management: * RDB_K_EXT_CREATE_CLIENT_CTX, RDB_K_EXT_DELETE_CLIENT_CTX, * RDB_K_EXT_SET_CLIENT_CTX and RDB_K_EXT_GET_CLIENT_CTX *----------------------------------------------------------------------------- */ #define RDB_K_EXT_CC_PARENT 5 #define RDB_K_EXT_CC_UIC 6 #define RDB_K_EXT_CC_USERNAME 7 #define RDB_K_EXT_CC_MAX 7 /* *----------------------------------------------------------------------------- * Tags specific to verify constraint *----------------------------------------------------------------------------- */ #define RDB_K_EXT_VFYC_MIN 5 #define RDB_K_EXT_VFYC_TABLE_NAME 5 #define RDB_K_EXT_VFYC_CONSTRAINT_NAME 6 #define RDB_K_EXT_VFYC_EXCLUDE_UNIQUE 7 #define RDB_K_EXT_VFYC_INCLUDE_DISABLED 8 #define RDB_K_EXT_VFYC_FAILURE_TEXT 9 #define RDB_K_EXT_VFYC_TRUNCATE 10 #define RDB_K_EXT_VFYC_MAX 10 /* *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * RDB_K_CSET_ * This section contains the MIA character set ids, etc. (as per DEC STD 169 * compliance) *--------------------------------------------------------------------------- */ #define RDB_K_CSET_MCS 0 /* Synonym for MCS */ #define RDB_K_CSET_DEC_MCS RDB_K_CSET_MCS #define RDB_K_CSET_ISOLATIN1 1 #define RDB_K_CSET_ISOLATIN2 2 #define RDB_K_CSET_ISOLATINARABIC 3 #define RDB_K_CSET_ISOLATINGREEK 4 #define RDB_K_CSET_ISOLATINCYRILLIC 5 #define RDB_K_CSET_ISOLATINHEBREW 6 #define RDB_K_CSET_ISOLATIN3 7 #define RDB_K_CSET_ISOLATIN4 8 #define RDB_K_CSET_ISOLATIN5 9 #define RDB_K_CSET_ISOLATIN6 10 #define RDB_K_CSET_ISOLATIN9 13 #define RDB_K_CSET_KATAKANA 32 #define RDB_K_CSET_KANJI 64 #define RDB_K_CSET_HANZI 65 #define RDB_K_CSET_KOREAN 66 #define RDB_K_CSET_HANYU 67 #define RDB_K_CSET_DTSCS 68 #define RDB_K_CSET_DEC_KANJI 96 #define RDB_K_CSET_DEC_HANZI 97 #define RDB_K_CSET_DEC_KOREAN 98 #define RDB_K_CSET_DEC_HANYU 99 #define RDB_K_CSET_DEC_SICGCC 100 #define RDB_K_CSET_GB18030 101 #define RDB_K_CSET_ASCII 256 #define RDB_K_CSET_SIMPLE_LATIN 257 #define RDB_K_CSET_ARABIC 258 /* * Character sets for Windows */ #define RDB_K_CSET_WIN_LATIN1 512 #define RDB_K_CSET_WIN_LATIN2 513 #define RDB_K_CSET_WIN_ARABIC 514 #define RDB_K_CSET_WIN_GREEK 515 #define RDB_K_CSET_WIN_CYRILLIC 516 #define RDB_K_CSET_WIN_HEBREW 517 /* * Character sets for DOS */ #define RDB_K_CSET_DOS_LATINUS 1024 #define RDB_K_CSET_DOS_LATIN1 1025 /* * Special character sets */ #define RDB_K_CSET_HEX 2048 /* * UNICODE character sets */ #define RDB_K_CSET_UNICODE 4096 /* standard UCS-2 */ #define RDB_K_CSET_UTF8 4097 /* UTF-8 Unicode 2.0 */ #define RDB_K_CSET_AL24UTFFSS 4098 /* UTF-8 Unicode 1.1 */ /* * Rdb specific character sets */ #define RDB_K_CSET_SHIFT_JIS 32760 /* %X7ff8 */ #define RDB_K_CSET_MS_KANJI RDB_K_CSET_SHIFT_JIS /* synonym: SHIFT_JIS */ #define RDB_K_CSET_DEVANAGARI 32761 /* %X7ff9 */ #define RDB_K_CSET_TACTIS 32762 /* %X7ffa */ #define RDB_K_CSET_THAI RDB_K_CSET_TACTIS /* synonym */ #define RDB_K_CSET_UJIS 32763 /* %X7ffb */ #define RDB_K_CSET_PSEUDO_MOCS 32764 /* %X7ffc */ #define RDB_K_CSET_BIG5 32766 /* %X7ffe */ #define RDB_K_CSET_COMPOUND_STRING RDB_K_CSET_BIG5 /* obsolete */ #define RDB_K_CSET_UNSPECIFIED 32767 /* %X7fff */ /* * MIA Form of use constants * Note: MIXED are ODD, and FIXED are even values */ #define RDB_K_CSET_FOU_MIN 0 /* fixed octet - MCS style encoding */ #define RDB_K_CSET_FIXED_OCTET 0 /* mixed octet + DEC '_and_ascii' practice */ #define RDB_K_CSET_MIXED_OCTET 1 /* fixed octet - no upcasing allowed */ #define RDB_K_CSET_FIXED_NO_UP 2 /* as in MIXED_OCTET plus SS2 as introducer to alternate single octet */ /* encoding */ #define RDB_K_CSET_MIXED_SS2 3 /* fixed octet - upcasing only G1 ( 7 bit ) */ #define RDB_K_CSET_FIXED_UP_G1 4 /* as in MIXED_SS2 plus SS3 as introducer to alternate double character */ /* encoding */ #define RDB_K_CSET_MIXED_SS3 5 /* fixed octet - other */ #define RDB_K_CSET_FIXED_OTHER 6 /* as in MIXED_OCTET plus %X'C2CB' as introducer to alternate double */ /* character encoding */ #define RDB_K_CSET_MIXED_C2CB 7 /* mixed with leading tag ( compound str ) */ #define RDB_K_CSET_MIXED_TAG 9 /* Mixed with SHIFT IN/OUT to specify alternate character encoding */ #define RDB_K_CSET_MIXED_SHIFT 11 /* Mixed with binary pattern of high order bits specifying char size */ #define RDB_K_CSET_MIXED_110 13 /* Mixed with 2nd octet in range %X'30' - %X'39' specifying 4 octet */ #define RDB_K_CSET_MIXED_GB18030 15 /* make sure same as largest FOU constant */ #define RDB_K_CSET_FOU_MAX 15 /* * CSET flag bit values */ #define RDB_V_CSET_CONTAINS_ASCII 0 /* all octets of the space char */ #define RDB_V_CSET_SPACE_OCTET_REPEATS 1 /* * CSET max octets */ /* Largest 'character' octet size */ #define RDB_K_CSET_MAX_OCTETS_PER_CHAR 4 /* *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * RDB_K_SUB_TYPE_ * This section contains the tags needed by RDB_FIELD_SUB_TYPE *--------------------------------------------------------------------------- */ /* * Segmented string subtypes */ /* Unspecified */ #define RDB_K_SUB_TYPE_UNS 0 /* TEXT segments */ #define RDB_K_SUB_TYPE_TEXT 1 /* BLR segments */ #define RDB_K_SUB_TYPE_BLR 2 /* MBLR (metadata) segments */ #define RDB_K_SUB_TYPE_MBLR 3 /* BINARY data in segment */ #define RDB_K_SUB_TYPE_BINARY 4 /* OBLR (outline) segments */ #define RDB_K_SUB_TYPE_OBLR 5 #define RDB_K_SUB_TYPE_SQL_CLOB 6 /* database cset */ #define RDB_K_SUB_TYPE_SQL_NCLOB 7 /* national cset */ #define RDB_K_SUB_TYPE_SQL_BLOB 8 /* unspecified/binary */ /* * Reserved range for SQL/Multimedia Services */ #define RDB_K_SUB_TYPE_SQLMM_MIN 1000 #define RDB_K_SUB_TYPE_SQLMM_MAX 1999 /* * User literals (internal use only) for TEXT/VARYING TEST types */ /* descriptor refers to USER literal */ #define RDB_K_SUB_TYPE_USER -1 /* descriptor refers to NULL literal */ #define RDB_K_SUB_TYPE_NULL -2 /* SERdb - classification label */ #define RDB_K_SUB_TYPE_LABEL -3 /* text/varying text is a DBKEY */ #define RDB_K_SUB_TYPE_DBKEY -4 /* refers to CURRENT_USER builtin */ #define RDB_K_SUB_TYPE_CURRENT_USER -5 /* refers to SESSION_USER builtin */ #define RDB_K_SUB_TYPE_SESSION_USER -6 /* refers to SYSTEM_USER builtin */ #define RDB_K_SUB_TYPE_SYSTEM_USER -7 /* refers to CURRENT_UID builtin */ #define RDB_K_SUB_TYPE_CURRENT_UID -8 /* refers to SESSION_UID builtin */ #define RDB_K_SUB_TYPE_SESSION_UID -9 /* refers to SYSTEM_UID builtin */ #define RDB_K_SUB_TYPE_SYSTEM_UID -10 /* * Numeric value subtypes */ #define RDB_K_SUB_TYPE_BOOLEAN 1 /* indicate BOOLEAN type */ /* *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * This section contains the tags needed by triggers *--------------------------------------------------------------------------- */ /* * Trigger action clumplets */ #define RDB_K_TRIGGERED_ACTION 1 #define RDB_K_TRIGGERED_FREQUENCY 2 #define RDB_K_TRIGGERED_CONDITION 3 #define RDB_K_TRIGGERED_STATEMENT 4 /* * Trigger action frequency */ #define RDB_K_TRIGGER_ONCE 0 #define RDB_K_TRIGGER_FOR_EACH_ROW 1 /* * Trigger type */ #define RDB_K_BEFORE_STORE 1 #define RDB_K_BEFORE_ERASE 2 #define RDB_K_BEFORE_MODIFY 3 #define RDB_K_AFTER_STORE 4 #define RDB_K_AFTER_ERASE 5 #define RDB_K_AFTER_MODIFY 6 #define RDB_K_INSTEAD_OF_STORE 7 #define RDB_K_INSTEAD_OF_ERASE 8 #define RDB_K_INSTEAD_OF_MODIFY 9 /* *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * This section contains the tags needed by referential constraints *--------------------------------------------------------------------------- */ /* * Constraint match type */ #define RDB_K_CON_MATCH_NONE 0 #define RDB_K_CON_MATCH_ALL 1 /* * Constraint type */ #define RDB_K_CON_CONDITION 1 #define RDB_K_CON_PRIMARY_KEY 2 #define RDB_K_CON_REFERENTIAL 3 #define RDB_K_CON_UNIQUE 4 #define RDB_K_CON_VIEW_CHECK 5 #define RDB_K_CON_NOT_NULL 6 /* * Single classification level table constraint */ #define RDB_K_CON_SINGLE_LEVEL 7 /* * Constraint referential action type */ #define RDB_K_CONACT_NONE 0 #define RDB_K_CONACT_CASCADE 1 #define RDB_K_CONACT_SET_DEFAULT 2 #define RDB_K_CONACT_SET_NULL 3 /* *--------------------------------------------------------------------------- * RDB_K_DUPLICATES_ * This section contains the extension tags used with duplicates definition *--------------------------------------------------------------------------- */ #define RDB_K_DUPLICATES_SORTED 0 #define RDB_K_DUPLICATES_COMPRESSED 1 /* *--------------------------------------------------------------------------- * RDB_K_REQTYPE_ * This section constains the type of request blocks. Used by TRACE to * identify the different usage of requests *--------------------------------------------------------------------------- */ #define RDB_K_REQTYPE_OTHER 0 #define RDB_K_REQTYPE_USER_REQUEST 1 #define RDB_K_REQTYPE_PROCEDURE 2 #define RDB_K_REQTYPE_FUNCTION 3 #define RDB_K_REQTYPE_TRIGGER 4 #define RDB_K_REQTYPE_CONSTRAINT 5 /* *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * BLR_K_ * This section contains all the values for the Binary Language Representatio * tags. The tags are used to describe the DML operations. *--------------------------------------------------------------------------- */ /* *----------------------------------------------------------------------------- * BLR version tags *----------------------------------------------------------------------------- */ #define BLR_K_VERSION2 2 #define BLR_K_VERSION3 3 #define BLR_K_VERSION4 4 /* *----------------------------------------------------------------------------- * BLR tags *----------------------------------------------------------------------------- */ #define BLR_K_MIN 1 /* * Verbs */ #define BLR_K_VERB_MIN 1 #define BLR_K_ASSIGNMENT 1 /* Transfer data value */ #define BLR_K_TRANSFER BLR_K_ASSIGNMENT /* Start of list */ #define BLR_K_BEGIN 2 #define BLR_K_DCL_VARIABLE 3 /* Declare port */ #define BLR_K_DCL_PORT 4 #define BLR_K_MESSAGE BLR_K_DCL_PORT #define BLR_K_DECLARE_PORT BLR_K_DCL_PORT #define BLR_K_ERASE 5 /* Fetch record by number */ #define BLR_K_FETCH 6 /* Classical FOR loop */ #define BLR_K_FOR 7 #define BLR_K_IF 8 /* Loop like an idiot */ #define BLR_K_LOOP 9 #define BLR_K_MODIFY 10 #define BLR_K_HANDLER 11 /* Receive a message */ #define BLR_K_RECEIVE 12 #define BLR_K_SELECT 13 /* Send a message */ #define BLR_K_SEND 14 /* Store into relation */ #define BLR_K_STORE 15 #define BLR_K_WHILE 16 #define BLR_K_LABEL 17 #define BLR_K_LEAVE 18 /* Store into relation, followed by extra stmt */ #define BLR_K_STORE2 19 #define BLR_K_PLACE 20 #define BLR_K_VERB_MAX 20 /* * BLR values */ #define BLR_K_VALUE_MIN 21 #define BLR_K_LITERAL 21 /* DBKEY of a stream */ #define BLR_K_DBKEY 22 /* Field reference */ #define BLR_K_FIELD 23 #define BLR_K_FIELD_ID 24 #define BLR_K_PARAMETER 25 #define BLR_K_VARIABLE 26 #define BLR_K_AVERAGE 27 #define BLR_K_COUNT 28 #define BLR_K_MAXIMUM 29 #define BLR_K_MINIMUM 30 #define BLR_K_TOTAL 31 #define BLR_K_STDDEV 32 #define BLR_K_SMAX 32 /* obsolete */ #define BLR_K_VARIANCE 33 #define BLR_K_SMIN 33 /* obsolete */ #define BLR_K_ADD 34 #define BLR_K_SUBTRACT 35 #define BLR_K_MULTIPLY 36 #define BLR_K_DIVIDE 37 #define BLR_K_NEGATE 38 #define BLR_K_CONCATENATE 39 #define BLR_K_SUBSTR 40 #define BLR_K_PARAMETER2 41 #define BLR_K_FROM 42 #define BLR_K_VIA 43 #define BLR_K_VALUE_MAX 43 /* BLR_K_PAREN and BLR_K_COLON are used by RDO with no collision */ /* with new values */ #define BLR_K_EXCEPT 44 #define BLR_K_PAREN 44 /* Convenient for preprocessors */ #define BLR_K_INTERSECT 45 #define BLR_K_COLON 45 /* Convenient for preprocessors */ /* Reference argument from list */ #define BLR_K_ARGUMENT BLR_K_PARAMETER #define BLR_K_PLUS BLR_K_ADD #define BLR_K_MINUS BLR_K_SUBTRACT #define BLR_K_TIMES BLR_K_MULTIPLY /* * BLR comparisons */ #define BLR_K_EQUIVALENT 46 #define BLR_K_BOOL_MIN 46 #define BLR_K_EQL 47 #define BLR_K_NEQ 48 #define BLR_K_GTR 49 #define BLR_K_GEQ 50 #define BLR_K_LSS 51 #define BLR_K_LEQ 52 #define BLR_K_CONTAINING 53 #define BLR_K_MATCHES 54 #define BLR_K_STARTS 55 #define BLR_K_BETWEEN 56 #define BLR_K_OR 57 #define BLR_K_AND 58 #define BLR_K_NOT 59 #define BLR_K_ANY 60 #define BLR_K_MISSING 61 #define BLR_K_UNIQUE 62 /* Used internally */ #define BLR_K_IDENTITY 63 #define BLR_K_LIKE 64 #define BLR_K_ANY2 65 #define BLR_K_ALL 66 #define BLR_K_BOOL_MAX 66 /* * Misc. */ /* Introduces a RSE. */ #define BLR_K_RSE 67 #define BLR_K_RSE_MIN 68 #define BLR_K_FIRST 68 /* Fields to be fetched in RSE */ #define BLR_K_PROJECT 69 /* Sort list */ #define BLR_K_SORT 70 #define BLR_K_BOOLEAN 71 #define BLR_K_RSE_MAX 71 #define BLR_K_ASCENDING 72 #define BLR_K_DESCENDING 73 /* Sort list */ #define BLR_K_SORTS BLR_K_SORT #define BLR_K_FIELDS BLR_K_PROJECT /* Relation follow (ctx, rel_id) */ #define BLR_K_RELATION 74 #define BLR_K_RELATION_ID 75 /* End of command string */ #define BLR_K_EOC 76 #define BLR_K_MAX 76 #define BLR_K_AGGREGATE 77 #define BLR_K_AGG_AVERAGE 78 #define BLR_K_AGG_COUNT 79 #define BLR_K_AGG_MAX 80 #define BLR_K_AGG_MAXIMUM BLR_K_AGG_MAX #define BLR_K_AGG_MIN 81 #define BLR_K_AGG_MINIMUM BLR_K_AGG_MIN #define BLR_K_AGG_TOTAL 82 #define BLR_K_CONTROL_BITS 83 #define BLR_K_GROUP_BY 84 #define BLR_K_GROUP_VALUE 85 #define BLR_K_MAP 86 #define BLR_K_MERGE 87 #define BLR_K_PARAMETER3 88 #define BLR_K_USER 89 #define BLR_K_SUBSTR2 90 #define BLR_K_TIMESTAMP 91 /* * Special Trigger actions */ #define BLR_K_ERROR 92 #define BLR_K_NULL 93 #define BLR_K_STATEMENT 94 /* *V4.1 * Date/Time support BLRs */ /* Alias for consistency */ #define BLR_K_CURRENT_TIMESTAMP BLR_K_TIMESTAMP /* Time Only Function */ #define BLR_K_CURRENT_TIME 95 /* Date Only Function */ #define BLR_K_CURRENT_DATE 96 /* SQL2 CAST function */ #define BLR_K_CAST 97 #define BLR_K_DESCRIPTOR 98 /* SQL2 EXTRACT function */ #define BLR_K_EXTRACT 99 /* Global field reference */ #define BLR_K_GLOBAL_FIELD 100 /* * MIA extensions */ /* offset and length in characters not bytes */ #define BLR_K_SUBSTR3 101 /* Translate btw csets + fold upper/lower */ #define BLR_K_TRANSLATE 102 /* *V6.0 */ /* ISO SQL CASE expression */ #define BLR_K_CASE 103 /* transaction control in request */ #define BLR_K_TRANSACTION 104 /* user defined request tracing */ #define BLR_K_TRACE 105 /* return procedure state information */ #define BLR_K_GET_INFO 106 /* routine invocation (both function and procedure, external and stored) */ #define BLR_K_FUNCTION 107 /* join semantics */ #define BLR_K_JOIN 108 /* join context tag */ #define BLR_K_CONTEXT 109 /* SQL92 behavior - truncation len in chars. */ #define BLR_K_PARAMETER4 110 /* row constructor */ #define BLR_K_VALUE_LIST 111 #define BLR_K_DATA_SET BLR_K_VALUE_LIST /* *obsolete* */ /* POSITION substring IN string FROM start */ #define BLR_K_POSITION 112 /* SQL statement block */ #define BLR_K_SUBSTATEMENT 113 /* Declare SQL style variable */ #define BLR_K_DCL_VARIABLE2 114 /* TRIM option trim-char from string */ #define BLR_K_TRIM 115 /* *V7.0 */ /* Special variable for function result */ #define BLR_K_FUNCTION_RESULT 116 /* *V7.1 */ /* Reference to global variable by name */ #define BLR_K_GLOBAL_VARIABLE 117 /* Allow more columns for MERGE/AGGREGATE */ #define BLR_K_MAP2 118 #define BLR_K_AGG_VARIANCE 119 #define BLR_K_AGG_STDDEV 120 /* * Prototype work */ #define BLR_K_OVERLAY 121 /* *V7.2 */ #define BLR_K_ROW_TSN 122 #define BLR_K_ROW_NUMBER 123 /* *V7.3 */ #define BLR_K_TRUE 124 #define BLR_K_FALSE 125 #define BLR_K_UNKNOWN 126 #define BLR_K_REPLACE 127 #define BLR_K_REPLACE2 128 /* End of BLR tags */ #define BLR_K_END 255 /* *----------------------------------------------------------------------------- * Record selection expressions have the form: * {}... [][][] * where projects, boolean, and sort are projection field lists, booleans, * and sort clauses. Each of this, if present, is introduced with * , , or . * Fields are identified (after introducer for values) by * * where identifies a context and is the index to * the field in the relation resolved by context. *----------------------------------------------------------------------------- */ /* *----------------------------------------------------------------------------- * Mask literals for BLR_K_CONTROL_BITS Control Bits * Remember the control bits argument is only eight bits long. Keep the * masks grouped according to usage. *----------------------------------------------------------------------------- */ /* Special value expression options */ #define RDB_M_STAT_RETURN_NULL 1 #define RDB_M_STAT_VAR_SAMPLE 2 /* Modifies BLR_K_UNIQUE */ #define RDB_M_UNIQ_ALLOW_EMPTY 1 /* Modifies BLR_K_VIA */ #define RDB_M_VIA_NO_RECORDS 1 #define RDB_M_VIA_MORE_THAN_ONE_RECORD 2 /* Modifies BLR_K_CONCATENATE */ #define RDB_M_VALIDATE_CONCATENATE 1 /* Special update actions */ #define RDB_M_UPDACT_ONE_ROW 1 /* [0] only update one row */ #define RDB_M_UPDACT_NO_TRIGS 2 /* [1] disable triggers */ #define RDB_M_UPDACT_NO_CONSTR 4 /* [2] disable constraint */ #define RDB_M_UPDACT_AUTO_OVERRIDE 8 /* [3] allow insert/update to auto */ /* Cursor control bits */ #define RDB_M_UPDATE_CURSOR 1 /* [0] */ #define RDB_M_SINGLETON_SELECT 2 /* [1] */ #define RDB_M_FOR_UPDATE_ONLY 4 /* [2] update only cursor */ #define RDB_M_SEARCHED_UPDATE 8 /* [3] SQL searched UPDATE */ #define RDB_M_SEARCHED_DELETE 16 /* [4] SQL searched DELETE */ #define RDB_M_LOOPED_INSERT 32 /* [5] SQL INSERT...SELECT */ #define RDB_M_FETCH_NOWAIT 64 /* [6] SQL SELECT...NOWAIT */ #define RDB_M_MERGE_LOOP 128 /* [7] SQL MERGE statement */ /* Declare Variable control bits */ #define RDB_M_VAR_NOT_UPDATABLE 1 /* variable is not updatable */ /* Routine control bits (obsolete) */ #define RDB_M_RTN_INTRINSIC 1 /* Modify BLR_K_OVERLAY */ #define RDB_M_OVER_USE_CHARACTERS 1 #define RDB_M_OVER_ORA_SEMANTICS 2 /* Substring (BLR_K_SUBSTR) is used for BIT STRING */ #define RDB_M_BIT_SUBSTRING 1 /* Operator (EQL, NEQ, GTR, LSS, GEQ, LEQ) control bit modifiers */ #define RDB_M_NON_PAD_STR_COMPARE 1 /* Masks for BLR_K_TRANSLATE */ #define RDB_M_XLATE_CHAR_SUBS 1 /* Masks for BLR_K_LIKE */ #define RDB_M_LIKE_REGULAR_EXPR 1 /* aka SIMILAR operator */ #define RDB_M_LIKE_IGNORE_CASE 2 /* uses IGNORE CASE clause */ /* Temp definitions */ #define RDB_K_UPDACT_ONE_ROW RDB_M_UPDACT_ONE_ROW #define RDB_K_UPDACT_NO_TRIGS RDB_M_UPDACT_NO_TRIGS /* *----------------------------------------------------------------------------- * Subcodes for BLR_K_GET_INFO *----------------------------------------------------------------------------- */ #define RDB_K_INF_MIN 0 #define RDB_K_INF_SQLSTATE RDB_K_INF_MIN /* return CHAR(5) sqlstate */ #define RDB_K_INF_SQLCODE 1 /* return LONGWORD sqlcode */ #define RDB_K_INF_ACTIVE_ROWCOUNT 2 /* return LONGWORD current active row */ #define RDB_K_INF_TXN_TYPE 3 /* return LONGWORD transaction type */ #define RDB_K_INF_ISOLATION 4 /* return LONGWORD isolation level */ #define RDB_K_INF_ROWCOUNT 5 /* return INTEGER row count */ #define RDB_K_INF_COMMIT_TXN_COUNT 6 /* return INTEGER count if COMMITED txn */ #define RDB_K_INF_ROLLBACK_TXN_COUNT 7 /* return INTEGER count if ROLLED BACK txn */ #define RDB_K_INF_TXN_ACTIVE 8 /* return CHAR(1) transaction active or not */ #define RDB_K_INF_TXN_DISTRIBUTED 9 /* return INTEGER 2PC transaction active or not */ #define RDB_K_INF_CURRENT_USER 10 /* return CHAR(31) routine owner username */ #define RDB_K_INF_SESSION_USER 11 /* return CHAR(31) session username */ #define RDB_K_INF_SYSTEM_USER 12 /* return CHAR(31) process username */ #define RDB_K_INF_COLUMN_DEFAULT 13 /* derived type: columns SQL default */ #define RDB_K_INF_CONNECTION_NAME 14 /* return CHAR(31) connection name */ #define RDB_K_INF_CALLING_ROUTINE 15 /* return CHAR(31) routine name */ #define RDB_K_INF_CURRENT_SEQUENCE 16 /* return BIGINT sequence number */ #define RDB_K_INF_NEXT_SEQUENCE 17 /* return BIGINT sequence number */ #define RDB_K_INF_PARAMETER_DEFAULT 18 /* derived type: parameters SQL default */ #define RDB_K_INF_CURRENT_UID 19 /* return INTEGER routine owner user id */ #define RDB_K_INF_SESSION_UID 20 /* return INTEGER session user id */ #define RDB_K_INF_SYSTEM_UID 21 /* return INTEGER process user id */ #define RDB_K_INF_TXN_TIMESTAMP 22 /* return TIMESTAMP of txn start */ #define RDB_K_INF_TXN_TSN 23 /* return QUADWORD tsn */ #define RDB_K_INF_HS_MODE 24 /* return CHAR(31) mode for HS */ #define RDB_K_INF_SERVER_IDENT 25 /* return CHAR(31) pretty ident */ #define RDB_K_INF_TXN_CHANGES 26 /* return INTEGER */ #define RDB_K_INF_IMAGE_NAME 27 /* return VARCHAR (255) */ #define RDB_K_INF_QG_ROW_LIMIT 28 /* return BIGINT(0) */ #define RDB_K_INF_QG_CPU_TIME 29 /* return INTEGER(0) */ #define RDB_K_INF_QG_ELAPSED_TIME 30 /* return INTEGER(0) */ #define RDB_K_INF_TRACE_ENABLED 31 /* return INTEGER(0) */ #define RDB_K_INF_TTBL_COLUMN_DEFAULT 32 /* derived type: columns SQL default */ #define RDB_K_INF_INSERT_ROWCOUNT 33 /* return LONGWORD count of inserted rows */ #define RDB_K_INF_UPDATE_ROWCOUNT 34 /* return LONGWORD count of updated rows */ /* END OF RANGE */ #define RDB_K_INF_MAX 34 /* *----------------------------------------------------------------------------- * Trim-options for BLR_K_TRIM - describe the operations of the TRIM function *----------------------------------------------------------------------------- */ #define RDB_M_TRIM_LEADING 1 /* trim leading characters */ #define RDB_M_TRIM_TRAILING 2 /* trim trailing characters */ #define RDB_M_TRIM_BOTH (RDB_M_TRIM_LEADING | RDB_M_TRIM_TRAILING) /* *----------------------------------------------------------------------------- * Hold options for cursors *----------------------------------------------------------------------------- */ #define RDB_M_HOLD_NONE 0 /* close on commit/rollback */ #define RDB_M_HOLD_COMMIT 1 /* hold on commit */ #define RDB_M_HOLD_ROLLBACK 2 /* hold on rollback */ #define RDB_M_HOLD_ALL (RDB_M_HOLD_COMMIT | RDB_M_HOLD_ROLLBACK) /* *----------------------------------------------------------------------------- * These symbolic names refer to bit offsets in the RDB_FLAGS field * in the RDB_CONSTRAINTS relation. We have 32 bits.... *----------------------------------------------------------------------------- */ /* */ /* Symbolic name Value */ #define RDB_K_CN_FLAGS_CONSTR_DISABLED 0 #define RDB_K_CN_FLAGS_CONSTR_UNCHECKED 1 #define RDB_K_CN_FLAGS_CONSTR_GEN_NAME 2 /* user supplied */ #define RDB_K_CN_FLAGS_NOT_NULL 3 #define RDB_K_CN_FLAGS_PRIMARY_KEY 4 #define RDB_K_CN_FLAGS_REFERENTIAL 5 #define RDB_K_CN_FLAGS_CONDITION 6 #define RDB_K_CN_FLAGS_UNIQUE 7 #define RDB_M_CN_FLAGS_CONSTR_DISABLED (1<