Oracle Database SQL言語リファレンスのこのリリースでの変更点
内容は次のとおりです。
Oracle Databaseリリース20cにおける変更点
Oracle Database 20cの『Oracle Database SQL言語リファレンス』で変更された点を次に示します。
新機能
リリース20cの新機能は次のとおりです。
SecureFilesのデフラグメンテーション
リリース20cでは、ALTER TABLE
文のshrink_clause
を使用してSecureFileのLOBセグメントを変更できます。
スタンバイCDBコンティニュイティ
ALTER PLUGGABLE DATABASE
文のpdb_managed_recovery
句を使用して、PDBがフィジカル・スタンバイCDB内にあるインスタンスでPDBをリカバリできます。
Oracle XML DB HTTPおよびFTPサービスの監査
CREATE AUDIT POLICY
のPROTOCOL
コンポーネントを使用してFTPおよびHTTPメッセージを監査できます。
現在のユーザーに強制される統合監査ポリシー
CREATE AUDIT POLICY
で作成された統合監査ポリシーは、現在のセッションおよび後続のセッションのAUDIT POLICY
文が実行されるとすぐにアクティブになります。
Oracle Textの新しいDIRECTORY_DATASTOREデータ・ストア・タイプ
FILE_DATASTORE
データ型のかわりに、DIRECTORY_DATASTORE
という新しいデータ・ストア型を使用できます。DIRECTORY_DATASTORE
ではディレクトリ・オブジェクトに基づいたファイル・アクセスが有効になるため、セキュリティが強化されます。
FILE_DATASTORE
は非推奨です。
Oracle Textの新しいNETWORK_DATASTOREデータ・ストア・タイプ
URL_DATASTORE
データ型のかわりに、NETWORK_DATASTORE
という新しいデータ・ストア型を使用できます。NETWORK_DATASTORE
ではディレクトリ・オブジェクトに基づいてファイル・アクセスを有効にするため、セキュリティが向上します。
URL_DATASTORE
は非推奨です。
自動インメモリー管理の拡張
自動インメモリー管理により、ユーザーが操作しなくてもセグメントを移入、削除および再圧縮できるようになります。
inmemory_memcompress
句でMEMCOMPRESS
AUTO
を指定すると、セグメントを管理するようにデータベースに指示できます。
Oracleブロックチェーン表
ブロックチェーン表を使用すると、ブロックチェーン・ネットワーク内のすべての参加者が同じ改ざん防止レジャーにアクセスできる集中型レジャー・モデルを実装できるようになります。CREATE TABLE
文で、ブロックチェーン表を作成できます。
Active Data Guard - スタンバイの結果キャッシュ
Active Data Guardスタンバイ・データベースの結果キャッシュは、フィジカル・スタンバイ・データベースで実行された問合せの結果をキャッシュするために使用されます。result_cache_clause
でSTANDBY
を有効にできます。
ビットマップ・ベースのカウントの個別SQLファンクション
5つの新しいビット・ベクトル・ファンクションを使用して、SQL問合せ内でCOUNT DISTINCT操作を高速化できます。
BITMAP_BUCKET_NUMBER
BITMAP_BIT_POSITION
BITMAP_CONSTRUCT_AGG
BITMAP_OR_AGG
BITMAP_COUNT
インメモリーのフル・テキスト列
INMEMORY TEXT
句は、インメモリー表の非スカラー列に適用できます。この句を使用すると、CONTAINS()
演算子またはJSON_TEXTCONTAINS ()
演算子を使用したテキスト、XMLまたはJSONドキュメントの高速インメモリー検索が可能になります。
SQLマクロ
Oracle Database 20cでは、スカラー式用のマクロを作成して、where_clause
およびSELECT
のHAVING
句で使用できます。この場合、PLSQLファンクションのコールは有効です。
Unicode 12.1のサポート
Oracle Database 20cは、Unicode規格のバージョン12.1に準拠しています。
ビット単位の集計ファンクション
新しい集計ファンクションBIT_AND_AGG
、BIT_OR_AGG
およびBIT_XOR_ADD
により、整数列、および整数値に変換または端数処理できる列のビット単位集計が可能になります。
新しい分析および統計集計ファンクション
指定された分布の形状に関する洞察を提供する新しいファンクション:
KURTOSIS_POP
およびKURTOSIS_SAMP
。データセットの「裾」を測定します。正規分布の尖度はゼロです。尖度が高いほど、適度なサイズの偏差が頻繁に発生するのとは対照的に、極端な偏差の発生頻度が低い結果として、より多くの分散が生じることを意味します。-
SKEWNESS_POP
およびSKEWNESS_SAMP
。データの非対称性を測定します。正の歪度は、データがより右側に分布していることを意味します。負の歪度は、データがより左側に分布していることを意味します。
データの整合性を検証する新しいファンクション: CHECKSUM
。データの改ざんを防ぐための簡単な方法を提供します。DBMS_SQLHASH.GETHASH
のかわりにCHECKSUM
を使用できます。
GROUP BY
文のパフォーマンスを簡略化および最適化するファンクション: ANY_VALUE
。グループ内のランダムな値を返し、グループ内の最初の値を返すように最適化されています。これにより、入力行に対して比較が行われないようにし、GROUP BY
句の一部としてすべての列を指定する必要もなくなります。
PREDICTIONファンクションの構文
次のPREDICTION
ファンクションには、多変量状態推定技術-逐次確率比試験(MSET-SPRT)モデルのような順序付けられたデータを必要とするモデルをスコアリングするための新しい_ordered
構文があります。
PREDICTION
PREDICTION_COST
PREDICTION_DETAILS
PREDICTION_PROBABILITY
PREDICTION_SET
拡張SQL集合演算子
SQLセット演算子で、ANSI SQLで定義されているすべてのキーワードがサポートされるようになりました。新しい演算子EXCEPT
[ALL
]は、機能的にはMINUS
[ALL
]と同等です。演算子MINUS
およびINTERSECT
では、キーワードALL
がサポートされるようになりました。
データベース・インメモリー外部表の拡張
INMEMORY
句は、表レベルおよびパーティション化された外部表またはハイブリッド外部表のパーティション・レベルでサポートされます。ハイブリッド表の場合、表レベルのINMEMORY
属性は、内部または外部にかかわらず、すべてのパーティションに適用されます。
新しいJSONデータ型
JSON
は、JSONデータの新しいSQLおよびPL/SQLデータ型です。これにより、問合せおよび更新のパフォーマンスがテキスト形式のJSONと比べて大幅に向上します。
JSONドキュメントの最上位で使用できるJSONスカラー(RFC 8259サポート)
Oracle DatabaseのJSONドキュメントで、最上位のJSONスカラー値を設定できるようになりました。以前は、JSONオブジェクトまたは配列値が必要でした。
新しいOracle SQL関数JSON_TRANSFORM
SQLファンクションJSON_TRANSFORM
を使用すると、JSON文書を解析して再構築することなく、その一部を更新できます。
強化された分析ファンクション
分析ウィンドウ関数では、SQL標準ウィンドウ・フレーム句のEXCLUDE
オプションがサポートされるようになりました。SELECT
文のquery_block
句は、window_clause
をサポートするようになりました。これにより、SQL:2011規格で定義されているようにSQL標準表式のウィンドウ句が実装されます。
更新されたPKCS#11ライブラリへのスイッチオーバーのためのダウンタイムなしのデータベース可用性の強化
新しいADMINISTER KEY MANAGEMENT SWITCHOVER LIBRARY FOR ALL CONTAINERS
文を使用して、Oracleデータベースが、システム停止時間を発生させることなく、現在使用しているPKCS#11ライブラリから更新されたPKCS#11ライブラリに切り替えるようにできます。
フレックス・ディスク・グループと拡張ディスク・グループのための二重パリティ保護の強化
Oracle ASM Flexディスク・グループ内のライトワンス・ファイルに二重パリティ保護を使用して、複数のハードウェア障害に対してより高い保護を提供できます。
Oracle ASMフレックス・ディスク・グループでの別のCDB内の新しいPDBへのあるCDB内のPDBのクローニングのサポート
ALTER PLUGGABLE DATABASE
のprepare_clause
を使用して、CDB内のPDBを別のCDB内の新しいPDBにクローニングできます。
ファイル・グループ・テンプレート
ファイル・グループ・テンプレートを使用すると、自動的に作成されたファイル・グループのデフォルトのファイル・グループ・プロパティをカスタマイズおよび設定でき、これにより、多数のデータベースが継承するファイル・グループ・プロパティをカスタマイズできます。
ALTER DISKGROUP
のadd_filegroup_clause
のTEMPLATE
オプションを指定します。
自動索引最適化
自動データ最適化(ADO)機能を有効にして、CREATE INDEX
およびALTER INDEX
のindex_ilm_clause
を使用して索引の圧縮および最適化機能を提供できます。
非推奨となった機能
次の機能は、リリース20cでは非推奨であり、将来のリリースではサポートされなくなる可能性があります。
-
従来型の監査は、Oracle Database 20cでは非推奨です。Oracle Database内で選択的かつより効果的な監査が可能になる統合監査を使用することをお薦めします。
-
Oracle Textの
URL_DATASTORE
型は非推奨です。URL_DATASTORE
をNETWORK_DATASTORE
で置き換えることをお薦めします。これは、ACLを使用して特定のサーバーへのアクセスを制御します。 -
Oracle Textの
FILE_DATASTORE
型は非推奨です。Oracle Database 20c以上で使用可能なDIRECTORY_DATASTORE
索引タイプでFILE_DATASTORE
索引を置き換えることをお薦めします。DIRECTORY_DATASTORE
ではディレクトリ・オブジェクトに基づいたファイル・アクセスが有効になるため、セキュリティが強化されます。 -
Oracle Database 20c以降、
DBMS_CRYPTO
内に含まれる古い暗号化およびハッシュ・アルゴリズムは非推奨になりました。これらは、MD4
、MD5
およびRC4
です。セキュリティ要件を満たすために、最新の暗号化アルゴリズムを使用することをお薦めします。
サポート対象外機能
次の機能は、Oracle Database Release 20cではサポート対象外となります。
-
Oracle Database 20cでは、マルチテナント・アーキテクチャを使用します。このリリースからは、非CDBへのアップグレードや作成はできなくなります。ここで、「データベース」という語はCDBまたはPDBを意味します。
-
Oracle Database 20c以降、XML Database (XDB)のいくつかの機能がサポート対象外になりました。Oracle SQLファンクションXMLRootはサポート対象外になりました。かわりに、バージョン番号付きのSQL/XML関数XMLSerialize()を使用してください。
リリース20cでサポート対象外となる機能の詳細なリストは、『Oracle Databaseアップグレード・ガイド』を参照してください。