-- Copyright (c) 1997, 2008, Oracle Corporation. All Rights Reserved. print 'Copyright (c) 1997, 2008, Oracle Corporation. All Rights Reserved.'; set flags 'hidden'; print 'Please ignore any FIELD_EXISTS error for the domain RDB$FILE_SPECIFICATION'; create domain RDB$FILE_SPECIFICATION char(255); set flags 'nohidden'; -- This script creates information tables, special read-only tables -- which can be created in an Oracle Rdb database and used to retrieve -- database attributes. -- Once created, the tables may be deleted using DROP TABLE syntax. -- NOTE: Modifications to the names of the tables or columns in the -- information table definitions shown here will result in errors when -- the tables are defined. print 'Creating RDB$CACHES'; drop table RDB$CACHES if exists; create information table RDB$CACHES ( RDB$ALLOCATION RDB$COUNTER, RDB$EXTENT RDB$COUNTER, RDB$CACHE_ID RDB$OBJECT_ID, RDB$FLAGS RDB$BIT_MASK, RDB$ROW_LENGTH RDB$COUNTER, RDB$CACHE_SIZE RDB$COUNTER, RDB$WINDOW_COUNT RDB$COUNTER, RDB$NUM_RESERVED_ROWS RDB$COUNTER, RDB$NUM_SWEEP_ROWS RDB$COUNTER, RDB$CACHE_NAME RDB$OBJECT_NAME, RDB$LOCATION RDB$FILE_SPECIFICATION, RDB$SNAP_CACHE_SIZE RDB$COUNTER, RDB$PHYSICAL_MEMORY RDB$QUAD_COUNTER); print 'Creating RDB$DATABASE_JOURNAL'; drop table RDB$DATABASE_JOURNAL if exists; create information table RDB$DATABASE_JOURNAL ( RDB$CONDITION RDB$COUNTER, RDB$DEFAULT_ALLOCATION RDB$COUNTER, RDB$DEFAULT_EXTENT RDB$COUNTER, RDB$CURRENT_BACKUP_SEQUENCE RDB$COUNTER, RDB$CURR_RECOVERY_SEQUENCE RDB$COUNTER, RDB$DATABASE_BACKUP_SEQUENCE RDB$COUNTER, RDB$ALLOCATION RDB$COUNTER, RDB$SHUTDOWN_TIME_MIN RDB$COUNTER, RDB$OPERATOR_CLASSES RDB$BIT_MASK, RDB$FLAGS RDB$BIT_MASK, RDB$DEFAULT_BACKUP_FILENAME RDB$FILE_SPECIFICATION, RDB$CACHE_FILENAME RDB$FILE_SPECIFICATION, RDB$STANDBY_FILENAME RDB$FILE_SPECIFICATION, RDB$SERVER_NAME RDB$OBJECT_NAME, RDB$BACKUP_EDIT_STRING RDB$EDIT_STRING, RDB$REMOTE_NODE_NAME RDB$OBJECT_NAME, RDB$CUR_ACTIVE_AIJ RDB$COUNTER, RDB$MASTER_FILENAME RDB$FILE_SPECIFICATION); print 'Creating RDB$DATABASE_ROOT'; drop table RDB$DATABASE_ROOT if exists; create information table RDB$DATABASE_ROOT ( RDB$CREATED RDB$TIMESTAMP, RDB$LAST_FULL_BACKUP_TIME RDB$TIMESTAMP, RDB$MAJOR_VERSION RDB$COUNTER, RDB$MINOR_VERSION RDB$COUNTER, RDB$PRIOR_MAJOR_VERSION RDB$COUNTER, RDB$PRIOR_MINOR_VERSION RDB$COUNTER, RDB$FLAGS RDB$BIT_MASK, RDB$MAX_USERS RDB$COUNTER, RDB$MAX_CLUSTER_NODES RDB$COUNTER, RDB$DEFAULT_NUM_OF_BUFFERS RDB$COUNTER, RDB$MAX_RECOVERY_BUFFERS RDB$COUNTER, RDB$BUFFER_SIZE RDB$COUNTER, RDB$GLOBAL_BUFFER_COUNT RDB$COUNTER, RDB$ALG_COUNT RDB$COUNTER, RDB$LOCK_TIMEOUT_INTERVAL RDB$COUNTER, RDB$CHECKPOINT_INTERVAL_BLKS RDB$COUNTER, RDB$CHECKPOINT_TIMED_SECONDS RDB$COUNTER, RDB$TRANSACTION_INTERVAL RDB$COUNTER, RDB$CLOSE_MODE RDB$COUNTER, RDB$CLOSE_INTERVAL RDB$COUNTER, RDB$ASYNC_PREFETCH_DEPTH RDB$COUNTER, RDB$D_ASYNC_PREFETCH_DEPTH RDB$COUNTER, RDB$D_ASYNC_PREFETCH_THRESHOLD RDB$COUNTER, RDB$CLEAN_BUFFER_COUNT RDB$COUNTER, RDB$MAX_BUFFER_COUNT RDB$COUNTER, RDB$MIN_PAGE_SIZE_BLOCKS RDB$COUNTER, RDB$MAX_PAGE_SIZE_BLOCKS RDB$COUNTER, RDB$TRANSACTION_MODE_FLAGS RDB$BIT_MASK, RDB$ALG_FACTOR_0 RDB$COUNTER, RDB$ALG_FACTOR_1 RDB$COUNTER, RDB$ALG_FACTOR_2 RDB$COUNTER, RDB$ALG_FACTOR_3 RDB$COUNTER, RDB$ALG_FACTOR_4 RDB$COUNTER, RDB$ALG_FACTOR_5 RDB$COUNTER, RDB$ALG_FACTOR_6 RDB$COUNTER, RDB$ALG_FACTOR_7 RDB$COUNTER, RDB$AUDIT_FILENAME RDB$FILE_SPECIFICATION, RDB$ROOT_FILENAME RDB$FILE_SPECIFICATION, RDB$RUJ_LOCATION RDB$FILE_SPECIFICATION, RDB$CACHE_LOCATION RDB$FILE_SPECIFICATION, RDB$MAX_PAGES_IN_BUFFER RDB$COUNTER, RDB$RCS_SWEEP_INTERVAL RDB$COUNTER, RDB$RCS_CKPT_TIME RDB$COUNTER, RDB$LAST_FULL_RESTORE RDB$TIMESTAMP, RDB$AIJ_ACTIVATION_ID RDB$QUAD_COUNTER, RDB$RCVR_ACTIVATION_ID RDB$QUAD_COUNTER, RDB$OPER_CLASS RDB$COUNTER, RDB$PRESTART_TXN_TIMEOUT RDB$COUNTER, RDB$DB_REPLICATED RDB$COUNTER); print 'Creating RDB$DATABASE_USERS'; drop table RDB$DATABASE_USERS if exists; create information table RDB$DATABASE_USERS ( RDB$PROCESS_ID RDB$OBJECT_ID, RDB$STREAM_ID RDB$OBJECT_ID, RDB$MONITOR_ID RDB$OBJECT_ID, RDB$ATTACH_ID RDB$OBJECT_ID, RDB$FLAGS RDB$BIT_MASK); print 'Creating RDB$STORAGE_AREAS'; drop table RDB$STORAGE_AREAS if exists; create information table RDB$STORAGE_AREAS ( RDB$LAST_BACKUP RDB$TIMESTAMP, RDB$LAST_INCREMENT_RESTORE RDB$TIMESTAMP, RDB$INITIAL_ALLOCATION RDB$COUNTER, RDB$CURRENT_ALLOCATION RDB$COUNTER, RDB$AREA_ACCESS_MODE RDB$COUNTER, RDB$THRESHOLD1_BYTES RDB$COUNTER, RDB$THRESHOLD2_BYTES RDB$COUNTER, RDB$THRESHOLD3_BYTES RDB$COUNTER, RDB$PAGE_SIZE RDB$COUNTER, RDB$AREA_MIN_EXTENT RDB$COUNTER, RDB$AREA_MAX_EXTENT RDB$COUNTER, RDB$AREA_PERCENT_EXTENT RDB$COUNTER, RDB$EXTEND_COUNT RDB$COUNTER, RDB$SPAM_INTERVAL RDB$COUNTER, RDB$JOURNAL_SEQUENCE RDB$COUNTER, RDB$MAX_PAGE_FREE_SPACE RDB$COUNTER, RDB$MAX_ROW_LENGTH RDB$COUNTER, RDB$SEQUENCE RDB$COUNTER, RDB$AREA_ID RDB$OBJECT_ID, RDB$LINKED_AREA_ID RDB$OBJECT_ID, RDB$FLAGS RDB$BIT_MASK, RDB$THRESHOLD1_PERCENT RDB$COUNTER, RDB$THRESHOLD2_PERCENT RDB$COUNTER, RDB$THRESHOLD3_PERCENT RDB$COUNTER, RDB$AREA_FILE RDB$FILE_SPECIFICATION, RDB$CACHE_ID RDB$OBJECT_ID, RDB$AREA_NAME RDB$OBJECT_NAME, RDB$CLUMP_PAGE_COUNT RDB$COUNTER, RDB$PAGE_LENGTH RDB$COUNTER, RDB$PAGES_PER_SPAM_PAGE_P1 RDB$COUNTER, RDB$SPAM_PAGE_VECTOR_LENGTH RDB$COUNTER, RDB$PAGE_PAD_LENGTH RDB$COUNTER, RDB$MAX_SEGMENT_LENGTH RDB$COUNTER, RDB$BACKUP_STATISTICS RDB$QUAD_COUNTER, RDB$SNAPS_ENABLED_TSN RDB$QUAD_COUNTER, RDB$COMMIT_TSN RDB$QUAD_COUNTER, RDB$BACKUP_TSN RDB$QUAD_COUNTER, RDB$INCR_BACKUP_TSN RDB$QUAD_COUNTER, RDB$LAST_EXTEND RDB$TIMESTAMP); print 'Creating RDB$JOURNALS'; drop table RDB$JOURNALS if exists; create information table RDB$JOURNALS ( RDB$LAST_BACKUP RDB$TIMESTAMP, RDB$STATUS RDB$COUNTER, RDB$ALLOCATION RDB$COUNTER, RDB$EXTENT RDB$COUNTER, RDB$FLAGS RDB$BIT_MASK, RDB$JOURNAL_NAME RDB$OBJECT_NAME, RDB$LAST_BACKUP_SEQUENCE RDB$COUNTER, RDB$LAST_ACTIVATED RDB$TIMESTAMP, RDB$BACKUP_EDIT_STRING RDB$EDIT_STRING, RDB$DEFAULT_FILENAME RDB$FILE_SPECIFICATION, RDB$FILENAME RDB$FILE_SPECIFICATION, RDB$BACKUP_FILENAME RDB$FILE_SPECIFICATION, RDB$SEQUENCE_NUMBER RDB$COUNTER, RDB$STATE RDB$USAGE); print 'Creating RDB$LOGICAL_AREAS'; drop table RDB$LOGICAL_AREAS if exists; create information table RDB$LOGICAL_AREAS ( RDB$LOGICAL_AREA_ID RDB$OBJECT_ID, RDB$AREA_ID RDB$OBJECT_ID, RDB$FLAGS RDB$BIT_MASK, RDB$RECORD_LENGTH RDB$COUNTER, RDB$THRESHOLD1_PERCENT RDB$COUNTER, RDB$THRESHOLD2_PERCENT RDB$COUNTER, RDB$THRESHOLD3_PERCENT RDB$COUNTER, RDB$ORDERED_HASH_OFFSET RDB$COUNTER, RDB$RECORD_TYPE RDB$COUNTER, RDB$LOGICAL_AREA_NAME RDB$OBJECT_NAME); print 'Creating RDB$CHARACTER_SETS'; drop table RDB$CHARACTER_SETS if exists; create information table RDB$CHARACTER_SETS ( RDB$LOWCASE_MAPPING RDB$OBJECT_TEXT, RDB$UPCASE_MAPPING RDB$OBJECT_TEXT, RDB$ASSOCIATED_CHARACTER_SET RDB$CHARACTER_SET_ID, RDB$CHARACTER_SET_ID RDB$CHARACTER_SET_ID, RDB$CHARACTER_SET_NAME RDB$OBJECT_NAME, RDB$CHARACTER_WILDCARD RDB$COUNTER, RDB$FLAGS RDB$BIT_MASK, RDB$FORM_OF_USE RDB$CONTEXT, RDB$IDENTIFIER_CHARACTER_SET RDB$CHARACTER_SET_ID, RDB$MAXIMUM_OCTETS RDB$COUNTER, RDB$MINIMUM_OCTETS RDB$COUNTER, RDB$REPERTOIRE RDB$OBJECT_TYPE, RDB$SPACE_CHARACTER RDB$COUNTER, RDB$STRING_WILDCARD RDB$COUNTER, RDB$VERSION RDB$VERSION); print 'Creating RDB$NLS_CHARACTER_SETS'; drop table RDB$NLS_CHARACTER_SETS if exists; create information table RDB$NLS_CHARACTER_SETS ( RDB$CHARACTER_SET_ID RDB$CHARACTER_SET_ID, RDB$NLS_ID RDB$OBJECT_ID, RDB$NLS_NAME RDB$OBJECT_NAME); print 'Type COMMIT if there were no unexpected errors, otherwise ROLLBACK';