8 SODAドライバ

様々なSODA実装(言語)に必要なドライバについて説明します。すべての場合において、各ドライバの最新バージョンをお薦めします。様々なOracleデータベースを使用した様々なSODA実装に必要な最小バージョンについて説明します。

Oracle Database 21c以降、SODAコレクションのJSONコンテンツは、デフォルトでJSONデータ型として格納されます。つまり、コレクションのコンテンツ列はJSON型です。

データベース・リリース21c以上でのSODAドライバの互換性の問題を回避するために、次のことをお薦めします。

  • データベース・リリースが21c未満でも、JSON型の操作に必要なドライバ・バージョンを使用します。

  • 21cより前のデータベース・リリースを使用して開始されたプロジェクトの場合は、例8-1に示すように、デフォルト・コレクションのメタデータを明示的に指定します。リリース21c以上を使用して開始されたプロジェクトの場合は、デフォルトのメタデータのみを使用します。

表8-1 SODAドライバの最小必須バージョン

SODA実装(言語) JSONデータ型コンテンツ脚注1 JSONデータ型以外のコンテンツ

Java

  • Maven Centralの次の座標で入手可能なSODA for Javaバージョン1.1.7:

    • グループID: com.oracle.database.soda

    • アーティファクトID: orajsoda

    • バージョン: 1.1.7.1

  • Oracle JDBCドライバ: Oracle Database 21cの場合、ojdbc8.jar。Maven CentralまたはOracle Database JDBC and UCP Downloadsから入手できます。

  • javax.json-1.1.4.jarMaven Centralから入手できます。

Maven Centralの次の座標で入手可能なSODA for Javaバージョン1.1.4:

  • グループID: com.oracle.database.soda

  • アーティファクトID: orajsoda

  • バージョン: 1.1.4

MavenからSODA for Javaを取得すると、その依存関係(Oracle JDBCドライバおよびjavax.json-1.1.4.jar)も自動的に選択されます。

REST

Oracle REST Data Services (ORDS)リリース20.4.1以上。

データベースがOracle Autonomous Databaseではない場合は、Oracle REST Data Services (ORDS)リリース19.4.6以上。

(データベースがOracle Autonomous Databaseの場合は、ORDSの必須リリースがプリインストールされています。)

C

Oracle Instant Clientライブラリは、21c以上である必要があります。Oracle Instant Client Downloadsから入手します。

Oracle Instant Clientライブラリは、19.6以上である必要があります。Oracle Instant Client Downloadsから入手します。

Node.js

推奨されるNode.jsドライバの最小バージョンは4.0です。

Oracle Instant Clientライブラリは、21c以上である必要があります。Oracle Instant Client Downloadsから入手します。

推奨されるNode.jsドライバの最小バージョンは4.0です。

Oracle Instant Clientライブラリは、19.6以上である必要があります。Oracle Instant Client Downloadsから入手します。

Python

推奨されるPythonドライバの最小バージョンは7.1です。

Oracle Instant Clientライブラリは、21c以上である必要があります。Oracle Instant Client Downloadsから入手します。

推奨されるPythonドライバの最小バージョンは7.1です。

Oracle Instant Clientライブラリは、19.6以上である必要があります。Oracle Instant Client Downloadsから入手します。

Oracle SQLcl (SQL Developerコマンドライン)

SODA for SQLclは、まだJSONデータ型コンテンツでは使用できません

Oracle SQLclバージョン20.2を使用します(20.3ではありません)。

脚注1 JSON型のコンテンツでは、データベース初期化パラメータcompatibleが20以上である必要があります。

例8-1 Oracle Database 21c以上でBLOBコンテンツを使用するための回避策

リリース21c以上のオンプレミスOracle Databaseがあり、JSONデータ型の使用に必要なクライアントの最小バージョンがない場合は、ドキュメント・コンテンツがBLOBデータ型であるコレクションでSODAを使用できます。このようなコレクションを作成するには、コレクションの作成時に次のカスタム・メタデータを指定します。

{ "keyColumn" : { "name":"ID" }, 
  "contentColumn" : { "name" : "JSON_DOCUMENT", "sqlType" : "BLOB" }, 
  "versionColumn" : { "name" : "VERSION", "method" : "UUID" }, 
  "lastModifiedColumn" : { "name" : "LAST_MODIFIED" },
  "creationTimeColumn" : { "name" : "CREATED_ON" } }

関連トピック