Feature Matrix
본 장에서는 각 major version 별로 추가된 주요 기능들에 대해 간략히 설명한다.
Architecture
System Architecture
System architecture에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
Shared Nothing Cluster | O | O | O | O | O |
DA (Direct Attach) | O | O | O | O | O |
JDBC DA (Direct Attach) | O | O | O | O | O |
C/S (Client/Server) Dedicated | O | O | O | O | O |
C/S (Client/Server) Shared | O | O | O | O | O |
multi-process applications | O | O | O | O | O |
multi-threaded applications | O | O | O | O | O |
Linux platform | O | O | O | O | O |
HP platform | O | O | O | O | X |
AIX platform | O | O | O | O | X |
Windows Client Platform | O | O | O | O | O |
CDC(Change Data Capture) replication | O | O | O | O | O |
CDC replication with log mirror | O | O | O | O | O |
multi-level start up | O | O | O | O | O |
parallel database loading | O | O | O | O | O |
parallel index build | O | O | O | O | O |
SQL plan cache | O | O | O | O | O |
IPC | X | X | O | O | O |
Storage Internal
Storage internal에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
memory dictionary tablespace | O | O | O | O | O |
memory data tablespace | O | O | O | O | O |
memory undo tablespace | O | O | O | O | O |
memory temporary tablespace | O | O | O | O | O |
memory bitmap data segment | O | O | O | O | O |
memory bitmap undo segment | O | O | O | O | O |
memory bitmap instant segment | O | O | O | O | O |
memory heap table | O | O | O | O | O |
memory instant table | O | O | O | O | O |
memory B-tree index | O | O | O | O | O |
memory instant B-tree | O | O | O | O | O |
memory instant hash | O | O | O | O | O |
global secondary index | O | O | O | O | O |
disk data tablespace | X | O | O | O | O |
disk bitmap data segment | X | O | O | O | O |
disk B-tree index | X | O | O | O | O |
disk global secondary index | X | O | O | O | O |
Transaction Control
Transaction control에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
CDS(Concurrency Data Store) database mode | O | O | O | O | O |
TDS(Transactional Data Store) database mode | O | O | O | O | O |
read-only database | O | O | O | O | O |
read/write database | O | O | O | O | O |
flat transaction | O | O | O | O | O |
distributed transaction | O | O | O | O | O |
read-only transaction | O | O | O | O | O |
read/write transaction | O | O | O | O | O |
READ COMMITTED isolation level | O | O | O | O | O |
SERIALIZABLE isolation level with SELECT FOR UPDATE | O | O | O | O | O |
MVCC(Multi Version Concurrency Control) | O | O | O | O | O |
multi-version read consistency | O | O | O | O | O |
multi-statement consistent read | O | O | O | O | O |
implicit lock for DML | O | O | O | O | O |
writer don't blocks readers | O | O | O | O | O |
row-level locking | O | O | O | O | O |
deadlock detection | O | O | O | O | O |
deadlock resolution | O | O | O | O | O |
lock granularity | O | O | O | O | O |
read lock | O | O | O | O | O |
write lock | O | O | O | O | O |
intention lock | O | O | O | O | O |
WAL(Write Ahead Logging) | O | O | O | O | O |
repeat history | O | O | O | O | O |
restart recovery | O | O | O | O | O |
circular logging | O | O | O | O | O |
buffered logging | O | O | O | O | O |
logging group | O | O | O | O | O |
supplemental logging | O | O | O | O | O |
mirrored logging | O | O | O | O | O |
synchronous commit | O | O | O | O | O |
asynchronous commit | O | O | O | O | O |
grouped commit | O | O | O | O | O |
total rollback | O | O | O | O | O |
implicit statement rollback | O | O | O | O | O |
savepoint management | O | O | O | O | O |
Backup & Recovery
Backup & recovery에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
off-line backup | O | O | O | O | O |
on-line backup | O | O | O | O | O |
full backup | O | O | O | O | O |
incremental backup | O | O | O | O | O |
complete recovery | O | O | O | O | O |
incomplete recovery | O | O | O | O | O |
auto instance recovery | O | O | O | O | O |
tablespace recovery | O | O | O | O | O |
file recovery | O | O | O | O | O |
change tracking | X | O | O | O | O |
parallel recovery | X | X | X | X | O |
parallel backup | X | X | X | X | O |
parallel restore | X | X | X | X | O |
Database Information
DICTIONARY_SCHEMA 스키마
DICTIONARY_SCHEMA 스키마에 대한 feature matrix는 다음과 같다.
계열 | Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|---|
ALL_ 계열 view | ALL_ALL_TABLES | O | O | O | O | O |
ALL_ARGUMENTS | O | O | O | O | O | |
ALL_CATALOG | O | O | O | O | O | |
ALL_CLUSTER_TABLES | O | O | O | O | O | |
ALL_COL_COMMENTS | O | O | O | O | O | |
ALL_COL_PLACE | X | X | X | X | X | |
ALL_COL_PRIVS | O | O | O | O | O | |
ALL_COL_PRIVS_MADE | O | O | O | O | O | |
ALL_COL_PRIVS_RECD | O | O | O | O | O | |
ALL_CONSTRAINTS | O | O | O | O | O | |
ALL_CONS_COLUMNS | O | O | O | O | O | |
ALL_DB_PRIVS | O | O | O | O | O | |
ALL_DB_PRIVS_MADE | O | O | O | O | O | |
ALL_DB_PRIVS_RECD | O | O | O | O | O | |
ALL_DEPENDENCIES | O | O | O | O | O | |
ALL_GLOBAL_SECONDARY_INDEXES | O | O | O | O | O | |
ALL_GSI_PLACE | O | O | O | O | O | |
ALL_HISTOGRAM_BALANCE | X | X | X | X | O | |
ALL_HISTOGRAM_FREQUENCY | X | X | X | X | O | |
ALL_INDEXES | O | O | O | O | O | |
ALL_IND_COLUMNS | O | O | O | O | O | |
ALL_IND_PLACE | O | O | O | O | O | |
ALL_LIBRARIES | X | X | X | X | O | |
ALL_LIBRARY_PRIVS | X | X | X | X | O | |
ALL_LIBRARY_PRIVS_MADE | X | X | X | X | O | |
ALL_LIBRARY_PRIVS_RECD | X | X | X | X | O | |
ALL_NONSCHEMA_COMMENTS | O | O | O | O | O | |
ALL_OBJECTS | O | O | O | O | O | |
ALL_PACKAGE_PRIVS | X | O | O | O | O | |
ALL_PACKAGE_PRIV_MADE | X | O | O | O | O | |
ALL_PACKAGE_PRIV_RECD | X | O | O | O | O | |
ALL_PROCEDURES | O | O | O | O | O | |
ALL_PROC_PRIVS | O | O | O | O | O | |
ALL_PROC_PRIVS_MADE | O | O | O | O | O | |
ALL_PROC_PRIVS_RECD | O | O | O | O | O | |
ALL_SCHEMAS | O | O | O | O | O | |
ALL_SCHEMA_PATH | O | O | O | O | O | |
ALL_SCHEMA_PRIVS | O | O | O | O | O | |
ALL_SCHEMA_PRIVS_MADE | O | O | O | O | O | |
ALL_SCHEMA_PRIVS_RECD | O | O | O | O | O | |
ALL_SEQUENCES | O | O | O | O | O | |
ALL_SEQ_PRIVS | O | O | O | O | O | |
ALL_SEQ_PRIVS_MADE | O | O | O | O | O | |
ALL_SEQ_PRIVS_RECD | O | O | O | O | O | |
ALL_SHARD_KEY_COLUMNS | O | O | O | O | O | |
ALL_SOURCE | O | O | O | O | O | |
ALL_STAT_COLUMN_GROUP | X | X | X | X | O | |
ALL_SYNONYMS | O | O | O | O | O | |
ALL_TABLES | O | O | O | O | O | |
ALL_TAB_COLS | O | O | O | O | O | |
ALL_TAB_COLUMNS | O | O | O | O | O | |
ALL_TAB_COMMENTS | O | O | O | O | O | |
ALL_TAB_IDENTITY_COLS | O | O | O | O | O | |
ALL_TAB_PLACE | O | O | O | O | O | |
ALL_TAB_SHARDS | O | O | O | O | O | |
ALL_TAB_PRIVS | O | O | O | O | O | |
ALL_TAB_PRIVS_MADE | O | O | O | O | O | |
ALL_TAB_PRIVS_RECD | O | O | O | O | O | |
ALL_TBS_PRIVS | O | O | O | O | O | |
ALL_TBS_PRIVS_MADE | O | O | O | O | O | |
ALL_TBS_PRIVS_RECD | O | O | O | O | O | |
ALL_TRIGGERS | X | X | X | X | O | |
ALL_USERS | O | O | O | O | O | |
ALL_VIEWS | O | O | O | O | O | |
DBA_ 계열 view | DBA_ALL_TABLES | O | O | O | O | O |
DBA_ARGUMENTS | O | O | O | O | O | |
DBA_CATALOG | O | O | O | O | O | |
DBA_CLUSTER | O | O | O | O | O | |
DBA_CLUSTER_COMMENTS | O | O | O | O | O | |
DBA_CLUSTER_TABLES | O | O | O | O | O | |
DBA_COL_COMMENTS | O | O | O | O | O | |
DBA_COL_PLACE | X | X | X | X | X | |
DBA_COL_PRIVS | O | O | O | O | O | |
DBA_CONSTRAINTS | O | O | O | O | O | |
DBA_CONS_COLUMNS | O | O | O | O | O | |
DBA_DB_PRIVS | O | O | O | O | O | |
DBA_DEPENDENCIES | O | O | O | O | O | |
DBA_EXTENTS | O | O | O | O | O | |
DBA_GLOBAL_SECONDARY_INDEXES | O | O | O | O | O | |
DBA_GSI_PLACE | O | O | O | O | O | |
DBA_HISTOGRAM_BALANCE | X | X | X | X | O | |
DBA_HISTOGRAM_FREQUENCY | X | X | X | X | O | |
DBA_INDEXES | O | O | O | O | O | |
DBA_IND_COLUMNS | O | O | O | O | O | |
DBA_IND_PLACE | O | O | O | O | O | |
DBA_LIBRARIES | X | X | X | X | O | |
DBA_LIBRARY_PRIVS | X | X | X | X | O | |
DBA_NONSCHEMA_COMMENTS | O | O | O | O | O | |
DBA_OBJECTS | O | O | O | O | O | |
DBA_PACKAGE_PRIVS | X | O | O | O | O | |
DBA_PROCEDURES | O | O | O | O | O | |
DBA_PROC_PRIVS | O | O | O | O | O | |
DBA_PROFILES | O | O | O | O | O | |
DBA_RECYCLEBIN | X | O | O | O | O | |
DBA_ROLES | X | X | X | X | O | |
DBA_ROLE_PRIVS | X | X | X | X | O | |
DBA_SCHEMAS | O | O | O | O | O | |
DBA_SCHEMA_PATH | O | O | O | O | O | |
DBA_SCHEMA_PRIVS | O | O | O | O | O | |
DBA_SEQUENCES | O | O | O | O | O | |
DBA_SEQ_PRIVS | O | O | O | O | O | |
DBA_SHARD_KEY_COLUMNS | O | O | O | O | O | |
DBA_SOURCE | O | O | O | O | O | |
DBA_STAT_COLUMN_GROUP | X | X | X | X | O | |
DBA_STAT_SYSTEM | O | O | O | O | O | |
DBA_SYNONYMS | O | O | O | O | O | |
DBA_SYS_PRIVS | O | O | O | O | O | |
DBA_TABLES | O | O | O | O | O | |
DBA_TABLESPACES | O | O | O | O | O | |
DBA_TAB_COLS | O | O | O | O | O | |
DBA_TAB_COLUMNS | O | O | O | O | O | |
DBA_TAB_COMMENTS | O | O | O | O | O | |
DBA_TAB_IDENTITY_COLS | O | O | O | O | O | |
DBA_TAB_PLACE | O | O | O | O | O | |
DBA_TAB_PRIVS | O | O | O | O | O | |
DBA_TAB_SHARDS | O | O | O | O | O | |
DBA_TBS_PRIVS | O | O | O | O | O | |
DBA_TRIGGERS | X | X | X | X | O | |
DBA_USERS | O | O | O | O | O | |
DBA_VIEWS | O | O | O | O | O | |
USER_ 계열 view | USER_ALL_TABLES | O | O | O | O | O |
USER_ARGUMENTS | O | O | O | O | O | |
USER_CATALOG | O | O | O | O | O | |
USER_CLUSTER_TABLES | O | O | O | O | O | |
USER_COL_COMMENTS | O | O | O | O | O | |
USER_COL_PLACE | X | X | X | X | X | |
USER_COL_PRIVS | O | O | O | O | O | |
USER_COL_PRIVS_MADE | O | O | O | O | O | |
USER_COL_PRIVS_RECD | O | O | O | O | O | |
USER_CONSTRAINTS | O | O | O | O | O | |
USER_CONS_COLUMNS | O | O | O | O | O | |
USER_DEPENDENCIES | O | O | O | O | O | |
USER_EXTENTS | O | O | O | O | O | |
USER_GLOBAL_SECONDARY_INDEXES | O | O | O | O | O | |
USER_GSI_PLACE | O | O | O | O | O | |
USER_HISTOGRAM_BALANCE | X | X | X | X | O | |
USER_HISTOGRAM_FREQUENCY | X | X | X | X | O | |
USER_INDEXES | O | O | O | O | O | |
USER_IND_COLUMNS | O | O | O | O | O | |
USER_IND_PLACE | O | O | O | O | O | |
USER_LIBRARIES | X | X | X | X | O | |
USER_LIBRARY_PRIVS | X | X | X | X | O | |
USER_LIBRARY_PRIVS_MADE | X | X | X | X | O | |
USER_LIBRARY_PRIVS_RECD | X | X | X | X | O | |
USER_OBJECTS | O | O | O | O | O | |
USER_PACKAGE_PRIVS | X | O | O | O | O | |
USER_PACKAGE_PRIVS_MADE | X | O | O | O | O | |
USER_PACKAGE_PRIVS_RECD | X | O | O | O | O | |
USER_PROCEDURES | O | O | O | O | O | |
USER_PROC_PRIVS | O | O | O | O | O | |
USER_PROC_PRIVS_MADE | O | O | O | O | O | |
USER_PROC_PRIVS_RECD | O | O | O | O | O | |
USER_RECYCLEBIN | X | O | O | O | O | |
USER_ROLE_PRIVS | X | X | X | X | O | |
USER_SCHEMAS | O | O | O | O | O | |
USER_SCHEMA_PATH | O | O | O | O | O | |
USER_SCHEMA_PRIVS | O | O | O | O | O | |
USER_SCHEMA_PRIVS_MADE | O | O | O | O | O | |
USER_SCHEMA_PRIVS_RECD | O | O | O | O | O | |
USER_SEQUENCES | O | O | O | O | O | |
USER_SEQ_PRIVS | O | O | O | O | O | |
USER_SEQ_PRIVS_MADE | O | O | O | O | O | |
USER_SEQ_PRIVS_RECD | O | O | O | O | O | |
USER_SHARD_KEY_COLUMNS | O | O | O | O | O | |
USER_SOURCE | O | O | O | O | O | |
USER_STAT_COLUMN_GROUP | X | X | X | X | O | |
USER_SYNONYMS | O | O | O | O | O | |
USER_SYS_PRIVS | O | O | O | O | O | |
USER_TABLES | O | O | O | O | O | |
USER_TABLESPACES | O | O | O | O | O | |
USER_TAB_COLS | O | O | O | O | O | |
USER_TAB_COLUMNS | O | O | O | O | O | |
USER_TAB_COMMENTS | O | O | O | O | O | |
USER_TAB_IDENTITY_COLS | O | O | O | O | O | |
USER_TAB_PLACE | O | O | O | O | O | |
USER_TAB_PRIVS | O | O | O | O | O | |
USER_TAB_PRIVS_MADE | O | O | O | O | O | |
USER_TAB_PRIVS_RECD | O | O | O | O | O | |
USER_TAB_SHARDS | O | O | O | O | O | |
USER_TRIGGERS | X | X | X | X | O | |
USER_USERS | O | O | O | O | O | |
USER_VIEWS | O | O | O | O | O | |
기타 view | AUDIT_POLICIES | O | O | O | O | O |
AUDIT_POLICY_ENABLED | O | O | O | O | O | |
AUDIT_POLICY_OPTIONS | O | O | O | O | O | |
AUDIT_TRAIL | O | O | O | O | O | |
DATABASE_PROPERTIES | O | O | O | O | O | |
DBC_TABLE_TYPE_INFO | O | O | O | O | O | |
DICTIONARY | O | O | O | O | O | |
DICT_COLUMNS | O | O | O | O | O | |
DUAL | O | O | O | O | O | |
GLOBAL_DUAL | X | X | X | X | O | |
IMPLEMENTATION_INFO | O | O | O | O | O | |
IMPLEMENTATION_INFO_BASE | O | O | O | O | O | |
JDBC_CLIENT_PROPS | O | O | O | O | O | |
PRODUCT | O | O | O | O | O | |
ROLE_COL_PRIVS | X | X | X | X | O | |
ROLE_DB_PRIVS | X | X | X | X | O | |
ROLE_LIBRARY_PRIVS | X | X | X | X | O | |
ROLE_PACKAGE_PRIVS | X | X | X | X | O | |
ROLE_PROC_PRIVS | X | X | X | X | O | |
ROLE_ROLE_PRIVS | X | X | X | X | O | |
ROLE_SCHEMA_PRIVS | X | X | X | X | O | |
ROLE_SEQ_PRIVS | X | X | X | X | O | |
ROLE_SYS_PRIVS | X | X | X | X | O | |
ROLE_TAB_PRIVS | X | X | X | X | O | |
ROLE_TBS_PRIVS | X | X | X | X | O | |
SESSION_PRIVS | O | O | O | O | O | |
SESSION_ROLES | X | X | X | X | O | |
SUPPLEMENTAL_LOG_TABLE_INFO | O | O | O | O | O | |
Aliased synonym | COLS | O | O | O | O | O |
DICT | O | O | O | O | O | |
IND | O | O | O | O | O | |
OBJ | O | O | O | O | O | |
RECYCLEBIN | X | O | O | O | O | |
SEQ | O | O | O | O | O | |
TABS | O | O | O | O | O |
INFORMATION_SCHEMA 스키마
INFORMATION_SCHEMA 스키마에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
ADMINISTRABLE_ROLE_AUTHORIZATIONS | X | X | X | X | O |
APPLICABLE_ROLES | X | X | X | X | O |
CHECK_CONSTRAINTS | X | X | X | X | O |
COLUMNS | O | O | O | O | O |
COLUMN_PRIVILEGES | O | O | O | O | O |
CONSTRAINT_COLUMN_USAGE | O | O | O | O | O |
CONSTRAINT_TABLE_USAGE | O | O | O | O | O |
ENABLED_ROLES | X | X | X | X | O |
INFORMATION_SCHEMA_CATALOG_NAME | O | O | O | O | O |
KEY_COLUMN_USAGE | O | O | O | O | O |
MODULES | X | O | O | O | O |
MODULE_BODY | X | O | O | O | O |
MODULE_BODY_MODULE_USAGE | X | O | O | O | O |
MODULE_BODY_ROUTINE_USAGE | X | O | O | O | O |
MODULE_BODY_SEQUENCE_USAGE | X | O | O | O | O |
MODULE_BODY_TABLE_USAGE | X | O | O | O | O |
MODULE_MODULE_USAGE | X | O | O | O | O |
MODULE_PRIVILEGES | X | O | O | O | O |
MODULE_ROUTINE_USAGE | X | O | O | O | O |
MODULE_SEQUENCE_USAGE | X | O | O | O | O |
MODULE_TABLE_USAGE | X | O | O | O | O |
PARAMETERS | O | O | O | O | O |
REFERENTIAL_CONSTRAINTS | O | O | O | O | O |
ROLE_COLUMN_GRANTS | X | X | X | X | O |
ROLE_MODULE_GRANTS | X | X | X | X | O |
ROLE_ROUTINE_GRANTS | X | X | X | X | O |
ROLE_TABLE_GRANTS | X | X | X | X | O |
ROLE_USAGE_GRANTS | X | X | X | X | O |
ROUTINES | O | O | O | O | O |
ROUTINE_MODULE_USAGE | X | O | O | O | O |
ROUTINE_PRIVILEGES | O | O | O | O | O |
ROUTINE_ROUTINE_USAGE | O | O | O | O | O |
ROUTINE_SEQUENCE_USAGE | O | O | O | O | O |
ROUTINE_TABLE_USAGE | O | O | O | O | O |
SCHEMATA | O | O | O | O | O |
SEQUENCES | O | O | O | O | O |
SQL_FEATURES | O | O | O | O | O |
SQL_IMPLEMENTATION_INFO | O | O | O | O | O |
SQL_PACKAGES | O | O | O | O | O |
SQL_PARTS | O | O | O | O | O |
SQL_SIZING | O | O | O | O | O |
STATISTICS | O | O | O | O | O |
TABLES | O | O | O | O | O |
TABLE_CONSTRAINTS | O | O | O | O | O |
TABLE_PRIVILEGES | O | O | O | O | O |
TRIGGER_EVENT_ORDER | X | X | X | X | O |
TRIGGER_MODULE_USAGE | X | X | X | X | O |
TRIGGER_ROUTINE_USAGE | X | X | X | X | O |
TRIGGER_SEQUENCE_USAGE | X | X | X | X | O |
TRIGGER_TABLE_USAGE | X | X | X | X | O |
TRIGGERED_UPDATE_COLUMNS | X | X | X | X | O |
TRIGGERS | X | X | X | X | O |
USAGE_PRIVILEGES | O | O | O | O | O |
VIEWS | O | O | O | O | O |
VIEW_MODULE_USAGE | X | O | O | O | O |
VIEW_ROUTINE_USAGE | O | O | O | O | O |
VIEW_TABLE_USAGE | O | O | O | O | O |
PERFORMANCE_VIEW_SCHEMA 스키마
PERFORMANCE_VIEW_SCHEMA 스키마에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
GV$____ | O | O | O | O | O |
V$AGABLE_INFO | O | O | O | O | O |
V$ALLOCATOR | X | X | X | X | O |
V$ARCHIVELOG | O | O | O | O | O |
V$AUDITABLE_DB_PRIVILEGES | O | O | O | O | O |
V$AUDITABLE_SYSTEM_ACTIONS | O | O | O | O | O |
V$BACKUP | O | O | O | O | O |
V$BALANCER | O | O | O | O | O |
V$BCH | X | O | O | O | O |
V$BUFFER_STAT | X | O | O | O | O |
V$CLUSTER_COMMAND | X | X | X | X | O |
V$CLUSTER_CONNECTION | X | X | X | X | O |
V$CLUSTER_DISPATCHER | O | O | O | O | O |
V$CLUSTER_LOCATION | O | O | O | O | O |
V$CLUSTER_MEMBER | O | O | O | O | O |
V$CLUSTER_QUEUE | X | X | X | X | O |
V$COLUMNS | O | O | O | O | O |
V$CONTROLFILE | O | O | O | O | O |
V$DATAFILE | O | O | O | O | O |
V$DB_CHANGE_TRACKING | X | O | O | O | O |
V$DB_FILE | O | O | O | O | O |
V$DB_PROPERTY | X | X | X | O | O |
V$DISPATCHER | O | O | O | O | O |
V$ERROR_CODE | O | O | O | O | O |
V$GLOBAL_TRANSACTION | O | O | O | O | O |
V$JOURNALING | O | O | O | O | O |
V$INCREMENTAL_BACKUP | O | O | O | O | O |
V$INSTANCE | O | O | O | O | O |
V$KEYWORDS | O | O | O | O | O |
V$LATCH | O | O | O | O | O |
V$LICENSE | X | X | X | O | O |
V$LOCK_WAIT | O | O | O | O | O |
V$LOCKED_OBJECT | X | O | O | O | O |
V$LOGFILE | O | O | O | O | O |
V$OPEN_CURSOR | X | X | X | O | O |
V$PLAN_HISTORY | X | X | O | O | O |
V$PLAN_HISTORY_LATEST | X | X | O | O | O |
V$PROCESS_MEM_STAT | O | O | O | O | O |
V$PROCESS_SQL_STAT | O | O | O | O | O |
V$PROCESS_STAT | O | O | O | O | O |
V$PROPERTY | O | O | O | O | O |
V$PROPERTY_ALIAS | X | X | X | O | O |
V$PSM_RESERVED_WORDS | O | O | O | O | O |
V$QUEUE | O | O | O | O | O |
V$RELATION | X | X | X | X | O |
V$RESERVED_WORDS | O | O | O | O | O |
V$SEQUENCE | X | O | O | O | O |
V$SESSION | O | O | O | O | O |
V$SESSION_AUDIT | O | O | O | O | O |
V$SESSION_CONNECT_INFO | O | O | O | O | O |
V$SESSION_EVENT | O | O | O | O | O |
V$SESSION_MEM_STAT | O | O | O | O | O |
V$SESSION_MEM_USAGE | X | X | O | O | O |
V$SESSION_SQL_STAT | O | O | O | O | O |
V$SESSION_STAT | O | O | O | O | O |
V$SESSION_WAIT | O | O | O | O | O |
V$SHARED_MODE | O | O | O | O | O |
V$SHARED_SERVER | O | O | O | O | O |
V$SHM_SEGMENT | O | O | O | O | O |
V$SPROPERTY | O | O | O | O | O |
V$SQLFN_METADATA | O | O | O | O | O |
V$SQL_CACHE | O | O | O | O | O |
V$SQL_COMMAND | O | O | O | O | O |
V$SQL_HISTORY | O | O | O | O | O |
V$STATEMENT | O | O | O | O | O |
V$SYSTEM_EVENT | O | O | O | O | O |
V$SYSTEM_MEM_STAT | O | O | O | O | O |
V$SYSTEM_SQL_STAT | O | O | O | O | O |
V$SYSTEM_STAT | O | O | O | O | O |
V$TABLES | O | O | O | O | O |
V$TABLESPACE | O | O | O | O | O |
V$TABLESPACE_STAT | O | O | O | O | O |
V$TCL_LOGFILE | X | X | X | X | O |
V$TRANSACTION | O | O | O | O | O |
V$UNDO_SEGMENT | X | X | X | X | O |
V$WAIT_EVENT_CLASS_NAME | O | O | O | O | O |
V$WAIT_EVENT_NAME | O | O | O | O | O |
V$XA_TRANSACTION | O | O | O | O | O |
Server Property
Server property에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
ADMIN_SESSION_POOL_INIT_SIZE | X | X | X | O | O |
ADMIN_SESSION_POOL_NEXT_SIZE | X | X | X | O | O |
AGING_INTERVAL | O | O | O | O | O |
AGING_PLAN_INTERVAL | O | O | O | O | O |
ARCHIVE_LOG_THROTTLING | X | X | O | O | O |
ARCHIVELOG_DIR | X | X | X | X | X |
ARCHIVELOG_DIR_1 ~ DIR_10 | O | O | O | O | O |
ARCHIVELOG_FILE | O | O | O | O | O |
ARCHIVELOG_MODE | O | O | O | O | O |
BACKUP_DIR_1 ~ DIR_10 | O | O | O | O | O |
BLOCK_READ_COUNT | O | O | O | O | O |
BROADCAST_INDEX_REBUILD_PROTOCOL | X | O | O | O | O |
BROADCAST_REBALANCE_PROTOCOL | X | O | O | O | O |
BUFFER_CACHE_SIZE | X | O | O | O | O |
BUFFER_CHECKPOINT_LIST_COUNT | X | O | X | X | X |
BUFFER_DIRTY_PAGE_LIMIT | X | X | X | O | O |
BUFFER_FLUSH_THREADS | X | O | X | X | X |
BUFFER_FLUSHING_INTERVAL | X | O | X | X | X |
BUFFER_FREE_LIST_COUNT | X | O | O | O | O |
BUFFER_HASH_BUCKETS | X | O | O | O | O |
BUFFER_HOT_REGION_CRITERIA | X | O | O | O | O |
BUFFER_HOT_REGION_PERCENT | X | O | O | O | O |
BUFFER_LRU_LIST_COUNT | X | O | O | O | O |
BUFFER_LRU_SCAN_PERCENT | X | X | X | O | O |
BUFFER_MULTIPAGE_READ_COUNT | X | O | O | O | O |
BUFFER_PREFETCH_PAGE_COUNT | X | X | O | O | O |
BULK_IO_PAGE_COUNT | O | O | O | O | O |
CDISPATCHER_HOT_POLICY_INTERVAL | O | O | O | O | O |
CDISPATCHER_LOCKABLE_THREADS | X | X | X | O | O |
CDISPATCHER_LOCKLESS_THREADS | X | O | O | O | O |
CDISPATCHER_MAX_PACKET_BUFFER_SIZE | X | X | X | O | O |
CDISPATCHER_SOCKET_BUFFER_SIZE | O | O | O | O | O |
CDISPATCHER_SYNC_THREADS | O | O | O | O | O |
CHANGE_TRACKING | X | O | O | O | O |
CHANGE_TRACKING_EXTENT_SIZE | X | O | O | O | O |
CHANGE_TRACKING_FILE | X | O | O | O | O |
CHAR_LENGTH_UNITS | O | O | O | O | O |
CHARACTER_SET | O | O | O | O | O |
CHECK_DEDICATE_CONNECTION_INTERVAL | O | O | O | O | O |
CHECK_DEDICATE_SOCKET | X | X | X | X | X |
CHECKPOINT_LIST_COUNT_PER_IO_GROUP | X | X | X | O | O |
CLIENT_MAX_COUNT | O | O | O | O | O |
CLIENT_NUMA_POLICY | O | O | O | O | O |
CLOSE_PSM_CHILD_STMTS | O | O | O | O | O |
CLUSTER_ASYNC_COMMIT | O | O | O | O | O |
CLUSTER_ASYNC_REPLICATION | O | O | O | X | X |
CLUSTER_CM_BUFFER_COUNT | O | O | O | X | X |
CLUSTER_CM_BUFFER_SIZE | O | O | O | O | O |
CLUSTER_CM_READ_BUFFER_SIZE | O | O | O | O | O |
CLUSTER_COMMIT_SLAVE_CSERVERS | X | X | X | O | O |
CLUSTER_COMMIT_STREAM_ISOLATION | O | O | O | O | X |
CLUSTER_CONNECTION | O | O | O | O | O |
CLUSTER_CONNECTION_TIMEOUT_SEC | O | O | O | O | O |
CLUSTER_DATA_SYNC_SERVERS | O | O | O | O | O |
CLUSTER_DEADLOCK_TIMEOUT | X | O | O | O | X |
CLUSTER_DISPATCHER_IN_QUEUE_SIZE | O | O | O | O | O |
CLUSTER_DISPATCHER_NUMA_STREAM_MAP | O | O | O | O | O |
CLUSTER_DISPATCHER_OUT_QUEUE_SIZE | O | O | O | O | O |
CLUSTER_FETCH_ORDER | X | X | X | X | O |
CLUSTER_GSERVER_RESPONSE_QUEUE_SIZE | X | X | X | O | O |
CLUSTER_HEARTBEAT_INTERVAL | O | O | O | O | O |
CLUSTER_HEARTBEAT_RETRY_COUNT | O | O | O | O | O |
CLUSTER_IGNORE_INACTIVE_MEMBER | O | O | O | O | O |
CLUSTER_KEEPALIVE_IDLE_TIME | X | X | X | O | O |
CLUSTER_LOCKABLE_CSERVERS | X | X | X | O | O |
CLUSTER_LOCKLESS_CSERVERS | X | X | X | O | O |
CLUSTER_MAX_PACKET_SIZE | O | O | O | O | O |
CLUSTER_MAX_PAYLOAD_SIZE | O | O | O | O | O |
CLUSTER_PACKET_ALLOCATION_TIMEOUT | O | O | O | O | O |
CLUSTER_PROTOCOL_FAILOVER_POLICY_TIMEOUT | O | O | O | O | O |
CLUSTER_PROTOCOL_SESSION_FATAL_POLICY_TIMEOUT | O | O | O | O | O |
CLUSTER_SESSION_HASH_BUCKETS | X | O | O | O | O |
CLUSTER_SPLIT_BRAIN_RESOLUTION_POLICY | O | O | O | O | O |
CLUSTER_SPLIT_BRAIN_RETRY_COUNT | O | O | O | O | O |
COMMITTER_HOT_POLICY_INTERVAL | O | O | O | O | O |
CONTROL_FILE_0 ~ FILE_7 | O | O | O | O | O |
CONTROL_FILE_COUNT | O | O | O | O | O |
CONTROL_FILE_TEMP_NAME | O | O | O | O | X |
COORDINATOR_COMMIT_WRITE_MODE | O | O | O | O | O |
DA_CLIENT_NUMA_MODE | O | O | O | O | O |
DATA_STORE_MODE | O | O | O | O | O |
DATABASE_ACCESS_MODE | O | O | O | X | X |
DATABASE_INSTANCE_NAME | O | O | O | O | O |
DDL_AUTOCOMMIT | O | O | O | O | O |
DDL_LOCK_TIMEOUT | O | O | O | O | O |
DEADLOCK_PRIORITY | X | O | O | O | O |
DEFAULT_ASC_NULLS_ORDER | X | X | X | X | O |
DEFAULT_DESC_NULLS_ORDER | X | X | X | X | O |
DEFAULT_GLOBAL_SECONDARY_INDEX_CREATION | O | O | O | O | O |
DEFAULT_INDEX_LOGGING | O | X | X | X | X |
DEFAULT_INDEX_PCTFREE | O | O | O | O | O |
DEFAULT_INITRANS | O | O | O | O | O |
DEFAULT_MAXTRANS | O | O | O | O | O |
DEFAULT_PCTFREE | O | O | O | O | O |
DEFAULT_PCTUSED | O | O | O | O | O |
DEFAULT_REMOVAL_BACKUP_FILE | O | O | O | O | O |
DEFAULT_REMOVAL_OBSOLETE_BACKUP_LIST | O | O | O | O | O |
DEFAULT_SHARDING | O | O | O | O | O |
DISABLE_DDL | X | X | O | O | O |
DISABLE_DDL_CDC_GIVEUP | O | O | O | O | O |
DISABLE_SERIAL_DDL | X | X | O | O | O |
DISABLE_UPDATE_PK_CDC_GIVEUP | O | O | O | O | O |
DISALLOWED_PROTOCOL_TARGETTYPE | O | O | O | O | O |
DISALLOWED_PROTOCOL_TARGETTYPE_WITH_ALL | O | O | O | O | O |
DISALLOWED_PROTOCOL_TARGETTYPE_WITH_NAME | O | O | O | O | O |
DISPATCHERS | O | O | O | O | O |
DISPATCHER_CM_BUFFER_SIZE | O | O | O | O | O |
DISPATCHER_CM_UNIT_SIZE | O | O | O | O | O |
DISPATCHER_CONNECTIONS | O | O | O | O | O |
DISPATCHER_HOT_POLICY_INTERVAL | O | O | O | O | O |
DISPATCHER_LOAD_BALANCING | O | O | O | O | O |
DISPATCHER_NUMA_STREAM_MAP | O | O | O | O | O |
DISPATCHER_QUEUE_SIZE | O | O | O | O | O |
DISPATCHER_REQUEST_MINI_QUEUE_COUNT | O | O | O | O | O |
DISPATCHER_RESPONSE_MINI_QUEUE_COUNT | O | O | O | O | O |
EXECUTE_INST_HASH_TABLE_USING_AVAILABLE_MEMORY | X | X | O | O | O |
EXTLIB_DIR | X | X | X | X | O |
FETCH_FAILOVER | O | O | O | O | O |
FULL_TABLE_SCAN_CACHING_THRESHOLD | X | X | X | O | O |
GLOBAL_CONNECTION_ALLOW_SESSION_DEPENDENCY | O | O | O | O | O |
GLOBAL_JOURNAL_BUFFER_SIZE | O | O | O | O | O |
GLOBAL_JOURNAL_BUFFER_TOTAL_MAX_SIZE | O | O | O | O | O |
GLOBAL_PROPERTY_LOCK_TIMEOUT | O | O | O | O | O |
GLOBAL_TRANSACTION_COMMIT_WRITE_MODE | O | O | O | O | O |
GLOBAL_TRANSACTION_ISOLATION_SCOPE | O | O | O | O | O |
GLOBAL_TRANSACTION_LOG_BLOCK_SIZE | X | X | X | X | O |
GLOBAL_TRANSACTION_LOG_DIR | O | O | O | O | O |
GLOBAL_TRANSACTION_LOG_FILE_SIZE | O | O | O | O | O |
GMASTER_NUMA_NODE | O | O | O | O | O |
GMON_AUTOSTART | O | O | O | O | O |
HINT_ERROR | O | O | O | O | O |
HISTOGRAM_BALANCE_BUCKET_COUNT | X | X | X | X | O |
HISTOGRAM_BALANCE_MAX_SAMPLE_COUNT | X | X | X | X | O |
HISTOGRAM_FREQUENCY_BUCKET_COUNT | X | X | X | X | O |
IDLE_TIMEOUT | O | O | O | O | O |
IN_DOUBT_DECISION | O | O | O | O | O |
IN_KEY_RANGE_ARRAY_COUNT | X | O | O | O | O |
INCREMENTAL_BACKUP_SCAN_BUFFER_SIZE | X | O | O | O | O |
INCREMENTAL_DATAFILE_HEADER_UPDATE_CRITERIA | X | X | X | O | O |
INDEX_BUILD_PARALLEL_FACTOR | O | O | O | O | O |
INDEX_LOGGING_THROTTLING | X | X | O | O | X |
INDEX_MERGE_RUN_COUNT | O | O | O | O | O |
INDEX_REBUILD_BLOCK_READ_COUNT | X | O | O | O | O |
INDEX_SELF_AGING_THRESHOLD | X | X | X | O | O |
INDEX_SORT_RUN_SIZE | O | O | O | O | O |
INDEX_TREE_MERGE_PARALLEL_FACTOR | O | O | O | O | O |
INST_ALLOCATOR_COUNT | O | O | O | O | O |
INST_HASH_TABLE_BUCKET_MAX_COUNT | X | X | O | O | O |
INST_TABLE_PAGE_SIZE | O | O | O | O | O |
INSTANT_INDEX_REFERENCE_COLUMN_THRESHOLD | X | X | X | X | O |
INSTANT_WORK_AREA_SIZE | X | X | X | X | O |
IPC_CHANNEL_COUNT | X | X | O | O | O |
JOURNAL_TEMP_DIR | O | O | O | O | O |
KEEPALIVE_IDLE_TIME | O | O | O | O | O |
LOCAL_CLUSTER_MEMBER | O | O | O | O | O |
LOCAL_CLUSTER_MEMBER_HOST | O | O | O | O | O |
LOCAL_CLUSTER_MEMBER_PORT | O | O | O | O | O |
LOCAL_JOURNAL_BUFFER_SIZE | O | O | O | O | O |
LOCATION_FILE | O | O | O | O | O |
LOCATOR_QUERY_TIMEOUT | O | O | O | O | O |
LOCK_HASH_TABLE_SIZE | O | O | O | O | O |
LOCKABLE_DISPATCHER_CM_BUFFER_COUNT | X | X | X | O | O |
LOCKLESS_DISPATCHER_CM_BUFFER_COUNT | X | X | X | O | O |
LOG_BLOCK_SIZE | O | O | O | O | O |
LOG_BUFFER_SIZE | O | O | O | O | O |
LOG_DIR | O | O | O | O | O |
LOG_FILE_SIZE | O | O | O | O | O |
LOG_FLUSHER_HOT_POLICY_INTERVAL | X | X | X | X | O |
LOG_GROUP_COUNT | O | O | O | O | O |
LOG_MIRROR_MODE | O | O | O | O | O |
LOG_MIRROR_SHARED_MEMORY_STATIC_SIZE | O | O | O | O | O |
LOG_MIRROR_TIMEOUT | O | O | O | O | O |
LOG_SYNC_INTERVAL | O | O | O | O | O |
LOG_SYNC_INTERVAL_MSEC | O | O | O | O | O |
MAX_GROUP_COUNT | O | O | O | O | O |
MAX_GROUPING_SETS_COUNT | X | X | X | X | O |
MAX_JOURNAL_FILE_SIZE | O | O | O | O | O |
MAX_NODE_COUNT | O | O | O | O | O |
MAXIMUM_CONCURRENT_ACTIVITIES | O | O | O | O | O |
MAXIMUM_FILE_CACHE_SIZE | X | X | O | O | O |
MAXIMUM_FLANGE_COUNT | O | O | O | X | X |
MAXIMUM_FLUSH_BUFFER_PAGE_COUNT | X | X | O | O | O |
MAXIMUM_FLUSH_LOG_BLOCK_COUNT | O | O | O | O | O |
MAXIMUM_FLUSH_PAGE_COUNT | O | O | O | O | O |
MAXIMUM_INDEX_REBUILD_JOURNAL_REPLAY_COUNT | X | O | O | O | O |
MAXIMUM_LOADED_LIBRARY_COUNT | X | X | X | X | O |
MAXIMUM_NAMED_CURSOR_COUNT | O | O | O | O | O |
MAXIMUM_PACKAGE_INSTANCE_COUNT | X | X | O | O | O |
MAXIMUM_SESSION_CM_BUFFER_SIZE | O | O | O | O | O |
MEASURE_CLUSTER_LATENCY | O | O | O | O | O |
MEDIA_RECOVERY_LOG_BUFFER_SIZE | X | X | X | X | X |
MIN_SAMPLE_ROW_COUNT | O | O | O | O | O |
MINIMUM_UNDO_PAGE_COUNT | O | O | O | O | O |
NET_BUFFER_SIZE | O | O | O | O | O |
NLS_DATE_FORMAT | O | O | O | O | O |
NLS_TIME_FORMAT | O | O | O | O | O |
NLS_TIME_WITH_TIME_ZONE_FORMAT | O | O | O | O | O |
NLS_TIMESTAMP_FORMAT | O | O | O | O | O |
NLS_TIMESTAMP_WITH_TIME_ZONE_FORMAT | O | O | O | O | O |
NUMA | O | O | O | O | O |
NUMA_MAP | O | O | O | O | O |
OFFLINE_MEMBER_AFTER_FAILOVER | O | O | O | O | O |
ONLINE_DDL_BLOCK_READ_COUNT | X | X | X | X | O |
ONLINE_DDL_JOURNAL_REPLAY_THRESHOLD | X | X | X | X | O |
ONLINE_DDL_MAXIMUM_JOURNAL_REPLAY_COUNT | X | X | X | X | O |
ONLINE_DDL_SCAN_PARTITION | X | X | X | X | O |
ONLINE_INDEX_REBUILD_JOURNAL_REPLAY_THRESHOLD | X | O | O | O | O |
OS_GROUP_ACCESS | O | O | O | O | O |
PACKET_COMPRESSION_THRESHOLD | X | O | O | O | O |
PAGE_CHECKSUM_TYPE | O | O | O | O | O |
PARALLEL_IO_FACTOR | O | O | O | O | O |
PARALLEL_IO_GROUP_1 ~ GROUP_16 | O | O | O | X | X |
PARALLEL_LOAD_FACTOR | O | O | O | O | O |
PENDING_LOG_BUFFER_COUNT | O | O | O | O | O |
PLAN_CACHE | O | O | O | O | O |
PLAN_CACHE_SIZE | O | O | O | O | O |
PLAN_HISTORY | X | X | O | O | O |
PLAN_HISTORY_SIZE | X | X | O | O | O |
PRIVATE_STATIC_AREA_INIT_SIZE | X | O | O | O | O |
PRIVATE_STATIC_AREA_NEXT_SIZE | X | O | O | O | O |
PRIVATE_STATIC_AREA_SHRINK_THRESHOLD | X | O | O | O | O |
PRIVATE_STATIC_AREA_SIZE | O | O | O | O | O |
PROCESS_MAX_COUNT | O | O | O | O | O |
QUERY_TIMEOUT | O | O | O | O | O |
READABLE_ARCHIVELOG_DIR_COUNT | O | O | O | O | O |
READABLE_BACKUP_DIR_COUNT | O | O | O | O | O |
RECOMPILE_CHECK_MINIMUM_PAGE_COUNT | X | X | X | X | X |
RECOMPILE_PAGE_PERCENT | X | X | X | X | X |
RECOVERY_LOG_BUFFER_SIZE | O | O | O | O | O |
RECOVERY_SLAVES | X | X | X | X | O |
RECYCLEBIN | X | O | O | O | O |
REDO_LOG_COMPRESSION_THRESHOLD | O | O | O | O | O |
REDO_LOGGING_THROTTLING | X | X | X | X | O |
REFINE_RELATION | O | O | O | O | O |
RESTORE_BUFFER_SIZE | X | O | O | O | O |
SESSION_FATAL_BEHAVIOR | O | O | O | O | O |
SESSION_MEMORY_INIT_SIZE | O | O | O | O | O |
SESSION_MEMORY_SHRINK_THRESHOLD | O | O | O | O | O |
SESSION_POOL_INIT_SIZE | X | X | X | O | O |
SESSION_POOL_NEXT_SIZE | X | X | X | O | O |
SHARED_MEMORY_ADDRESS | O | O | O | O | O |
SHARED_MEMORY_STATIC_KEY | O | O | O | O | O |
SHARED_MEMORY_STATIC_NAME | O | O | O | O | O |
SHARED_MEMORY_STATIC_SIZE | O | O | O | O | O |
SHARED_REQUEST_QUEUE_COUNT | O | O | O | O | O |
SHARED_SERVERS | O | O | O | O | O |
SHARED_SESSION | O | O | O | O | O |
SHARED_SESSION_MEMORY_INIT_SIZE | X | X | X | X | O |
SNAPSHOT_STATEMENT_TIMEOUT | O | O | O | O | O |
SQL_HISTORY_SIZE | O | O | O | O | O |
SUPPLEMENTAL_LOG_DATA_PRIMARY_KEY | O | O | O | O | O |
SYNC_DISPATCHER_CM_BUFFER_COUNT | X | X | X | O | O |
SYSTEM_DISK_DATA_TABLESPACE_SIZE | X | O | O | O | O |
SYSTEM_FILE_IO | O | O | O | O | O |
SYSTEM_MEMORY_AUX_TABLESPACE_SIZE | O | O | O | O | O |
SYSTEM_MEMORY_DATA_TABLESPACE_SIZE | O | O | O | O | O |
SYSTEM_MEMORY_DICT_TABLESPACE_SIZE | O | O | O | O | O |
SYSTEM_MEMORY_TEMP_TABLESPACE_SIZE | O | O | O | O | O |
SYSTEM_MEMORY_UNDO_TABLESPACE_SIZE | O | O | O | O | O |
SYSTEM_TABLESPACE_DIR | O | O | O | O | O |
SYSTEM_UDS_DIR | O | O | O | O | O |
TCP_CLIENT_NUMA_MODE | O | O | O | O | O |
TCP_NODELAY | O | O | O | O | O |
TEMP_SEGMENT_CACHE_SIZE | O | O | O | O | O |
TEMP_UNDO_ENABLED | O | O | O | O | O |
TEMP_UNDO_SHRINK_THRESHOLD | O | O | O | O | O |
TIMED_STATISTICS | O | O | O | O | O |
TIMER_INTERVAL | X | X | O | O | O |
TIMEZONE | O | O | O | O | O |
TRACE_ALTER_SYSTEM | O | O | O | O | O |
TRACE_DDL | O | O | O | O | O |
TRACE_LOG_ID | O | O | O | O | O |
TRACE_LOG_MSGBUF_SIZE | O | O | O | O | O |
TRACE_LOG_TIME_DETAIL | O | O | O | O | O |
TRACE_LOGGER | O | O | O | O | O |
TRACE_LOGGER_REMOTE_HOST | O | O | O | O | O |
TRACE_LOGGER_REMOTE_PORT | O | O | O | O | O |
TRACE_LOGIN | O | O | O | O | O |
TRACE_LONG_RUN_CURSOR | O | O | O | O | O |
TRACE_LONG_RUN_SQL | O | O | O | O | O |
TRACE_LONG_RUN_TIMER | X | O | O | O | O |
TRACE_SYSTEM_DIR | X | X | X | O | O |
TRACE_XA | O | O | O | O | O |
TRANSACTION_ALLOCATION_TIMEOUT | O | O | O | O | O |
TRANSACTION_COMMIT_WRITE_MODE | O | O | O | O | O |
TRANSACTION_MAXIMUM_UNDO_PAGE_COUNT | O | O | O | O | O |
TRANSACTION_TABLE_SIZE | O | O | O | O | O |
TRANSACTION_TIMEOUT | O | O | O | O | O |
UNDO_RELATION_ALLOCATION_TIMEOUT | O | O | O | O | O |
UNDO_RELATION_COUNT | O | O | O | O | O |
UNDO_SHRINK_THRESHOLD | O | O | O | O | O |
USE_LARGE_PAGES | X | O | O | O | O |
USER_DATA_TABLESPACE_MEDIA_TYPE | X | O | O | O | O |
USER_DATA_TABLESPACE_SIZE | X | O | O | O | O |
USER_DISK_DATA_TABLESPACE_NEXTSIZE | X | O | O | O | O |
USER_TEMP_TABLESPACE_SIZE | O | O | O | O | O |
XA_TRANSACTION_IDLE_TIMEOUT | X | O | O | O | O |
Property Alias
Property alias에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
CDISPATCHER_THREADS | O | O | O | O | O |
CLUSTER_COMMIT_SLAVES | O | O | O | O | O |
CLUSTER_SERVER_RESPONSE_QUEUE_SIZE | O | O | O | O | O |
CSERVER | O | O | O | O | O |
INCREMENTAL_CHECKPOINT_CRITERIA | X | X | X | O | O |
INDEX_LOGGING_THROTTLING | X | X | O | O | O |
INST_TABLE_BLOCK_SIZE | O | O | O | O | O |
LOCKLESS_CSERVERS | X | O | O | O | O |
MAXIMUM_JOURNAL_REPLAY_COUNT | X | X | X | X | O |
MEMORY_MERGE_RUN_COUNT | O | O | O | O | O |
MEMORY_SORT_RUN_SIZE | O | O | O | O | O |
ONLINE_JOURNAL_REPLAY_THRESHOLD | X | X | X | X | O |
REBALANCE_BLOCK_READ_COUNT | X | X | X | X | O |
REBALANCE_SHARD_DIVISOR | X | X | X | X | O |
SYSTEM_LOGGER_DIR | O | O | O | O | O |
SQL
SQL Element
Data Type
데이터 타입에 대한 feature matrix는 다음과 같다.
Type | Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|---|
문자 스트링 타입 | CHAR | O | O | O | O | O |
VARCHAR | O | O | O | O | O | |
LONG VARCHAR | O | O | O | O | O | |
이진 스트링 타입 | BINARY | O | O | O | O | O |
VARBINARY | O | O | O | O | O | |
LONG VARBINARY | O | O | O | O | O | |
십진 숫자 타입 | SMALLINT | O | O | O | O | O |
INTEGER | O | O | O | O | O | |
BIGINT | O | O | O | O | O | |
NUMERIC | O | O | O | O | O | |
DECIMAL | O | O | O | O | O | |
NUMBER | O | O | O | O | O | |
REAL | O | O | O | O | O | |
DOUBLE PRECISION | O | O | O | O | O | |
FLOAT | O | O | O | O | O | |
이진 숫자 타입 | NATIVE_SMALLINT | O | O | O | O | O |
NATIVE_INTEGER | O | O | O | O | O | |
NATIVE_BIGINT | O | O | O | O | O | |
NATIVE_REAL | O | O | O | O | O | |
NATIVE_DOUBLE | O | O | O | O | O | |
BOOLEAN 타입 | BOOLEAN | O | O | O | O | O |
날짜/시간 타입 | DATE | O | O | O | O | O |
TIME | O | O | O | O | O | |
TIME WITH TIME ZONE | O | O | O | O | O | |
TIMESTAMP | O | O | O | O | O | |
TIMESTAMP WITH TIME ZONE | O | O | O | O | O | |
INTERVAL 타입 | INTERVAL YEAR TO MONTH | O | O | O | O | O |
INTERVAL YEAR | O | O | O | O | O | |
INTERVAL MONTH | O | O | O | O | O | |
INTERVAL DAY TO SECOND | O | O | O | O | O | |
INTERVAL DAY | O | O | O | O | O | |
INTERVAL HOUR | O | O | O | O | O | |
INTERVAL MINUTE | O | O | O | O | O | |
INTERVAL SECOND | O | O | O | O | O | |
INTERVAL DAY TO HOUR | O | O | O | O | O | |
INTERVAL DAY TO MINUTE | O | O | O | O | O | |
INTERVAL HOUR TO MINUTE | O | O | O | O | O | |
INTERVAL HOUR TO SECOND | O | O | O | O | O | |
INTERVAL MINUTE TO SECOND | O | O | O | O | O | |
ROWID 타입 | ROWID | O | O | O | O | O |
Function
함수 및 연산자에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
expr1 * expr2 | O | O | O | O | O |
expr1 + expr2 | O | O | O | O | O |
datetime + interval | O | O | O | O | O |
+ expr | O | O | O | O | O |
expr1 - expr2 | O | O | O | O | O |
datetime - interval | O | O | O | O | O |
- expr | O | O | O | O | O |
expr1 / expr2 | O | O | O | O | O |
str1 || str2 | O | O | O | O | O |
expr <comp> expr | O | O | O | O | O |
expr <comp> ( subquery ) | O | O | O | O | O |
( subquery ) <comp> expr | O | O | O | O | O |
( subquery ) <comp> ( subquery ) | O | O | O | O | O |
( expr, ... ) <comp> ( expr, ... ) | O | O | O | O | O |
( expr, ... ) <comp> ( subquery ) | O | O | O | O | O |
( subquery ) <comp> ( expr, ... ) | O | O | O | O | O |
expr <comp> {ALL|ANY|SOME} ( expr, ... ) | O | O | O | O | O |
expr <comp> {ALL|ANY|SOME} ( subquery ) | O | O | O | O | O |
( subquery ) <comp> {ALL|ANY|SOME} ( expr, ... ) | O | O | O | O | O |
( subquery ) <comp> {ALL|ANY|SOME} ( subquery ) | O | O | O | O | O |
( expr, ... ) <comp> {ALL|ANY|SOME} ( expr_list, ... ) | O | O | O | O | O |
( expr, ... ) <comp> {ALL|ANY|SOME} ( subquery ) | O | O | O | O | O |
( subquery ) <comp> {ALL|ANY|SOME} ( expr_list, ... ) | O | O | O | O | O |
ABS( num ) | O | O | O | O | O |
ACOS( num ) | O | O | O | O | O |
ADDDATE( date, interval ) | O | O | O | O | O |
ADDDATE( expr, days ) | O | O | O | O | O |
ADDTIME( expr1, expr2 ) | O | O | O | O | O |
ADD_MONTHS( date, number ) | O | O | O | O | O |
AND | O | O | O | O | O |
APPROX_COUNT_DISTINCT( expr [, expr ...] ) | X | X | X | X | O |
APPROX_COUNT_DISTINCT( expr [, expr ...] ) FILTER | X | X | X | X | O |
ASCII( char ) | O | O | O | O | O |
ASIN( num ) | O | O | O | O | O |
ATAN( num ) | O | O | O | O | O |
ATAN2( num1, num2 ) | O | O | O | O | O |
AVG( num ) | O | O | O | O | O |
AVG( num ) FILTER | X | X | X | X | O |
AVG( expr ) OVER | X | X | X | O | O |
expr1 [NOT] BETWEEN [ASYMMETRIC|SYMMETRIC] expr2 AND expr3 | O | O | O | O | O |
BITAND( num1, num2 ) | O | O | O | O | O |
BITNOT( num ) | O | O | O | O | O |
BITOR( num1, num2 ) | O | O | O | O | O |
BITXOR( num1, num2 ) | O | O | O | O | O |
BIT_LENGTH( str ) | O | O | O | O | O |
BYTE_LENGTH( str ) | O | O | O | O | O |
CASE .. WHEN .. THEN .. ELSE .. END | O | O | O | O | O |
CASE2( condition, result, ... ) | O | O | O | O | O |
CAST( expr AS datatype ) | O | O | O | O | O |
CBRT( num ) | O | O | O | O | O |
CEIL( num ) | O | O | O | O | O |
CEILING( num ) | O | O | O | O | O |
CHAR_LENGTH( str ) | O | O | O | O | O |
CHARACTER_LENGTH( str ) | O | O | O | O | O |
CHR( num ) | O | O | O | O | O |
CLOCK_DATE() | O | O | O | O | O |
CLOCK_LOCALTIME() | O | O | O | O | O |
CLOCK_LOCALTIMESTAMP() | O | O | O | O | O |
CLOCK_TIME() | O | O | O | O | O |
CLOCK_TIMESTAMP() | O | O | O | O | O |
COALESCE( expr1, ..., exprN ) | O | O | O | O | O |
CONCAT( str1, str2 ) | O | O | O | O | O |
CONCATENATE( str1, str2 ) | O | O | O | O | O |
CONNECT_BY_ISCYCLE | X | X | O | O | O |
CONNECT_BY_ISLEAF | X | X | O | O | O |
CONNECT_BY_ROOT expr | X | X | O | O | O |
CORR( expr1, expr2 ) OVER | X | X | X | O | O |
COS( num ) | O | O | O | O | O |
COT( num ) | O | O | O | O | O |
COUNT( expr ) | O | O | O | O | O |
COUNT( expr ) FILTER | X | X | X | X | O |
COUNT( expr ) OVER | X | X | X | O | O |
COUNT(*) | O | O | O | O | O |
COUNT(*) FILTER | X | X | X | X | O |
COUNT(*) OVER | X | X | X | O | O |
COVAR_POP( expr1, expr2 ) OVER | X | X | X | O | O |
COVAR_SAMP( expr1, expr2 ) OVER | X | X | X | O | O |
CUME_DIST() OVER | X | X | X | O | O |
CURRENT_CATALOG | O | O | O | O | O |
CURRENT_DATE | O | O | O | O | O |
CURRENT_ROLE | X | X | X | X | O |
CURRENT_SCHEMA | O | O | O | O | O |
CURRENT_TIME | O | O | O | O | O |
CURRENT_TIMESTAMP | O | O | O | O | O |
CURRENT_USER | O | O | O | O | O |
seq.CURRVAL | O | O | O | O | O |
CURRVAL( seq ) | O | O | O | O | O |
DATEADD( datepart, number, date ) | O | O | O | O | O |
DATEDIFF( datepart, startdate, enddate ) | O | O | O | O | O |
DATE_ADD( date, interval ) | O | O | O | O | O |
DATE_PART( field, datetime ) | O | O | O | O | O |
DECODE( expr, comparison, result, ... ) | O | O | O | O | O |
DEGREES( radians ) | O | O | O | O | O |
DENSE_RANK() OVER | X | X | X | O | O |
DIGEST ( data, type ) | O | O | O | O | O |
expr IS [NOT] DISTINCT FROM expr | X | X | X | O | O |
( expr, ... ) IS [NOT] DISTINCT FROM ( expr, ... ) | X | X | X | O | O |
DUMP( expr ) | O | O | O | O | O |
EXISTS( subquery ) | O | O | O | O | O |
EXP( num ) | O | O | O | O | O |
EXTRACT( field FROM datetime ) | O | O | O | O | O |
FACTORIAL( num ) | O | O | O | O | O |
FIRST : aggr_func KEEP ( DENSE_RANK FIRST ORDER BY expr, ... ) OVER | X | X | X | O | O |
FIRST_VALUE( expr ) OVER | X | X | X | O | O |
FLOOR( num ) | O | O | O | O | O |
FROM_BASE64( str ) | O | O | O | O | O |
FROM_TZ( timestamp, timezone ) | X | X | O | O | O |
GREATEST( expr, ... ) | O | O | O | O | O |
GSI_PHYSICAL_STATS( table_name, num ) | X | X | X | X | O |
HASH32( expr [, expr] ... ) | X | X | O | O | O |
HEX( str ) | O | O | O | O | O |
expr1 [NOT] IN ( expr, ... ) | O | O | O | O | O |
expr1 [NOT] IN ( subquery ) | O | O | O | O | O |
subquery [NOT] IN ( <expr_list> ) | O | O | O | O | O |
subquery [NOT] IN ( subquery ) | O | O | O | O | O |
<expr_list> [NOT] IN ( <expr_list>, ... ) | O | O | O | O | O |
<expr_list> [NOT] IN ( subquery ) | O | O | O | O | O |
subquery [NOT] IN ( <expr_list>, ... ) | O | O | O | O | O |
INDEX_PHYSICAL_STATS( index_name, num ) | X | X | X | X | O |
INITCAP( str ) | O | O | O | O | O |
INSTR( str, substr, ... ) | O | O | O | O | O |
IS NOT NULL | O | O | O | O | O |
IS NULL | O | O | O | O | O |
JSON_ARRAY( expr, ... ) | X | X | X | O | O |
JSON_ARRAYAGG( expr ) | X | X | X | O | O |
JSON_ARRAYAGG( expr ) OVER | X | X | X | O | O |
JSON_OBJECT( name VALUE expr, ... ) | X | X | X | O | O |
JSON_OBJECTAGG( name VALUE expr ) | X | X | X | O | O |
JSON_OBJECTAGG( name VALUE expr ) OVER | X | X | X | O | O |
LAG( expr [, offset [, default]] ) OVER | X | X | X | O | O |
LAST : aggr_func KEEP ( DENSE_RANK LAST ORDER BY expr, ... ) OVER | X | X | X | O | O |
LAST_DAY( date ) | O | O | O | O | O |
LAST_IDENTITY_VALUE() | O | O | O | O | O |
LAST_VALUE( expr ) OVER | X | X | X | O | O |
LEAD( expr [, offset [, default]] ) OVER | X | X | X | O | O |
LEAST( expr, ... ) | O | O | O | O | O |
LENGTH( str ) | O | O | O | O | O |
LENGTHB( str ) | O | O | O | O | O |
LEVEL | X | X | O | O | O |
string [NOT] LIKE pattern ESCAPE escape_char | O | O | O | O | O |
LISTAGG( str [, delimiter] ) OVER | X | X | X | O | O |
LN( num ) | O | O | O | O | O |
LNNVL( expr ) | X | O | O | O | O |
LOCAL_GROUP_ID() | O | O | O | O | O |
LOCAL_GROUP_NAME() | O | O | O | O | O |
LOCAL_MEMBER_ID() | O | O | O | O | O |
LOCAL_MEMBER_NAME() | O | O | O | O | O |
LOCAL_MEMBER_POSITION() | X | X | X | X | O |
LOCALTIME | O | O | O | O | O |
LOCALTIMESTAMP | O | O | O | O | O |
LOG( num2 ) | O | O | O | O | O |
LOG( num1, num2 ) | O | O | O | O | O |
LOGON_USER() | O | O | O | O | O |
LOWER( str ) | O | O | O | O | O |
LPAD( str, length, fill ) | O | O | O | O | O |
LTRIM( str, [ str ] ) | O | O | O | O | O |
MAX( expr ) | O | O | O | O | O |
MAX( expr ) FILTER | X | X | X | X | O |
MAX( expr ) OVER | X | X | X | O | O |
MEDIAN( expr ) OVER | X | X | X | O | O |
MIN( expr ) | O | O | O | O | O |
MIN( expr ) FILTER | X | X | X | X | O |
MIN( expr ) OVER | X | X | X | O | O |
MOD( num1, num2 ) | O | O | O | O | O |
MONTHS_BETWEEN( date1, date2 ) | O | O | O | O | O |
NEXT_DAY( date, day ) | O | O | O | O | O |
seq.NEXTVAL | O | O | O | O | O |
NEXTVAL( seq ) | O | O | O | O | O |
NEXT VALUE FOR seq | O | O | O | O | O |
NOT | O | O | O | O | O |
NTH_VALUE( expr, n ) OVER | X | X | X | O | O |
NTILE( expr ) OVER | X | X | X | O | O |
NULLIF( expr1, expr2 ) | O | O | O | O | O |
NUMTODSINTERVAL( num, interval_indicator ) | X | O | O | O | O |
NUMTOYMINTERVAL( num, interval_indicator ) | X | O | O | O | O |
NVL( expr1, expr2 ) | O | O | O | O | O |
NVL2( expr1, expr2, expr3 ) | O | O | O | O | O |
OCTET_LENGTH( str ) | O | O | O | O | O |
OVERLAY( str1 PLACING str2 FROM start FOR length ) | O | O | O | O | O |
OR | O | O | O | O | O |
PERCENT_RANK() OVER | X | X | X | O | O |
PERCENTILE_CONT( expr ) OVER | X | X | X | O | O |
PERCENTILE_DISC( expr ) OVER | X | X | X | O | O |
PHYSICAL_LENGTH( expr ) | X | O | O | O | O |
PI() | O | O | O | O | O |
POSITION( str1 IN str2 ) | O | O | O | O | O |
POWER( num1, num2 ) | O | O | O | O | O |
PRIOR expr | X | X | O | O | O |
RADIANS( degrees ) | O | O | O | O | O |
RANDOM( min, max ) | O | O | O | O | O |
RANK() OVER | X | X | X | O | O |
RATIO_TO_REPORT( expr ) OVER | X | X | X | O | O |
REGEXP_COUNT | X | X | X | X | O |
REGEXP_INSTR | X | X | X | X | O |
REGEXP_LIKE | X | X | X | X | O |
REGEXP_REPLACE | X | X | X | X | O |
REGEXP_SUBSTR | X | X | X | X | O |
REGR_AVGX( expr1, expr2 ) OVER | X | X | X | O | O |
REGR_AVGY( expr1, expr2 ) OVER | X | X | X | O | O |
REGR_COUNT( expr1, expr2 ) OVER | X | X | X | O | O |
REGR_INTERCEPT( expr1, expr2 ) OVER | X | X | X | O | O |
REGR_R2( expr1, expr2 ) OVER | X | X | X | O | O |
REGR_SLOPE( expr1, expr2 ) OVER | X | X | X | O | O |
REGR_SXX( expr1, expr2 ) OVER | X | X | X | O | O |
REGR_SXY( expr1, expr2 ) OVER | X | X | X | O | O |
REGR_SYY( expr1, expr2 ) OVER | X | X | X | O | O |
REPEAT( str, num ) | O | O | O | O | O |
REPLACE( str, from, to ) | O | O | O | O | O |
REVERSE( str ) | O | O | O | O | O |
ROUND( num ) | O | O | O | O | O |
ROUND( date, fmt ) | O | O | O | O | O |
ROW_NUMBER() OVER | X | X | X | O | O |
ROWID_GRID_BLOCK_ID( rowid ) | O | O | O | O | O |
ROWID_GRID_BLOCK_SEQ( rowid ) | O | O | O | O | O |
ROWID_MEMBER_ID( rowid ) | O | O | O | O | O |
ROWID_OBJECT_ID( rowid ) | O | O | O | O | O |
ROWID_PAGE_ID( rowid ) | O | O | O | O | O |
ROWID_ROW_NUMBER( rowid ) | O | O | O | O | O |
ROWID_SHARD_ID( rowid ) | O | O | O | O | O |
ROWID_TABLESPACE_ID( rowid ) | O | O | O | O | O |
ROWNUM | O | O | O | O | O |
RPAD( str, length, fill ) | O | O | O | O | O |
RTRIM( str, [ str ] ) | O | O | O | O | O |
SESSION_ID() | O | O | O | O | O |
SESSION_SERIAL() | O | O | O | O | O |
SESSION_USER | O | O | O | O | O |
SESSIONTIMEZONE() | X | X | X | O | O |
SHARD_GROUP_ID( table, expr ) | O | O | O | O | O |
SHARD_GROUP_NAME( table_name, shard_key_value [, ...] ) | O | O | O | O | O |
SHARD_ID( table, expr ) | O | O | O | O | O |
SHARD_NAME( table_name, shard_key_value [, ...] ) | O | O | O | O | O |
SHIFT_LEFT( num, cnt ) | O | O | O | O | O |
SHIFT_RIGHT( num, cnt ) | O | O | O | O | O |
SIGN( num ) | O | O | O | O | O |
SIN( num ) | O | O | O | O | O |
SPLIT_PART( str, delimiter, field ) | O | O | O | O | O |
SQRT( num ) | O | O | O | O | O |
STATEMENT_DATE() | O | O | O | O | O |
STATEMENT_LOCALTIME() | O | O | O | O | O |
STATEMENT_LOCALTIMESTAMP() | O | O | O | O | O |
STATEMENT_TIME() | O | O | O | O | O |
STATEMENT_TIMESTAMP() | O | O | O | O | O |
STATEMENT_VIEW_SCN() | O | O | O | O | O |
STATEMENT_VIEW_SCN_DCN() | O | O | O | O | O |
STATEMENT_VIEW_SCN_GCN() | O | O | O | O | O |
STATEMENT_VIEW_SCN_LCN() | O | O | O | O | O |
STDDEV( expr ) | O | O | O | O | O |
STDDEV( expr ) FILTER | X | X | X | X | O |
STDDEV( expr ) OVER | X | X | X | O | O |
STDDEV_POP( expr ) | O | O | O | O | O |
STDDEV_POP( expr ) FILTER | X | X | X | X | O |
STDDEV_POP( expr ) OVER | X | X | X | O | O |
STDDEV_SAMP( expr ) | O | O | O | O | O |
STDDEV_SAMP( expr ) FILTER | X | X | X | X | O |
STDDEV_SAMP( expr ) OVER | X | X | X | O | O |
STRING_AGG( str [, delimiter] ) OVER | X | X | X | O | O |
SUBSTR( str FROM start FOR length ) | O | O | O | O | O |
SUBSTR( str, start, length ) | O | O | O | O | O |
SUBSTRB( str, start, length ) | O | O | O | O | O |
SUBSTRING( str FROM start FOR length ) | O | O | O | O | O |
SUBSTRING( str, start, length ) | O | O | O | O | O |
SUM( expr ) | O | O | O | O | O |
SUM( expr ) FILTER | X | X | X | X | O |
SUM( expr ) OVER | X | X | X | O | O |
SYSDATE | O | O | O | O | O |
SYS_CONNECT_BY_PATH( expr, 'string' ) | X | X | O | O | O |
SYS_EXTRACT_UTC( datetime_with_timezone ) | O | O | O | O | O |
SYSTIME | O | O | O | O | O |
SYSTIMESTAMP | O | O | O | O | O |
TABLE_PHYSICAL_STATS( table_name, num ) | X | X | X | X | O |
TAN( num ) | O | O | O | O | O |
TO_CHAR( datetime, fmt ) | O | O | O | O | O |
TO_CHAR( number, fmt ) | O | O | O | O | O |
TO_BASE64( str ) | O | O | O | O | O |
TO_DATE( str, fmt ) | O | O | O | O | O |
TO_NATIVE_BIGINT( str, fmt ) | X | O | O | O | O |
TO_NATIVE_DOUBLE( str, fmt ) | O | O | O | O | O |
TO_NATIVE_INTEGER( str, fmt ) | X | O | O | O | O |
TO_NATIVE_REAL( str, fmt ) | O | O | O | O | O |
TO_NATIVE_SMALLINT( str, fmt ) | X | O | O | O | O |
TO_NUMBER( num, fmt ) | O | O | O | O | O |
TO_TIME( str, fmt ) | O | O | O | O | O |
TO_TIME_TZ( str, fmt ) | O | O | O | O | O |
TO_TIME_WITH_TIME_ZONE( str, fmt ) | O | O | O | O | O |
TO_TIMESTAMP( str, fmt ) | O | O | O | O | O |
TO_TIMESTAMP_TZ( str, fmt ) | O | O | O | O | O |
TO_TIMESTAMP_WITH_TIME_ZONE( str, fmt ) | O | O | O | O | O |
TRANSACTION_DATE() | O | O | O | O | O |
TRANSACTION_LOCALTIME() | O | O | O | O | O |
TRANSACTION_LOCALTIMESTAMP() | O | O | O | O | O |
TRANSACTION_TIME() | O | O | O | O | O |
TRANSACTION_TIMESTAMP() | O | O | O | O | O |
TRANSLATE( str, from, to ) | O | O | O | O | O |
TRIM( LEADING|TRAILING|BOTH trim_char FROM source ) | O | O | O | O | O |
TRUNC( num, scale ) | O | O | O | O | O |
TRUNC( date, fmt ) | O | O | O | O | O |
UPPER( str ) | O | O | O | O | O |
UNHEX( str ) | O | O | O | O | O |
UNHEX_TO_CHARSTR( str ) | O | O | O | O | O |
USER_ID() | O | O | O | O | O |
UUID() | O | O | O | O | O |
VAR_POP( expr ) | O | O | O | O | O |
VAR_POP( expr ) FILTER | X | X | X | X | O |
VAR_POP( expr ) OVER | X | X | X | O | O |
VAR_SAMP( expr ) | O | O | O | O | O |
VAR_SAMP( expr ) FILTER | X | X | X | X | O |
VAR_SAMP( expr ) OVER | X | X | X | O | O |
VARIANCE( expr ) | O | O | O | O | O |
VARIANCE( expr ) FILTER | X | X | X | X | O |
VARIANCE( expr ) OVER | X | X | X | O | O |
VERSION() | O | O | O | O | O |
WIDTH_BUCKET( num, min, max, cnt ) | O | O | O | O | O |
Object DDL
SQL Object DDL
SQL 객체를 생성/ 제거/ 변경하는 DDL에 대한 feature matrix는 다음과 같다.
객체 | Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|---|
Database 객체 | ALTER DATABASE ARCHIVELOG | O | O | O | O | O |
ALTER DATABASE ADD LOGFILE | O | O | O | O | O | |
ALTER DATABASE DROP LOGFILE | O | O | O | O | O | |
ALTER DATABASE RENAME CHANGE TRACKING FILE | X | X | X | X | O | |
ALTER DATABASE RENAME GLOBAL TRANSACTION LOGFILE | X | X | X | O | O | |
ALTER DATABASE RENAME LOGFILE | O | O | O | O | O | |
ALTER DATABASE BEGIN/END BACKUP | O | O | O | O | O | |
ALTER DATABASE RECOVER | O | O | O | O | O | |
ALTER DATABASE RECOVER TABLESPACE | O | O | O | O | O | |
ALTER DATABASE REGISTER | O | O | O | O | O | |
ALTER DATABASE RESTORE | O | O | O | O | O | |
ANALYZE SYSTEM | O | O | O | O | O | |
COMMENT ON object IS .. | O | O | O | O | O | |
Profile 객체 | CREATE PROFILE | O | O | O | O | O |
DROP PROFILE | O | O | O | O | O | |
ALTER PROFILE | O | O | O | O | O | |
Audit policy 객체 | CREATE AUDIT POLICY | O | O | O | O | O |
DROP AUDIT POLICY | O | O | O | O | O | |
ALTER AUDIT POLICY | O | O | O | O | O | |
AUDIT POLICY | O | O | O | O | O | |
NOAUDIT POLICY | O | O | O | O | O | |
Authorization 객체 | CREATE ROLE | X | X | X | X | O |
CREATE USER | O | O | O | O | O | |
DROP ROLE | X | X | X | X | O | |
DROP USER | O | O | O | O | O | |
ALTER USER | O | O | O | O | O | |
GRANT privileges TO | O | O | O | O | O | |
GRANT role TO | X | X | X | X | O | |
REVOKE privileges FROM | O | O | O | O | O | |
REVOKE role FROM | X | X | X | X | O | |
Schema 객체 | CREATE SCHEMA | O | O | O | O | O |
DROP SCHEMA | O | O | O | O | O | |
Tablespace 객체 | CREATE MEMORY DATA TABLESPACE | O | O | O | O | O |
CREATE MEMORY TEMPORARY TABLESPACE | O | O | O | O | O | |
DROP TABLESPACE | O | O | O | O | O | |
ALTER TABLESPACE .. RENAME TO | O | O | O | O | O | |
ALTER TABLESPACE .. BEGIN/END BACKUP | O | O | O | O | O | |
ALTER TABLESPACE .. ADD [DATAFILE|MEMORY] | O | O | O | O | O | |
ALTER TABLESPACE .. DROP [DATAFILE|MEMORY] | O | O | O | O | O | |
ALTER TABLESPACE .. RENAME DATAFILE | O | O | O | O | O | |
ALTER TABLESPACE .. { ONLINE | OFFLINE } | O | O | O | O | O | |
Table 객체 | CREATE TABLE | O | O | O | O | O |
CREATE TABLE AS SELECT | O | O | O | O | O | |
CREATE GLOBAL TEMPORARY TABLE | O | O | O | O | O | |
CREATE GLOBAL TEMPORARY TABLE AS SELECT | O | O | O | O | O | |
CREATE IMMUTABLE TABLE | X | O | O | O | O | |
CREATE IMMUTABLE TABLE AS SELECT | X | O | O | O | O | |
DROP TABLE | O | O | O | O | O | |
TRUNCATE TABLE | O | O | O | O | O | |
ALTER TABLE .. STORAGE | O | O | O | O | O | |
ALTER TABLE .. RENAME TO | O | O | O | O | O | |
ALTER TABLE .. ADD COLUMN | O | O | O | O | O | |
ALTER TABLE .. SET UNUSED COLUMN | O | O | O | O | O | |
ALTER TABLE .. ALTER COLUMN | O | O | O | O | O | |
ALTER TABLE .. RENAME COLUMN | O | O | O | O | O | |
ALTER TABLE .. RENAME CONSTRAINT | O | O | O | O | O | |
ALTER TABLE .. REORGANIZE | X | X | X | X | O | |
ALTER TABLE .. ADD CONSTRAINT | O | O | O | O | O | |
ALTER TABLE .. DROP CONSTRAINT | O | O | O | O | O | |
ALTER TABLE .. ALTER CONSTRAINT | O | O | O | O | O | |
ALTER TABLE .. ADD SUPPLEMENTAL LOG | O | O | O | O | O | |
ALTER TABLE .. DROP SUPPLEMENTAL LOG | O | O | O | O | O | |
ALTER TABLE .. READ { ONLY | WRITE } | O | O | O | O | O | |
ALTER TABLE name SET TRIGGER ORDER | X | X | X | X | O | |
ANALYZE TABLE | O | O | O | O | O | |
FLASHBACK TABLE | X | O | O | O | O | |
PURGE | X | O | O | O | O | |
View 객체 | CREATE VIEW | O | O | O | O | O |
DROP VIEW | O | O | O | O | O | |
ALTER VIEW | O | O | O | O | O | |
Index 객체 | CREATE INDEX | O | O | O | O | O |
DROP INDEX | O | O | O | O | O | |
ALTER INDEX .. AGING | O | O | O | O | O | |
ALTER INDEX .. STORAGE | O | O | O | O | O | |
ALTER INDEX .. RENAME | O | O | O | O | O | |
ALTER INDEX .. REBUILD | X | O | O | O | O | |
ALTER INDEX .. COALESCE | X | X | X | O | O | |
ALTER INDEX .. ENABLE/DISABLE | X | X | X | X | O | |
Sequence 객체 | CREATE SEQUENCE | O | O | O | O | O |
DROP SEQUENCE | O | O | O | O | O | |
ALTER SEQUENCE | O | O | O | O | O | |
Synonym 객체 | CREATE SYNONYM | O | O | O | O | O |
DROP SYNONYM | O | O | O | O | O | |
CREATE PUBLIC SYNONYM | O | O | O | O | O | |
DROP PUBLIC SYNONYM | O | O | O | O | O | |
Stored procedure 객체 | CREATE PROCEDURE | O | O | O | O | O |
DROP PROCEDURE | O | O | O | O | O | |
ALTER PROCEDURE | O | O | O | O | O | |
Stored function 객체 | CREATE FUNCTION | O | O | O | O | O |
DROP FUNCTION | O | O | O | O | O | |
ALTER FUNCTION | O | O | O | O | O | |
Package 객체 | CREATE PACKAGE | X | O | O | O | O |
CREATE PACKAGE BODY | X | O | O | O | O | |
ALTER PACKAGE | X | O | O | O | O | |
DROP PACKAGE | X | O | O | O | O | |
Library 객체 | CREATE LIBRARY | X | X | X | X | O |
DROP LIBRARY | X | X | X | X | O | |
Trigger 객체 | CREATE TRIGGER | X | X | X | X | O |
ALTER TRIGGER name COMPILE | X | X | X | X | O | |
ALTER TRIGGER name ENABLE/DISABLE | X | X | X | X | O | |
ALTER TRIGGER name RENAME TO | X | X | X | X | O | |
DROP TRIGGER | X | X | X | X | O |
Cluster Object DDL
Cluster 객체를 생성/ 제거/ 변경하는 DDL에 대한 feature matrix는 다음과 같다.
객체 | Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|---|
Cluster system 객체 | ALTER DATABASE REBALANCE | O | O | O | O | O |
ALTER DATABASE DROP INACTIVE CLUSTER MEMBERS | O | O | O | O | O | |
ALTER DATABASE OFFLINE INACTIVE CLUSTER MEMBERS | O | O | O | O | O | |
ALTER DATABASE DROP OFFLINE SEGMENTS | X | X | X | O | O | |
ALTER DATABASE DROP UNUSABLE SEGMENTS | X | X | X | X | O | |
ALTER DATABASE SYNCHRONIZE | X | X | X | O | O | |
Cluster group 객체 | CREATE CLUSTER GROUP | O | O | O | O | O |
DROP CLUSTER GROUP | O | O | O | O | O | |
Cluster member 객체 | ALTER CLUSTER GROUP name ADD MEMBER | O | O | O | O | O |
ALTER CLUSTER GROUP name OFFLINE MEMBER | O | O | O | O | O | |
ALTER DATABASE RESET LOCAL CLUSTER MEMBER | O | O | O | O | O | |
ALTER SYSTEM IRRECOVERABLE CLUSTER MEMBER | O | O | O | O | O | |
ALTER SYSTEM JOIN DATABASE | O | O | O | O | O | |
Cluster location 객체 | CREATE CLUSTER LOCATION | O | O | O | O | O |
DROP CLUSTER LOCATION | O | O | O | O | O | |
ALTER CLUSTER LOCATION | O | O | O | O | O | |
Cluster table과 shard 객체 | ALTER TABLE name REBALANCE | O | O | O | O | O |
ALTER TABLE name DROP OFFLINE SEGMENTS | X | X | X | O | O | |
ALTER TABLE name DROP UNUSABLE SEGMENTS | X | X | X | X | O | |
ALTER TABLE name OFFLINE INACTIVE CLUSTER MEMBERS | X | X | X | X | O | |
ALTER TABLE name SYNCHRONIZE | X | X | X | O | O | |
ALTER TABLE name MERGE SHARDS | X | O | O | O | O | |
ALTER TABLE name MOVE SHARD | O | O | O | O | O | |
ALTER TABLE name SPLIT SHARD | O | O | O | O | O | |
ALTER TABLE name RENAME SHARD | O | O | O | O | O | |
Global secondary index 객체 | ALTER TABLE name ADD GLOBAL SECONDARY INDEX | O | O | O | O | O |
ALTER TABLE name DROP GLOBAL SECONDARY INDEX | O | O | O | O | O | |
ALTER TABLE name ALTER GLOBAL SECONDARY INDEX | O | O | O | O | O | |
ALTER TABLE name ALTER GLOBAL SECONDARY INDEX AGING | O | O | O | O | O | |
ALTER TABLE name ALTER GLOBAL SECONDARY INDEX REBUILD | X | O | O | O | O | |
ALTER TABLE name ALTER GLOBAL SECONDARY INDEX COALESCE | X | X | X | O | O |
SQL Language
DML
데이터를 조작하는 DML 구문의 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
INSERT INTO .. | O | O | O | O | O |
INSERT INTO .. RETURNING query | O | O | O | O | O |
INSERT INTO .. RETURNING .. INTO .. | O | O | O | O | O |
INSERT INTO .. UPDATE | X | X | O | O | O |
INSERT INTO .. UPDATE .. RETURNING .. | X | X | O | O | O |
INSERT INTO .. UPDATE .. RETURNING .. INTO .. | X | X | O | O | O |
DELETE FROM .. | O | O | O | O | O |
DELETE FROM .. RETURNING query | O | O | O | O | O |
DELETE FROM .. RETURNING .. INTO .. | O | O | O | O | O |
DELETE FROM .. WHERE CURRENT OF cursor | O | O | O | O | O |
UPDATE .. | O | O | O | O | O |
UPDATE .. RETURNING query | O | O | O | O | O |
UPDATE .. RETURNING .. INTO .. | O | O | O | O | O |
UPDATE .. WHERE CURRENT OF cursor | O | O | O | O | O |
MERGE .. | X | X | X | X | O |
CALL proc_name | O | O | O | O | O |
Query
데이터를 조회하는 SELECT 구문의 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
<query expression> | O | O | O | O | O |
<query specification> | O | O | O | O | O |
<select list> | O | O | O | O | O |
<from clause> | O | O | O | O | O |
<joined table> | O | O | O | O | O |
<pivot clause> | X | X | X | X | O |
<unpivot clause> | X | X | X | X | O |
<sample clause> | X | X | X | X | O |
<where clause> | O | O | O | O | O |
<group by clause> | O | O | O | O | O |
<rollup list> | X | X | X | X | O |
<cube list> | X | X | X | X | O |
<grouping sets specification> | X | X | X | X | O |
<window clause> | X | X | X | O | O |
<window partition clause> | X | X | X | O | O |
<window order clause> | X | X | X | O | O |
<window frame clause> | X | X | X | O | O |
<window frame exclusion> | X | X | X | O | O |
<order by clause> | O | O | O | O | O |
<offset limit clause> | O | O | O | O | O |
<set operator> | O | O | O | O | O |
<subquery> | O | O | O | O | O |
<hint clause> | O | O | O | O | O |
<with clause> | X | X | O | O | O |
<search clause> | X | X | O | O | O |
<cycle clause> | X | X | O | O | O |
<start with clause> | X | X | O | O | O |
<connect by clause> | X | X | O | O | O |
<order siblings by clause> | X | X | O | O | O |
Control Language
제어 구문의 feature matrix는 다음과 같다.
구분 | Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|---|
Transaction | COMMIT | O | O | O | O | O |
ROLLBACK | O | O | O | O | O | |
SAVEPOINT | O | O | O | O | O | |
RELEASE SAVEPOINT | O | O | O | O | O | |
LOCK TABLE | O | O | O | O | O | |
SET CONSTRAINTS | O | O | O | O | O | |
SET TRANSACTION | O | O | O | O | O | |
Session | SET ROLE | X | X | X | X | O |
SET SESSION CHARACTERISTICS AS | O | O | O | O | O | |
SET SESSION AUTHORIZATION | O | O | O | O | O | |
SET SCHEMA | X | X | O | O | O | |
SET TIME ZONE | O | O | O | O | O | |
ALTER SESSION SET property | O | O | O | O | O | |
System | ALTER SYSTEM {OPEN|MOUNT} DATABASE | O | O | O | O | O |
ALTER SYSTEM CANCEL SESSION | X | X | X | X | O | |
ALTER SYSTEM CHECKPOINT | O | O | O | O | O | |
ALTER SYSTEM FLUSH LOGS | O | O | O | O | O | |
ALTER SYSTEM KILL SESSION | O | O | O | O | O | |
ALTER SYSTEM RECONNECT GLOBAL CONNECTION | O | O | O | O | O | |
ALTER SYSTEM SWITCH LOGFILE | O | O | O | O | O | |
ALTER SYSTEM SET property | O | O | O | O | O | |
ALTER SYSTEM RESET property | O | O | O | O | O |
PSM Language
Persistent Stored Module (PSM) language element의 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
Assignment Statement | O | O | O | O | O |
Basic LOOP Statement | O | O | O | O | O |
Block (BEGIN .. END) | O | O | O | O | O |
Call Specification | X | X | X | X | O |
CASE Statement | O | O | O | O | O |
CLOSE Statement | O | O | O | O | O |
Collection Method Invocation | O | O | O | O | O |
Collection Variable Declaration | O | O | O | O | O |
CONTINUE Statement | O | O | O | O | O |
Cursor FOR LOOP Statement | O | O | O | O | O |
Cursor Variable Declaration | O | O | O | O | O |
DELETE Statement Extension | O | O | O | O | O |
EXCEPTION_INIT Pragma | O | O | O | O | O |
Exception Declaration | O | O | O | O | O |
Exception Handler | O | O | O | O | O |
EXECUTE IMMEDIATE Statement | O | O | O | O | O |
EXIT Statement | O | O | O | O | O |
Explicit Cursor Declaration and Definition | O | O | O | O | O |
FETCH Statement | O | O | O | O | O |
FOR LOOP Statement | O | O | O | O | O |
GOTO Statement | O | O | O | O | O |
IF Statement | O | O | O | O | O |
Implicit Cursor Attribute | O | O | O | O | O |
INSERT Statement Extension | O | O | O | O | O |
Named Cursor Attribute | O | O | O | O | O |
NULL Statement | O | O | O | O | O |
OPEN Statement | O | O | O | O | O |
OPEN FOR Statement | O | O | O | O | O |
Procedure Call | O | O | O | O | O |
Procedure Declaration and Definition | O | O | O | O | O |
RAISE Statement | O | O | O | O | O |
Record Variable Declaration | O | O | O | O | O |
RETURN Statement | O | O | O | O | O |
RETURN TABLE Statement | X | X | X | O | O |
RETURNING INTO clause | O | O | O | O | O |
%ROWTYPE Attribute | O | O | O | O | O |
Scalar Variable Declaration | O | O | O | O | O |
SELECT INTO Statement | O | O | O | O | O |
SQLCODE Function | O | O | O | O | O |
SQLERRM Function | O | O | O | O | O |
%TYPE Attribute | O | O | O | O | O |
UPDATE Statement Extension | O | O | O | O | O |
WHILE LOOP Statement | O | O | O | O | O |
Built-in Package 의 feature matrix는 다음과 같다.
Package | Sub Routine | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|---|
DBMS_LOCK | SLEEP() | X | O | O | O | O |
DBMS_OUTPUT | DISABLE() | O | O | O | O | O |
ENABLE() | O | O | O | O | O | |
GET_LINE() | O | O | O | O | O | |
NEW_LINE() | X | X | O | O | O | |
PUT() | X | X | O | O | O | |
PUT_LINE() | O | O | O | O | O | |
SET_LOG() | O | O | O | O | O | |
DBMS_SQL | RETURN_RESULT() | X | X | X | O | O |
DBMS_STANDARD | RAISE_APPLICATION_ERROR() | O | O | O | O | O |
API
ODBC
ODBC 표준 API에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
SQLAllocHandle() | O | O | O | O | O |
SQLBindCol() | O | O | O | O | O |
SQLBindParameter() | O | O | O | O | O |
SQLCloseCursor() | O | O | O | O | O |
SQLColAttribute() | O | O | O | O | O |
SQLColumnPrivileges() | O | O | O | O | O |
SQLColumns() | O | O | O | O | O |
SQLConnect() | O | O | O | O | O |
SQLDescribeCol() | O | O | O | O | O |
SQLDescribeParam() | O | O | O | O | O |
SQLDisconnect() | O | O | O | O | O |
SQLDriverConnect() | O | O | O | O | O |
SQLEndTran() | O | O | O | O | O |
SQLExecDirect() | O | O | O | O | O |
SQLExecute() | O | O | O | O | O |
SQLExtendedFetch() | O | O | O | O | O |
SQLFetch() | O | O | O | O | O |
SQLFetchScroll() | O | O | O | O | O |
SQLForeignKeys() | O | O | O | O | O |
SQLFreeHandle() | O | O | O | O | O |
SQLFreeStmt() | O | O | O | O | O |
SQLGetConnectAttr() | O | O | O | O | O |
SQLGetCursorName() | O | O | O | O | O |
SQLGetData() | O | O | O | O | O |
SQLGetDescField() | O | O | O | O | O |
SQLGetDescRec() | O | O | O | O | O |
SQLGetDiagField() | O | O | O | O | O |
SQLGetDiagRec() | O | O | O | O | O |
SQLGetEnvAttr() | O | O | O | O | O |
SQLGetFunctions() | O | O | O | O | O |
SQLGetInfo() | O | O | O | O | O |
SQLGetStmtAttr() | O | O | O | O | O |
SQLGetTypeInfo() | O | O | O | O | O |
SQLMoreResults() | O | O | O | O | O |
SQLNumParams() | O | O | O | O | O |
SQLNumResultCols() | O | O | O | O | O |
SQLParamData() | O | O | O | O | O |
SQLPrepare() | O | O | O | O | O |
SQLPrimaryKeys() | O | O | O | O | O |
SQLProcedureColumns() | O | O | O | O | O |
SQLProcedures() | O | O | O | O | O |
SQLPutData() | O | O | O | O | O |
SQLRowCount() | O | O | O | O | O |
SQLSetConnectAttr() | O | O | O | O | O |
SQLSetCursorName() | O | O | O | O | O |
SQLSetDescField() | O | O | O | O | O |
SQLSetDescRec() | O | O | O | O | O |
SQLSetEnvAttr() | O | O | O | O | O |
SQLSetPos() | O | O | O | O | O |
SQLSetStmtAttr() | O | O | O | O | O |
SQLSpecialColumns() | O | O | O | O | O |
SQLStatistics() | O | O | O | O | O |
SQLTablePrivileges() | O | O | O | O | O |
SQLTables() | O | O | O | O | O |
ODBC 표준 이외의 부가적으로 지원하는 API에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
xa_open | O | O | O | O | O |
xa_close | O | O | O | O | O |
xa_start | O | O | O | O | O |
xa_end | O | O | O | O | O |
xa_rollback | O | O | O | O | O |
xa_prepare | O | O | O | O | O |
xa_commit | O | O | O | O | O |
xa_recover | O | O | O | O | O |
xa_forget | O | O | O | O | O |
SQLGetXaSwitch | O | O | O | O | O |
SQLGetXaConnectionHandle | O | O | O | O | O |
SQLGetGroupCount | O | O | O | O | O |
SQLGetGroupIDs | O | O | O | O | O |
SQLGetGroupName | O | O | O | O | O |
SQLGetSuitableGroupID | O | O | O | O | O |
JDBC
JDBC에 대한 class feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
CallableStatement | O | O | O | O | O |
CommonDataSource | O | O | O | O | O |
Connection | O | O | O | O | O |
ConnectionPoolDataSource | O | O | O | O | O |
DatabaseMetaData | O | O | O | O | O |
DataSource | O | O | O | O | O |
Driver | O | O | O | O | O |
ParameterMetaData | O | O | O | O | O |
PooledConnection | O | O | O | O | O |
PreparedStatement | O | O | O | O | O |
ResultSet | O | O | O | O | O |
ResultSetMetaData | O | O | O | O | O |
RowId | O | O | O | O | O |
Savepoint | O | O | O | O | O |
Statement | O | O | O | O | O |
XAConnection | O | O | O | O | O |
XADataSource | O | O | O | O | O |
XAResource | O | O | O | O | O |
GoldilocksInterval | O | O | O | O | O |
GoldilocksTypes | O | O | O | O | O |
Embedded SQL
Precompiler Option
Precompiler의 option에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
--help | O | O | O | O | O |
--include-path | O | O | O | O | O |
--no-prompt | O | O | O | O | O |
--output | O | O | O | O | O |
--unsafe-null | O | O | O | O | O |
--version | O | O | O | O | O |
--no-lineinfo | O | O | O | O | O |
--char_map | O | O | O | O | O |
--cumulative | X | O | O | O | O |
--autocommit | X | X | O | O | O |
--parse | X | O | O | O | O |
Embedded SQL 전용 구문
Embedded SQL에서만 사용 가능한 SQL 구문에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
EXEC SQL AT | O | O | O | O | O |
EXEC SQL ATOMIC INSERT | O | O | O | O | O |
EXEC SQL AUTOCOMMIT | O | O | O | O | O |
EXEC SQL BEGIN DECLARE SECTION | O | O | O | O | O |
EXEC SQL COMMIT RELEASE | O | O | O | O | O |
EXEC SQL CONNECT | O | O | O | O | O |
EXEC SQL CONTEXT ALLOCATE | O | O | O | O | O |
EXEC SQL CONTEXT FREE | O | O | O | O | O |
EXEC SQL CONTEXT USE | O | O | O | O | O |
EXEC SQL DISCONNECT | O | O | O | O | O |
EXEC SQL END DECLARE SECTION | O | O | O | O | O |
EXEC SQL FOR | O | O | O | O | O |
EXEC SQL GET CLUSTER_GROUP_ID | X | X | X | X | O |
EXEC SQL GET GROUPID | O | O | O | O | X |
EXEC SQL INCLUDE | O | O | O | O | O |
EXEC SQL INCLUDE SQLCA | O | O | O | O | O |
EXEC SQL OPTION | O | O | O | O | O |
EXEC SQL ROLLBACK RELEASE | O | O | O | O | O |
EXEC SQL WHENEVER | O | O | O | O | O |
EXEC SQL BEGIN ARGUMENT SECTION | X | X | O | O | O |
EXEC SQL END ARGUMENT SECTION | X | X | O | O | O |
Host Variable Data Type
Host 변수에 사용할 수 있는 embbeded SQL data type의 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
C native type | O | O | O | O | O |
struct, union | O | O | O | O | O |
typedef | O | O | O | O | O |
VARCHAR | O | O | O | O | O |
LONG VARCHAR | O | O | O | O | O |
BINARY | O | O | O | O | O |
LONG VARBINARY | O | O | O | O | O |
BOOLEAN | O | O | O | O | O |
NUMBER | O | O | O | O | O |
DATE | O | O | O | O | O |
TIME | O | O | O | O | O |
TIME WITH TIMEZONE | O | O | O | O | O |
TIMESTAMP | O | O | O | O | O |
TIMESTAMP WITH TIMEZONE | O | O | O | O | O |
INTERVAL YEAR | O | O | O | O | O |
INTERVAL MONTH | O | O | O | O | O |
INTERVAL DAY | O | O | O | O | O |
INTERVAL HOUR | O | O | O | O | O |
INTERVAL MINUTE | O | O | O | O | O |
INTERVAL SECOND | O | O | O | O | O |
INTERVAL YEAR TO MONTH | O | O | O | O | O |
INTERVAL DAY TO HOUR | O | O | O | O | O |
INTERVAL DAY TO MINUTE | O | O | O | O | O |
INTERVAL DAY TO SECOND | O | O | O | O | O |
INTERVAL HOUR TO MINUTE | O | O | O | O | O |
INTERVAL HOUR TO SECOND | O | O | O | O | O |
INTERVAL MINUTE TO SECOND | O | O | O | O | O |
Dynamic SQL
Dynamic SQL에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
SELECT .. INTO | O | O | O | O | O |
EXECUTE IMMEDIATE sql | O | O | O | O | O |
PREPARE stmt | O | O | O | O | O |
ALLOCATE DESCRIPTOR | X | X | X | X | O |
DEALLOCATE DESCRIPTOR | X | X | X | X | O |
DESCRIBE INPUT stmt USING desc | X | X | X | X | O |
DESCRIBE OUTPUT stmt USING desc | X | X | X | X | O |
GET DESCRIPTOR | X | X | X | X | O |
SET DESCRIPTOR | X | X | X | X | O |
EXECUTE stmt | O | O | O | O | O |
EXECUTE stmt USING DESCRIPTOR | X | X | X | X | O |
EXECUTE stmt INTO DESCRIPTOR | X | X | X | X | O |
DECLARE cursor FOR sql | O | O | O | O | O |
DECLARE cursor FOR stmt | O | O | O | O | O |
OPEN cursor | O | O | O | O | O |
OPEN cursor USING | O | O | O | O | O |
FETCH cursor INTO | O | O | O | O | O |
FETCH cursor INTO DESCRIPTOR | X | X | X | X | O |
CLOSE cursor | O | O | O | O | O |
DELETE .. WHERE CURRENT OF cursor | O | O | O | O | O |
UPDATE .. WHERE CURRENT OF cursor | O | O | O | O | O |
PyDBC
Module
PyDBC가 제공하는 pygoldilocks의 method feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
connect | O | O | O | O | O |
Date | O | O | O | O | O |
Time | O | O | O | O | O |
Timestamp | O | O | O | O | O |
DateFromTicks | O | O | O | O | O |
TimeFromTicks | O | O | O | O | O |
TimestampFromTicks | O | O | O | O | O |
Binary | O | O | O | O | O |
STRING | O | O | O | O | O |
BINARY | O | O | O | O | O |
NUMBER | O | O | O | O | O |
DATETIME | O | O | O | O | O |
ROWID | O | O | O | O | O |
getDecimalSeparator | O | O | O | O | O |
setDecimalSeparator | O | O | O | O | O |
pygoldilocks module의 attribute feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
apilevel | O | O | O | O | O |
threadsafety | O | O | O | O | O |
paramstyle | O | O | O | O | O |
version | O | O | O | O | O |
lowercase | O | O | O | O | O |
Connection
Connection 객체의 method feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
cursor | O | O | O | O | O |
commit | O | O | O | O | O |
rollback | O | O | O | O | O |
close | O | O | O | O | O |
getinfo | O | O | O | O | O |
execute | O | O | O | O | O |
set_attr | O | O | O | O | O |
character_set_name | X | X | X | X | O |
get_output_converter | X | X | X | X | O |
add_output_converter | X | X | X | X | O |
remove_output_converter | X | X | X | X | O |
clear_output_converters | X | X | X | X | O |
setencoding | X | X | X | X | O |
setdecoding | X | X | X | X | O |
__enter__ | X | X | X | X | O |
__exit__ | X | X | X | X | O |
Connection 객체의 attribute feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
autocommit | O | O | O | O | O |
closed | X | X | X | X | O |
maxwrite | X | X | X | X | O |
messages | X | X | X | X | O |
searchescape | O | O | O | O | O |
timeout | O | O | O | O | O |
Cursor
Cursor 객체의 method feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
execute | O | O | O | O | O |
executemany | O | O | O | O | O |
fetchone | O | O | O | O | O |
fetchall | O | O | O | O | O |
fetchmany | O | O | O | O | O |
fetchval | X | X | X | X | O |
commit | O | O | O | O | O |
rollback | O | O | O | O | O |
skip | O | O | O | O | O |
nextset | O | O | O | O | O |
close | O | O | O | O | O |
setinputsizes | O | O | O | O | O |
setoutputsize | O | O | O | O | O |
callproc | O | O | O | O | O |
callfunc | O | O | O | O | O |
tables | O | O | O | O | O |
columns | O | O | O | O | O |
statistics | O | O | O | O | O |
rowIdColumns | O | O | O | O | O |
rowVerColumns | O | O | O | O | O |
primaryKeys | O | O | O | O | O |
foreignKeys | O | O | O | O | O |
procedures | O | O | O | O | O |
procedureColumns | X | X | X | X | O |
getTypeInfo | O | O | O | O | O |
cancel | X | X | X | X | O |
__enter__ | X | X | X | X | O |
__exit__ | X | X | X | X | O |
Cursor 객체의 attribute feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
Description | O | O | O | O | O |
rowcount | O | O | O | O | O |
arraysize | O | O | O | O | O |
connection | O | O | O | O | O |
fast_executemany | O | O | O | O | O |
closed | X | X | X | X | O |
lastrowid | X | X | X | X | O |
messages | X | X | X | X | O |
timeout | X | X | X | X | O |
Row
Row 객체의 attribute feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
cursor_description | O | O | O | O | O |
Utility
gcreatedb
Command Usage
gcreatedb의 command usage에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
--character_set | O | O | O | O | O |
--char_length_units | O | O | O | O | O |
--cluster | O | O | O | O | O |
--db_comment | O | O | O | O | O |
--db_name | O | O | O | O | O |
--help | O | O | O | O | O |
--host | O | O | O | O | O |
--member | O | O | O | O | O |
--port | O | O | O | O | O |
--silent | O | O | O | O | O |
--timezone | O | O | O | O | O |
glsnr
Command Usage
glsnr의 command usage에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
--help | O | O | O | O | O |
--home | O | O | O | O | O |
--silent | O | O | O | O | O |
--start | O | O | O | O | O |
--status | O | O | O | O | O |
--stop | O | O | O | O | O |
Configuration File
glsnr의 configuration에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
BACKLOG | O | O | O | O | O |
DEFAULT_CS_MODE | O | O | O | O | O |
LISTENER_LOG_DIR | O | O | O | O | O |
LISTEN_PORT | O | O | O | O | O |
TCP_EXCLUDED | O | O | O | O | O |
TCP_INVITED | O | O | O | O | O |
TCP_HOST | O | O | O | O | O |
TCP_VALIDNODE_CHECKING | O | O | O | O | O |
TIMEOUT | O | O | O | O | O |
USR_DIR | O | O | O | O | O |
gsql/gsqlnet
Command Usage
gsql의 command usage에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
username password | O | O | O | O | O |
--as {SYSDBA|ADMIN} | O | O | O | O | O |
--conn-string | O | O | O | O | O |
--dsn | O | O | O | O | O |
--enable-color | O | O | O | O | O |
--help | O | O | O | O | O |
--import | O | O | O | O | O |
--no-prompt | O | O | O | O | O |
--prompt | O | O | O | O | O |
--silent | O | O | O | O | O |
--version | O | O | O | O | O |
Interactive gsql Command
gsql 프롬프트 상태에서 사용하는 interactive gsql command에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| X | X | X | X | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| X | O | O | O | O |
| X | X | X | X | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| X | X | X | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
| O | O | O | O | O |
gloader/gloadernet
Command Usage
gloader의 command usage에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
username password | O | O | O | O | O |
--append | X | X | X | X | O |
--array | O | O | O | O | O |
--atomic | O | O | O | O | O |
--bad | O | O | O | O | O |
--buffered | O | O | O | O | O |
--commit | O | O | O | O | O |
--comment | O | O | O | O | O |
--control | O | O | O | O | O |
--data | O | O | O | O | O |
--dsn | O | O | O | O | O |
--errors | O | O | O | O | O |
--export | O | O | O | O | O |
--fieldterm | O | O | O | O | O |
--filesize | O | O | O | O | O |
--format | O | O | O | O | O |
--help | O | O | O | O | O |
--import | O | O | O | O | O |
--lineterm | O | O | O | O | O |
--log | O | O | O | O | O |
--no-copyright | O | O | O | O | O |
--parallel | O | O | O | O | O |
--propagation | O | O | O | O | O |
--qualifier | O | O | O | O | O |
--silent | O | O | O | O | O |
--skip | X | X | X | X | O |
--tablename | O | O | O | O | O |
--AsTIMESTAMP | O | O | O | O | O |
--where | O | O | O | O | O |
--group-id | O | O | O | O | O |
--directio-size | O | O | O | O | X |
--merge | X | X | X | X | O |
--skip_index_maintenance | X | X | X | X | O |
--nologging | X | X | X | X | O |
Control File Syntax
gloader의 control file syntax에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
APPEND | X | X | X | X | O |
CHARACTERSET | O | O | O | O | O |
FIELDS TERMINATED BY | O | O | O | O | O |
OPTIONALLY ENCLOSED BY | O | O | O | O | O |
TABLE [schema_name.]table_name | O | O | O | O | O |
TABLE table_name [ ( column_description) ] | X | X | X | X | O |
LTRIM | O | O | O | O | O |
RTRIM | O | O | O | O | O |
LINES TERMINATED BY | O | O | O | O | O |
WHERE | O | O | O | O | O |
gdump
Command Usage
gdump의 command usage에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 | |
|---|---|---|---|---|---|---|
Common arguments | --silent | O | O | O | O | O |
File type | BACKUP | O | O | O | O | O |
CHANGE_TRACK | X | O | O | O | O | |
COMMIT_LOG | O | O | O | O | O | |
CONTROL | O | O | O | O | O | |
DATA | O | O | O | O | O | |
LOCATION | X | O | O | O | O | |
LOG_BUFFER | O | O | O | O | O | |
PEND_BUFFER | O | O | O | O | O | |
PROPERTY | O | O | O | O | O | |
REDO_LOG | X | X | X | X | O | |
BACKUP file arguments | --body | O | O | O | O | O |
--tbs | O | O | O | O | O | |
--number | O | O | O | O | O | |
--fetch | O | O | O | O | O | |
CONTROL file arguments | --section | O | O | O | O | O |
DATA file arguments | --header | O | O | O | O | O |
--number | O | O | O | O | O | |
--fetch | O | O | O | O | O | |
LOG file arguments | --all | O | O | O | O | O |
--fetch | O | O | O | O | O | |
--header | O | O | O | O | O | |
--number | O | O | O | O | O | |
--offset | O | O | O | O | O | |
tablediff
Configuration File
tablediff의 configuration file에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 | |
|---|---|---|---|---|---|---|
Source table | SOURCE_PASSWORD | O | O | O | O | O |
SOURCE_SCHEMA | O | O | O | O | O | |
SOURCE_TABLE | O | O | O | O | O | |
SOURCE_URL | O | O | O | O | O | |
SOURCE_USER | O | O | O | O | O | |
Target table | TARGET_PASSWORD | O | O | O | O | O |
TARGET_SCHEMA | O | O | O | O | O | |
TARGET_TABLE | O | O | O | O | O | |
TARGET_URL | O | O | O | O | O | |
TARGET_USER | O | O | O | O | O | |
Sync operation | TARGET_INSERT | O | O | O | O | O |
TARGET_UPDATE | O | O | O | O | O | |
TARGET_DELETE | O | O | O | O | O | |
SOURCE_INSERT | O | O | O | O | O | |
Operation options | DIFF_BIN_FILE | O | O | O | O | O |
DIFF_OUT_FILE | O | O | O | O | O | |
DISPLAY_CALL_STACK | O | O | O | O | O | |
DISPLAY_ROW_UNIT | O | O | O | O | O | |
EXCLUDE_COLUMNS | O | O | O | O | O | |
LOGGING_ON_DIFF | O | O | O | O | O | |
LOGGING_ON_SUCCESS | O | O | O | O | O | |
JOB_QUEUE_SIZE | O | O | O | O | O | |
JOB_THREAD | O | O | O | O | O | |
JOB_UNIT_SIZE | O | O | O | O | O | |
PARTITION_RANGE | O | O | O | O | O | |
SYNC_OUT_FILE | O | O | O | O | O | |
WHERE_CLAUSE | O | O | O | O | O | |
gsyncher
Command Usage
gsyncher의 command usage에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
--log | O | O | O | O | O |
--silent | O | O | O | O | O |
--home | O | O | O | O | O |
--copy-right | O | O | O | O | O |
--backup-path | O | O | O | O | O |
--help | O | O | O | O | O |
gmon
Command Usage
gmon의 command usage에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
--start | O | O | O | O | O |
--stop | O | O | O | O | O |
--status | O | O | O | O | O |
--home | O | O | O | O | O |
--uds_dir | X | O | O | O | O |
--silent | O | O | O | O | O |
--no-copyright | O | O | O | O | O |
--help | O | O | O | O | O |
gtrclogger
Command Usage
gtrclogger의 command usage에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
--dir | O | O | O | O | O |
--help | O | O | O | O | O |
--port | O | O | O | O | O |
--start | O | O | O | O | O |
--stop | O | O | O | O | O |
glocator
Command Usage
glocator의 command usage에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
--create | O | O | O | O | O |
--start | O | O | O | O | O |
--stop | O | O | O | O | O |
--conf | O | O | O | O | O |
--status | O | O | O | O | O |
--sync | O | O | O | O | O |
--silent | O | O | O | O | O |
--no-copyright | O | O | O | O | O |
--help | O | O | O | O | O |
Configuration File
glocator의 configuration file에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
HOST | O | O | O | O | O |
PORT | O | O | O | O | O |
WORKER_COUNT | O | O | O | O | O |
MAX_NODE_COUNT | O | O | O | O | O |
MESSAGE_QUEUE_SIZE | O | O | O | O | O |
MESSGE_ALLOCATOR_SIZE | O | O | O | O | O |
PACKET_ALLOCATOR_SIZE | O | O | O | O | O |
SYSTEM_LOGGER_DIR | O | O | O | O | O |
SYSTEM_UDS_DIR | O | O | O | O | O |
LOCATION_FILE_DIR | O | O | O | O | O |
LOCATION_FILE_SIZE | O | O | O | O | O |
LOCATION_FILE_MAX_SIZE | O | O | O | O | O |
MESSAGE_TIMEOUT | O | O | O | O | O |
ALTERNATE_LOCATOR | O | O | O | O | O |
SYNC_RETRY_COUNT | O | O | O | O | O |
SYNC_RESPONSE_TIMEOUT | O | O | O | O | O |
KEEPALIVE_IDLE_TIME | O | O | O | O | O |
KEEPALIVE_COUNT | O | O | O | O | O |
KEEPALIVE_INTERVAL | O | O | O | O | O |
gagent
Command Usage
gagent의 command usage에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
--start | O | O | O | O | O |
--stop | O | O | O | O | O |
--conf | O | O | O | O | O |
--status | O | O | O | O | O |
--home | O | O | O | O | O |
--silent | O | O | O | O | O |
--no-copyright | O | O | O | O | O |
--help | O | O | O | O | O |
Configuration File
gagent의 configuration file에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
REQUEST_PORT | X | O | O | O | O |
RESPONSE_PORT | X | O | O | O | O |
HOST | X | O | O | O | O |
LOCATOR_HOST | O | O | O | O | O |
LOCATOR_PORT | O | O | O | O | O |
SYSTEM_LOGGER_DIR | O | O | O | O | O |
SYSTEM_UDS_DIR | O | O | O | O | O |
ALTERNATE_LOCATOR | O | O | O | O | O |
KEEPALIVE_IDLE_TIME | X | O | O | O | O |
KEEPALIVE_COUNT | X | O | O | O | O |
KEEPALIVE_INTERVAL | X | O | O | O | O |
gloctl
Command Usage
gloctl의 command usage에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
--dsn | X | X | X | X | X |
--conf | O | O | O | O | O |
--ip | O | O | O | O | O |
--port | O | O | O | O | O |
--import | O | O | O | O | O |
--silent | O | O | O | O | O |
--no-copyright | O | O | O | O | O |
--help | O | O | O | O | O |
Configuration File
gloctl의 configuration file에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
PORT | O | O | O | O | O |
LOCATOR_HOST | O | O | O | O | O |
LOCATOR_PORT | O | O | O | O | O |
Replication
cyclone
Command Usage
cyclone의 command usage에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
--conf | O | O | O | O | O |
--encrypt | O | O | O | O | O |
--group | O | O | O | O | O |
--help | O | O | O | O | O |
--key | O | O | O | O | O |
--master | O | O | O | O | O |
--reset | O | O | O | O | O |
--silent | O | O | O | O | O |
--slave | O | O | O | O | O |
--start | O | O | O | O | O |
--status | O | O | O | O | O |
--stop | O | O | O | O | O |
--sync | O | O | O | O | O |
--stand-alone | O | O | O | O | O |
--recovery | O | O | O | O | O |
--local | O | O | O | O | O |
--info | O | O | O | O | O |
Configuration File
cyclone의 configuration file에 대한 feature matrix는 다음과 같다.
Configuration | Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|---|
Common configuration | COMM_CHUNK_COUNT | O | O | O | O | O |
DSN | O | O | O | O | O | |
USER_ENCRYPT_PW | O | O | O | O | O | |
GROUP_NAME | O | O | O | O | O | |
HOST_IP | O | O | O | O | O | |
HOST_EXTERNAL_IP | O | O | O | O | O | |
HOST_PORT | O | O | O | O | O | |
PORT | O | O | O | O | O | |
PROTOCOL | O | O | O | O | O | |
USER_ID | O | O | O | O | O | |
USER_PW | O | O | O | O | O | |
HEARTBEAT_TIMEOUT | X | O | O | O | O | |
TRACE_LOG_PATH | X | X | X | O | O | |
MASTER configuration | CAPTURE_TABLE | O | O | O | O | O |
LOG_PATH | O | O | O | O | O | |
READ_LOG_BLOCK_COUNT | O | O | O | O | O | |
TRANS_SORT_AREA_SIZE | O | O | O | O | O | |
TRANS_FILE_PATH | O | O | O | O | O | |
SYNCHER_COUNT | O | O | O | O | O | |
SYNC_ARRAY_SIZE | O | O | O | O | O | |
GIVEUP_INTERVAL | O | O | O | O | O | |
SKIP_COMMENT | X | O | O | O | O | |
SUPPLEMENTAL_LOG_FORCE_MODE | X | X | X | O | O | |
PACKET_COMPRESSION_MODE | X | X | O | O | O | |
SYNC_ORACLE_DRIVER | X | X | X | O | O | |
SYNC_MYSQL_DRIVER | X | X | X | O | O | |
SYNC_DB2_DRIVER | X | X | X | O | O | |
SYNC_TIBERO_DRIVER | X | X | X | O | O | |
LOG_CAPTURE_INTERVAL_1 | O | O | O | O | O | |
LOG_CAPTURE_INTERVAL_2 | O | O | O | O | O | |
SLAVE configuration | APPLIER_COUNT | O | O | O | O | O |
APPLY_ARRAY_SIZE | X | X | X | X | X | |
APPLY_COMMIT_SIZE | O | O | O | O | O | |
APPLY_TABLE | O | O | O | O | O | |
MASTER_IP | O | O | O | O | O | |
PROPAGATE_MODE | O | O | O | O | O | |
CLUSTER | O | O | O | O | O | |
UPDATE_APPLY_MODE | X | X | O | O | O | |
ORACLE_DRIVER | O | O | O | O | O | |
DB2_DRIVER | X | X | O | O | O | |
DB2_DATABASE | X | X | O | O | O | |
MYSQL_DRIVER | X | X | O | O | O | |
MYSQL_DATABASE | X | X | O | O | O | |
TIBERO_DRIVER | X | X | O | O | O | |
APPLIER_DEADLOCK_PRIORITY | X | X | X | O | O | |
APPLIER_TRACE_LOG_ID | X | X | X | O | O |
clustone
Clustone이 deprecate 되었다.
logmirror
Command Usage
logmirror의 command usage에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
--conf | O | O | O | O | O |
--help | O | O | O | O | O |
--infiniband | O | O | O | O | O |
--master | O | O | O | O | O |
--silent | O | O | O | O | O |
--slave | O | O | O | O | O |
--start | O | O | O | O | O |
--stop | O | O | O | O | O |
--key | O | O | O | O | O |
--encrypt | O | O | O | O | O |
Configuration File
logmirror의 configuration file에 대한 feature matrix는 다음과 같다.
Configuration | Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|---|
Common configuration | PORT | O | O | O | O | O |
MASTER configuration | DSN | O | O | O | O | O |
HOST_IP | O | O | O | O | O | |
HOST_PORT | O | O | O | O | O | |
PROTOCOL | O | O | O | O | O | |
USER_ID | O | O | O | O | O | |
USER_PW | O | O | O | O | O | |
SLAVE configuration | LOG_PATH | O | O | O | O | O |
MASTER_IP | O | O | O | O | O |
cymon
Command Usage
cymon의 command usage에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
--conf | O | O | O | O | O |
--help | O | O | O | O | O |
--cycle | O | O | O | O | O |
--key | O | O | O | O | O |
--start | O | O | O | O | O |
--stop | O | O | O | O | O |
--status | O | O | O | O | O |
cyfile
Command Usage
cyfile의 command usage에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
--conf | X | O | O | O | O |
--help | X | O | O | O | O |
--reset | X | O | O | O | O |
--key | X | O | O | O | O |
--silent | X | O | O | O | O |
--info | X | O | O | O | O |
--start | X | O | O | O | O |
--stop | X | O | O | O | O |
--group | X | O | O | O | O |
--encrypt | X | O | O | O | O |
--status | X | O | O | O | O |
--stand-alone | X | O | O | O | O |
Configuration File
cyfile의 configuration file에 대한 feature matrix는 다음과 같다.
Feature | 3.x | 20c.1 | 21c.1 | 22c.1 | 26c.1 |
|---|---|---|---|---|---|
DSN | X | O | O | O | O |
HOST_IP | X | O | O | O | O |
HOST_PORT | X | O | O | O | O |
PROTOCOL | X | O | O | O | O |
USER_ID | X | O | O | O | O |
USER_PW | X | O | O | O | O |
GROUP_NAME | X | O | O | O | O |
USER_ENCRYPT_PW | X | O | O | O | O |
CAPTURE_TABLE | X | O | O | O | O |
READ_LOG_BLOCK_COUNT | X | O | O | O | O |
TRANS_SORT_AREA_SIZE | X | O | O | O | O |
TRANS_FILE_PATH | X | O | O | O | O |
LOG_CAPTURE_INTERVAL_1 | X | O | O | O | O |
LOG_CAPTURE_INTERVAL_2 | X | O | O | O | O |
DATA_FILE_PATH | X | O | O | O | O |
DATA_FILE_PREFIX | X | O | O | O | O |
DATA_FILE_SIZE | X | O | O | O | O |
UPDATE_BEFORE_VALUE | X | O | O | O | O |
What's New in GOLDILOCKS 26c.1
본 장은 GOLDILOCKS 26c.1에 새로 추가된 기능들에 대해 간략히 설명한다.
Architecture
System Architecture
릴리즈 플랫폼에서 다음과 같은 platform 이 제거되었다.
HP
AIX
PPC64
Storage Internal
변동 사항 없음
Transaction Control
트랜잭션의 ISOLATION LEVEL 중 SERIALIZABLE 은 cluster system 에서 더 이상 지원하지 않는다.
Backup & Recovery
병렬 복구를 위한 parallel recovery 기능이 추가되었다.
병렬 백업을 위한 parallel backup 기능이 추가되었다.
병렬 복원을 위한 parallel restore 기능이 추가되었다.
Database Information
DICTIONARY_SCHEMA
Role에 대한 정보를 조회하기 위해 다음 view들이 추가되었다.
Histogram 정보를 조회하기 위해 다음 view들이 추가되었다.
Library 객체 정보를 조회하기 위해 다음 view들이 추가되었다.
Trigger 객체 정보를 조회하기 위해 다음 view들이 추가되었다.
INFORMATION_SCHEMA
Role에 대한 정보를 조회하기 위해 다음 view들이 추가되었다.
CHECK 제약 조건 정보를 조회하기 위해 CHECK_CONSTRAINTS view가 추가되었다.
Trigger 정보를 조회할 수 있는 다음과 같은 view 들이 추가되었다.
PERFORMANCE_VIEW_SCHEMA
다음과 같은 view 들이 추가되었다.
Server Property
DEFAULT_INDEX_PCTFREE의 기본값이 10으로 변경되었다.
병렬 복구 기능이 추가되었고, 병렬화 정도를 제어하기 위해 RECOVERY_SLAVES 프로퍼티가 추가되었다.
DEFAULT_MAXTRANS의 기본값이 32로 변경되었다.
ANALYZE TABLE 수행 시 histogram bucket의 개수를 제어하기 위해 다음 프로퍼티가 추가되었다. • HISTOGRAM_BALANCE_BUCKET_COUNT • HISTOGRAM_BALANCE_MAX_SAMPLE_COUNT • HISTOGRAM_FREQUENCY_BUCKET_COUNT
시스템의 증분 백업 수행을 위한 기준을 설정하는 기존 프로퍼티 INCREMENTAL_CHECKPOINT_CRITERIA의 이름이 BUFFER_DIRTY_PAGE_LIMIT로 변경되고 기본값도 0으로 변경되었다.
디스크 테이블스페이스를 위한 버퍼 관리 알고리즘을 개선하기 위해 BUFFER_LRU_SCAN_PERCENT 프로퍼티가 추가되었다.
클러스터 환경에서 통신 버퍼 수를 지정하는 CLUSTER_CM_BUFFER_COUNT property가 deprecate되었다. 이를 대신하여 lockable, lockless, synchronization dispatcher를 위한 통신 버퍼 수를 지정하는 LOCKABLE_DISPATCHER_CM_BUFFER_COUNT, LOCKLESS_DISPATCHER_CM_BUFFER_COUNT, SYNC_DISPATCHER_CM_BUFFER_COUNT 프로퍼티가 추가되었다.
디스크 테이블스페이스에 생성된 테이블을 전체 스캔할 때 버퍼에 캐싱할지 여부는 테이블 크기의 threshold에 따라 결정된다. 이 threshold 값을 설정하기 위해 FULL_TABLE_SCAN_CACHING_THRESHOLD 프로퍼티가 추가되었다.
Hash instant table의 예상 bucket count의 최대값을 설정하는 INST_HASH_TABLE_BUCKET_MAX_COUNT 프로퍼티가 추가되었다.
Plan cache에 캐싱할 SQL의 최대 개수를 제한하는 두 개의 property 중에 MAXIMUM_FLANGE_COUNT property는 deprecate 하고 PLAN_CACHE_SIZE 만으로 제어하도록 했다.
PLAN_CACHE_SIZE 의 프로퍼티 속성이 변경되었다. 기존에는 서버를 재시작해야만 적용되던 속성인데 재시작없이 온라인에서 즉시 변경되도록 수정되었다.
V$SQL_CACHE에서 REF_COUNT 컬럼이 제거되었다.
AGING_PLAN_INTERVAL의 기본값이 0 에서 3 으로 변경되었다.
SESSION_MEMORY_INIT_SIZE의 기본값이 131072 에서 524288 로 변경되었다.
Global transaction 로그 파일의 블록 크기를 설정할 수 있는 GLOBAL_TRANSACTION_LOG_BLOCK_SIZE 프로퍼티가 추가되었다.
공유 세션 (shared session)의 초기 메모리 크기를 설정할 수 있는 SHARED_SESSION_MEMORY_INIT_SIZE 프로퍼티가 추가되었다.
인스턴트 인덱스의 공간 사용량을 줄일 수 있는 INSTANT_INDEX_REFERENCE_COLUMN_THRESHOLD 프로퍼티가 추가되었다.
Cluster 에서 모든 멤버가 같은 TRANSACTION_TABLE_SIZE를 가져야 하는 제약이 제거되었다.
Cluster에서 CLUSTER_DEADLOCK_TIMEOUT 프로퍼티를 사용하지 않고 자체적으로 데드락을 검출하도록 변경되면서, 해당 프로퍼티는 deprecate 되었다.
Cluster에서 replica를 반영할 때 기본적으로 async replica 방식을 사용하도록 개선되었다. 다만 async replica 방식을 사용할 수 없을 경우에는 내부적으로 자동 처리되도록 하여, CLUSTER_ASYNC_REPLICATION 프로퍼티가 deprecate 되었다.
SHARED_MEMORY_STATIC_SIZE의 기본값이 800M로 변경되었다.
INST_TABLE_BLOCK_SIZE가 INST_TABLE_PAGE_SIZE로 이름이 변경되었다.
인덱스 구축 및 재구축 시 발생하는 로그의 기록 속도를 제어할 수 있는 REDO_LOGGING_THROTTLING 프로퍼티가 추가되었다.
Cluster에서 commit 관련 프로토콜이 별도의 dispatcher와 queue를 사용하도록 개선되면서 CLUSTER_COMMIT_STREAM_ISOLATION 프로퍼티가 deprecate 되었다.
컨트롤 파일을 저장할 때 임시 파일을 이용하지 않는 방식으로 변경됨에 따라 CONTROL_FILE_TEMP_NAME 프로퍼티가 deprecate 되었다.
다음 프로퍼티들의 이름이 변경되었다.
REBALANCE_BLOCK_READ_COUNT 가 ONLINE_DDL_BLOCK_READ_COUNT 로 변경되었다.
REBALANCE_SHARD_DIVISOR 가 ONLINE_DDL_SCAN_PARTITION 으로 변경되었다.
MAXIMUM_JOURNAL_REPLAY_COUNT 가 ONLINE_DDL_MAXIMUM_JOURNAL_REPLAY_COUNT 로 변경되었다.
ONLINE_JOURNAL_REPLAY_THRESHOLD 가 ONLINE_DDL_JOURNAL_REPLAY_THRESHOLD 로 변경되었다.
gmaster의 log flusher thread가 event를 기다리는 동안 busy waiting을 수행하는 시간을 조절할 수 있는 LOG_FLUSHER_HOT_POLICY_INTERVAL 프로퍼티가 추가되었다.
Redo log archiving 시 디스크 I/O 성능을 제어할 수 있는 ARCHIVE_LOG_THROTTLING 프로퍼티가 추가되었다.
SQL
SQL Element
Data Type
변동 사항 없음
Function
System information function인 CURRENT_ROLE 과 LOCAL_MEMBER_POSITION이 추가되었다.
Built-in function인 GROUPING 과 GROUPING_ID가 추가되었다.
Built-in function인 regular expression이 추가되었다.
Built-in function인 JSON String Constructor의 JSON Output Clause에 PRETTY 옵션이 추가되었다.
Built-in function인 JSON_OBJECT, JSON_OBJECTAGG, JSON_OBJECTAGG() OVER에 JSON Key Uniqueness Constraint 옵션이 추가되었다.
Built-in function인 JSON_ARRAYAGG, JSON_ARRAYAGG() OVER에 JSON Array Aggregate Order By Clause 옵션이 추가되었다.
Aggregation function 중 approximate aggregation인 APPROX_COUNT_DISTINCT가 추가되었다.
Statistics information function 인 TABLE_PHYSICAL_STATS, INDEX_PHYSICAL_STATS, GSI_PHYSICAL_STATS 가 추가되었다.
Object DDL
SQL Object DDL
ROLE
Authorization 객체인 role에 대한 DDL 구문이 추가되었다.
ROLE 생성
ROLE 제거
ROLE 부여
ROLE 회수
ANALYZE TABLE 수행 시 Histogram 정보 구축
ANALYZE TABLE을 수행할 때 다음과 같은 histogram 정보를 구축할 수 있다.
Height-balanced histogram
Frequency histogram
Histogram 정보를 구축하려면 관련 프로퍼티를 활성화해야 한다.
ANALYZE TABLE 구문에 FOR COLUMN GROUPS 절 추가
Column group 통계 정보를 구축할 수 있도록 ANALYZE TABLE 구문에 FOR COLUMN GROUPS 절을 추가하였다.
ANALYZE sampling 정확도 개선
아래와 같은 기법을 도입하여 ANALYZE sampling 의 성능과 정확도를 개선하였다.
Repeatable random sampling
Approximate NUM_DISTINCT (Hyper log 알고리즘)
Exponent 곡선에 의한 NUM_DISTINCT 보정
예를 들어, ANALYZE 샘플링 비율을 10%로 설정해도 TPC-H의 22개 모든 질의에 대해 전수조사 ANALYZE와 동일한 실행 계획이 생성된다.
Audit Policy
CREATE AUDIT POLICY 구문과 ALTER AUDIT POLICY 구문에 <role_audit_clause> 구문이 추가되었다.
RENAME CHANGE TRACKING FILE
ALTER DATABASE RENAME CHANGE TRACKING FILE 구문이 추가되었다.
ALTER INDEX COALESCE
ALTER INDEX COALESCE는 다른 ALTER 구문들과 동시에 실행할 수 없다. (단, 22c.1 버전에서는 가능하다.)
CHECK constraint
CHECK 제약조건이 추가되었다.
FOREIGN KEY constraint
FOREIGN KEY 제약조건이 추가되었다.
<constraint enforcement>
제약 조건을 활성화 또는 비활성화 할 수 있는 <constraint enforcement> 옵션으로 ALTER TABLE name ALTER CONSTRAINT가 추가되었다.
<index enforcement>
인덱스를 활성화 또는 비활성화 할 수 있는 <index enforcement> 기능인 ALTER INDEX name ENABLE/DISABLE이 추가되었다.
ADD CONSTRAINT ON SCHEMA 권한 제거
ADD CONSTRAINT ON SCHEMA 권한이 제거되었다.
테이블 소유자의 ADD CONSTRAINT
CREATE TABLE을 수행하면 ALTER ON TABLE 권한이 부여된다.
ADD CONSTRAINT는 ALTER ON TABLE 권한으로 수행한다.
테이블 비소유자의 ADD CONSTRAINT
ALTER ON TABLE 권한
또는 ALTER TABLE ON SCHEMA 권한이 필요하다.
ADD CONSTRAINT를 수행할 때 제약 조건의 소유자
Constraint 가 속한 table 의 소유자
CREATE USER 수행 시 user schema path 에서 PUBLIC 제거
다음과 같이 CREATE USER를 수행하면, user schema path에서 PUBLIC이 제거되도록 변경되었다.
gSQL> CREATE USER u1 IDENTIFIED BY u1;
gSQL>
SELECT auth_name
, schema_name
, search_order
FROM dictionary_schema.dba_schema_path
WHERE auth_name = 'U1'
;
AUTH_NAME SCHEMA_NAME SEARCH_ORDER
--------- ----------- ------------
U1 U1 122c 이하 버전과 동일하게 사용하고자 할 경우, 다음과 같이 schema path 를 조정한다.
gSQL> CREATE USER u1 IDENTIFIED BY u1;
gSQL> ALTER USER u1 SCHEMA PATH ( u1, public );
gSQL>
SELECT auth_name
, schema_name
, search_order
FROM dictionary_schema.dba_schema_path
WHERE auth_name = 'U1'
;
AUTH_NAME SCHEMA_NAME SEARCH_ORDER
--------- ----------- ------------
U1 U1 1
U1 PUBLIC 2ALTER TABLE name SET TRIGGER ORDER
Table 에 생성한 trigger 들의 실행 순서를 변경하는 ALTER TABLE name SET TRIGGER ORDER 구문이 추가되었다.
ALTER TABLE name REORGANIZE
테이블을 물리적으로 재구성하는 ALTER TABLE name REORGANIZE 구문이 추가되었다.
<shard divisor>
Online DDL 구문에서 사용하는 <shard divisor> 옵션이 <scan partition> 으로 변경되었다.
다음은 변경된 online DDL 구문들이다.
STORAGE 절의 MINSIZE 제거
다음 DDL 구문에서는 STORAGE 절 내 MINSIZE 사용을 더 이상 지원하지 않는다.
INDEX STORAGE 절에서 MAXSIZE 제거
다음 DDL 구문에서는 STORAGE 절 내 MAXSIZE 사용을 더 이상 지원하지 않는다.
Cluster Object DDL
ALTER TABLE ALTER GLOBAL SECONDARY INDEX COALESCE
ALTER TABLE ALTER GLOBAL SECONDARY INDEX COALESCE 구문은 다른 ALTER 구문들과 동시에 실행할 수 없다. (단, 22c.1 버전에서는 가능하다.)
SQL Language
DML
MERGE
MERGE 구문이 추가되었다. 자세한 내용은 MERGE를 참조한다.
APPEND INSERT
APPEND INSERT 방식으로 데이터를 추가하는 기능과 이를 지원하는 힌트가 추가되었다. 자세한 내용은 APPEND INSERT 방식의 데이터 추가를 참조한다.
DELETE FROM의 <local shard limit> 절
DELETE FROM 구문에 데이터 절체를 위한 <local shard limit clause> 가 추가되었다. 자세한 내용은 <local shard limit clause> 를 참조한다.
Query
group by clause의 <grouping element> 확장 지원
<grouping element>에 ROLLUP, CUBE, GROUPING SET가 추가되었다. 자세한 내용은 group by clause를 참조한다.
group by clause에서 select list alias 참조 지원
<grouping column reference>에 select list alias가 추가되었다. 자세한 내용은 group by clause를 참조한다.
Pivot 절
Row를 column으로 변환하는 cross table을 기술하기 위한 pivot 절이 추가되었다. 자세한 내용은 pivot clause를 참조한다.
Unpivot 절
Column을 row로 변환하는 cross table을 기술하기 위한 unpivot 절이 추가되었다. 자세한 내용은 unpivot clause를 참조한다.
Sample 절
테이블의 전체 데이터를 처리하지 않고 일부 row만 무작위로 추출하기 위한 sample 절이 추가되었다. 자세한 내용은 sample clause를 참조한다.
Aggregation Filter
Aggregate Function에 FILTER 기능이 추가되었다.
JSON aggregate Constructor에 FILTER 기능이 추가되었다.
SQL Hint 추가
다음과 같은 SQL hint가 추가되었다.
Control Language
세션에서 수행되는 작업을 취소할 수 있는 ALTER SYSTEM CANCEL SESSION 구문이 추가되었다.
SET ROLE
현재 session의 role을 변경할 수 있는 SET ROLE role_name 구문이 추가되었다.
PSM Language
External Routine
사용자가 작성한 C 프로그램을 실행할 수 있는 External Routine이 추가되었다.
Triggger
특정 테이블에서 DML이 수행될 때마다 자동으로 실행될 동작을 정의하는 Trigger 객체가 추가되었다.
PL Statement
External C Function과 Routine 정보를 대응시키는 Call Specification 구문이 추가되었다.
Library 객체 DDL
Trigger 객체 DDL
Built-in Package
사용자가 필요에 따라 package 를 설치할 수 있도록 built-in package SQL 이 추가되었다.
기존 22c 이하에서 built-in package 를 사용하던 사용자는 아래와 같이 built-in package 를 설치해야 한다.
% gsql sys gliese --as sysdba --import $GOLDILOCKS_HOME/admin/packages/DBMS_LOCK.sql % gsql sys gliese --as sysdba --import $GOLDILOCKS_HOME/admin/packages/DBMS_OUTPUT.sql % gsql sys gliese --as sysdba --import $GOLDILOCKS_HOME/admin/packages/DBMS_SQL.sql % gsql sys gliese --as sysdba --import $GOLDILOCKS_HOME/admin/packages/DBMS_STANDARD.sql
API
ODBC
연결 속성 ALTERNATE_LOCATORS가 ALTERNATE_LOCATOR로 변경되었다.
구조체 SQL_LONG_VARIABLE_LENGTH_STRUCT의 필드 구성이 변경되었다. 버퍼 arr의 용량을 나타내는 buf_len (byte 단위)과 실제 데이터 길이를 나타내는 len (byte 단위)으로 역할이 분리되었다. (비표준 데이터 타입)
JDBC
연결 속성 ALTERNATE_LOCATORS가 ALTERNATE_LOCATOR로 변경되었다.
연결 속성 commit_write_mode가 추가되었다.
Embedded SQL
Precompiler Option
gpec에 --parse 옵션이 추가되었다.
Embedded SQL 전용 구문
GET GROUPID 구문이 GET CLUSTER_GROUP_ID로 변경되었다.
Host Variable Data Type
구조체 SQL_LONG_VARIABLE_LENGTH_STRUCT의 필드 구성이 변경되었다. 버퍼 arr의 용량을 나타내는 buf_len (byte 단위)과 실제 데이터 길이를 나타내는 len (byte 단위)으로 역할이 분리되었다. (LONG VARCHAR)
VARCHAR 또는 VARBINARY 변수를 IN 또는 IN_OUT 매개변수로 사용할 경우, 내부적으로 해당 변수의 길이 (len)에 음수 값이 설정되면 오류가 발생하도록 오류 처리 방식이 변경되었다.
Dynamic SQL
Dynamic SQL Method 4를 지원한다.
PDO
변동 사항 없음
PyDBC
설치 및 패키징
Python 3 패키지에 pyproject.toml 기반 빌드와 wheel/sdist 패키징을 적용하였다.
Python 3 패키지에 IDE 및 정적 타입 검사 도구에서 사용할 수 있는 pygoldilocks.pyi 타입 stub을 추가하였다.
connection
Python 3에서 문자 데이터의 codec을 설정하기 위한 setencoding() 및 setdecoding() 을 지원한다.
Python 3에서 connection.messages, character_set_name(), 그리고 SQL 타입별 output converter를 지원한다.
대용량 문자 및 바이너리 매개변수 처리를 위해 connection.maxwrite를 지원한다.
Result set 및 PSM
Procedure가 반환하는 여러 result set을 cursor.nextset()으로 순차적으로 처리할 수 있다. 다음 result set이 있으면 True, 모두 처리한 경우 None을 반환한다.
procedureColumns()를 추가하여 procedure의 IN, OUT 및 INOUT parameter metadata를 조회할 수 있다.
fetchval(), cursor iterator 및 statement cancel 기능을 지원한다.
cursor.lastrowid는 지원되지 않는 값이므로 항상 None을 반환한다.
Data Type
Python 3에서 TIME WITH TIME ZONE과 TIMESTAMP WITH TIME ZONE을 UTC offset이 보존된 timezone-aware datetime 객체로 반환한다.
Python 2에서는 time zone 타입을 문자열로 반환한다.
TIME 및 TIMESTAMP 의 fractional second 와 microsecond 변환 처리가 개선되었다.
NUMBER, NUMERIC 및 DECIMAL의 precision/scale 처리가 개선되었으며, NaN 및 Infinity 와 같은 decimal 값은 허용하지 않는다.
SQLAlchemy
SQLAlchemy 1.4 및 2.0을 지원한다.
Hibernate
Hibernate version 6, 7, 8 을 지원한다.
Utility
gcreatedb
변동 사항 없음
glsnr
변동 사항 없음
gsql/gsqlnet
ROLE
Role 객체와 관련된 DDL 구문을 export 하기 위해 \ddl_role 기능이 추가되었다.
TRIGGER
Trigger 객체와 관련된 DDL 구문을 export 하기 위해 \ddl_trigger 기능이 추가되었다.
gloader/gloadernet
directio-size 옵션이 deprecated 되었다.
APPEND INSERT 방식의 데이터 추가 기능이 추가되면서, 이를 지원하기 위한 옵션 (merge, skip_index_maintenance, nologging) 도 함께 추가되었다.
gdump
Log 옵션 이름이 redo_log 로 변경되었다.
Data 옵션 이름이 datafile 로 변경되었다.
tablediff
변동 사항 없음
gsyncher
변동 사항 없음
gmon
변동 사항 없음
gtrclogger
변동 사항 없음
glocator
Configuration property 중에 ALTERNATE_LOCATORS가 ALTERNATE_LOCATOR로 변경되었다.
glocator 다중화는 이중화로 변경되었다.
sync 옵션에 인자를 사용하지 않도록 변경되었다.
gagent
Configuration property 중에 ALTERNATE_LOCATORS가 ALTERNATE_LOCATOR로 변경되었다.
gloctl
변동 사항 없음
Replication
cyclone
Oracle, DB2, MySQL, Tibero 등 타 DB로 데이터를 이전하는 기능을 추가하였다.
Heartbeat protocol을 data protocol과 분리하여 구성하였다.
logmirror
변동 사항 없음
cymon
변동 사항 없음
cyfile
변동 사항 없음