オープン・ソース言語サポート・ガイド
リリース18.1
F25666-03(原本部品番号:F24027-03)
2020年7月
このドキュメントでは、TimesTen In-Memory Databaseリリース18.1でのオープン・ソース言語のサポートについて説明します。このサポートは、TimesTen ClassicとTimesTen Scaleoutの両方に適用されます。現行リリースでは、サポートされている言語はPythonとNode.jsです。
このドキュメントでは次のトピックについて説明します。
オープン・ソース言語のサンプル・プログラムは、GitHubで入手可能です。入手可能なものの概要については、次の場所にあるREADME.md
を参照してください。
https://github.com/oracle/oracle-timesten-samples/tree/master/languages
各言語の詳細が示されている他のREADME.md
ファイルもあり、それらについてはこのドキュメント内で後述します。
この項では、TimesTenでサポートされているオープン・ソース言語(PythonおよびNode.js)の使用における、基本的な概念および初期の考慮事項について説明します。
この項には、次の項目が含まれます。
TimesTenでのオープン・ソース言語のサポートには、Oracle Database Programming Interface for C (ODPI-C)が使用されています。ODPI-Cは、オラクル社から提供されているオープン・ソース・ライブラリであり、様々なプログラミング言語からのOracleデータベースへのアクセスを簡略化することを目的としています。詳細は、https://oracle.github.io/odpi/
を参照してください。
言語ごとに1つのオープン・ソース・パッケージ、つまりドライバがあります。GitHubから入手可能であり、オラクル社によって保守されます。これらのパッケージを示す用語は言語によって異なります。たとえば、Pythonの場合は拡張モジュールであり、Node.jsの場合はアドオンです。対応するパッケージの詳細は、後述する各サポート対象言語の項を参照してください。ODPI-Cは、各言語のドライバをダウンロードすると、それに含まれています。
ODPI-Cは、Oracle Call Interface (このドキュメントではOCIと呼ばれていますが、Oracle Cloud Infrastructureと混同しないようにしてください)の最上位のレイヤーです。図1にそのアーキテクチャを示します。
オープン・ソース言語のプラットフォーム・サポートは、TimesTenでサポートされているプラットフォームまたはそれらのサブセットのみに限定されており、言語によって異なる場合があります。
TimesTenでは、PythonとNode.jsの両方について、Linux、macOSまたはWindowsからのクライアント/サーバー・アクセス、またはLinuxでの直接アクセスがサポートされています。
各言語のプラットフォーム・サポートの最新情報については、次の場所で、該当するREADME.md
ファイルを参照してください。
https://github.com/oracle/oracle-timesten-samples/tree/master/languages/python
または
https://github.com/oracle/oracle-timesten-samples/tree/master/languages/nodejs
サポートされている具体的なバージョンなど、TimesTenのプラットフォーム・サポートの詳細は、Oracle TimesTen In-Memory Databaseリリース・ノートの「プラットフォームと構成」参照してください。
ODPI-Cを介してオープン・ソース言語を使用しTimesTenデータベースにアクセスするには、TimesTenソフトウェアに付属しているOracle Instant Clientに含まれる特別なOCIクライアント・ライブラリを使用する必要があります。TimesTenとともに提供されるInstant Clientを使用する必要があるため、ライブラリ・パスを、TimesTen Instant Clientディレクトリ(installation_dir
/ttoracle_home/
instantclient_12_1
)がOracle Databaseライブラリへのパスより前にくるように設定する必要があります。そのパスは、TimesTenのインストールで説明されているようにTimesTenのttenv
スクリプト(ttenv.sh
またはttenv.csh
)を使用すると、適切に設定されます。
ODPI-CはOCIの最上位のレイヤーであるため、OCIに関するTimesTenの制限事項は、ODPI-Cにも適用されます。これらの制限事項は、Oracle TimesTen In-Memory Database C開発者ガイドのTimesTenの制限事項と相違点に記載されています。
また、次の機能はサポートされていません。
アプリケーション・コンティニュイティ
連続問合せ通知
コール・タイムアウト
セッション・タグ付け
起動と停止などのデータベース管理
この項では、TimesTenを設定するための次の処理について説明します。
まだTimesTenがない場合は、それをhttps://www.oracle.com/technetwork/database/database-technologies/timesten/downloads/index.htmlからダウンロードすることで入手できます
重要: オープン・ソース言語の完全なサポートには、TimesTenリリース18.1.4.1.0以上が必要です。 |
TimesTen ClassicとTimesTen Scaleoutの両方のために単一のZIPファイル配布が用意されていますが、それぞれの設定手順は次のように異なります。
TimesTen Classicの前提条件、環境設定およびインストールについては、Oracle TimesTen In-Memory Databaseインストレーション、移行およびアップグレード・ガイドの「TimesTen Classicでのインストール・プロセスの概要」および該当するインストールの章を参照してください。
インストールの章では、TimesTenインスタンスの作成方法についても説明します。
TimesTen Scaleoutの前提条件、環境設定およびインストールについては、Oracle TimesTen In-Memory Database Scaleoutユーザーズ・ガイドのTimesTen Scaleoutの前提条件およびインストールを参照してください。
このドキュメントのグリッドの設定には、初期管理インスタンスの作成に関する情報が含まれています。
TimesTenをインストールしてTimesTenインスタンスを作成した後、timesten_home
/bin
にある適切なttenv
スクリプト(ttenv.sh
またはttenv.csh
)を使用して環境の設定を完了します。
TimesTen Classicのデータベースの定義と管理については、Oracle TimesTen In-Memory Databaseオペレーション・ガイドのTimesTenデータベースの管理を参照してください。
TimesTen ScaleoutのTimesTenグリッドおよびデータベースの定義と管理については、Oracle TimesTen In-Memory Database Scaleoutユーザーズ・ガイドのメンバーシップ・サービスの設定、グリッドの設定およびデータベースの管理を参照してください。
TimesTenでのオープン・ソース言語のサポートはOCIを介して行われるため、PythonまたはNode.jsから、tnsnames
または簡易接続ネーミング・メソッドを使用してTimesTenに接続できます。これらの方法の詳細は、Oracle TimesTen In-Memory Database C開発者ガイドのOCIからのTimesTenデータベースへの接続を参照してください。
次のようなtnsnames.ora
エントリがあるとします。たとえば、データベースsampledb
に接続する場合です。次に、自分のコード内で、接続文字列でTNS名sampledbconn
を指定します。
sampledbconn =(DESCRIPTION=(CONNECT_DATA = (SERVICE_NAME = sampledb)(SERVER = timesten_direct)))
または、tnsnames.ora
を使用しないようにするために、myhost/sampledb:timesten_direct
などの簡易接続文字列を、自分のコード内で接続文字列として直接使用することもできます。
TimesTenへの直接接続の場合はtimesten_direct
、クライアント/サーバー接続の場合はtimesten_client
を使用します。
自分のコード内でのTNS名および簡易接続文字列の使用の例については、PythonでのTimesTenへの接続の構成およびNode.jsでのTimesTenへの接続の構成を参照してください。
TimesTenデータベースに接続するには、TimesTenデータベース・ユーザーが必要です。TimesTenでのユーザーの作成の詳細は、Oracle TimesTen In-Memory Database SQLリファレンスのCREATE USERを参照してください。
次の例では、パスワードをappuser
にしてTimesTen内部ユーザーappuser
を作成し、appuser
がデータベースへの接続時にユーザー・セッションを作成してからデータベース表を作成できるように、CREATE SESSION
権限とCREATE TABLE
権限を付与します。
CREATE USER appuser IDENTIFIED BY "appuser"; GRANT CREATE SESSION TO appuser; GRANT CREATE TABLE TO appuser;
Pythonは、オブジェクト指向プログラミングをサポートしている、堅牢な標準ライブラリを含む、解釈済の、高水準の汎用言語です。構文規則が単純であるため、Pythonコードは、簡単に解読することやサポートすることができます。
多くのプラットフォームには、Pythonがインストールされています。確認するには、コマンド・プロンプトで「python」と入力します。インストールされている場合は、応答にバージョン番号が含まれています。
https://www.python.orgで、Pythonに関する情報を検索してダウンロードできます
TimesTenでサポートされているPythonのバージョンの詳細は、https://github.com/oracle/oracle-timesten-samples/tree/master/languages/pythonにある
README.md
ファイルを参照してください
PythonアプリケーションからOracleまたはTimesTenデータベースにアクセスするためのPython拡張モジュールは、cx_Oracle
です。このモジュールは、PythonデータベースAPI 2.0の仕様に準拠しています。このモジュールに関する一般的な情報は、https://github.com/oracle/python-cx_Oracle
にあります。
TimesTenでサポートされているPython拡張モジュールのバージョンの詳細は、README.md
ファイルを参照してください。
この項の後半では、次の内容について説明します。
この項では、PythonをTimesTenで使用するための次の設定処理について説明します。
Python拡張モジュールをインストールするにはインターネット・アクセスが必要です。ファイアウォールの外部のインターネットにアクセスするために、プロキシ・サーバーを示すようにhttp_proxy
およびhttps_proxy
環境変数を設定する必要がある場合があります。
Python拡張モジュールをダウンロードする方法はいくつかあります。ご使用の設定と環境に最も適した方法を選択してください。
git clone
を使用して、GitHubからソース・ファイルをダウンロードします。これには、ご使用のシステムにgit
をインストールする必要があります。https://cx-oracle.readthedocs.io/en/latest/user_guide/installation.html#install-using-githubでその手順を参照してください
重要:
|
Python Pipパッケージ・マネージャを使用して、事前作成済のパッケージをダウンロードします。https://cx-oracle.readthedocs.io/en/latest/user_guide/installation.html#quick-start-cx-oracle-installation
でその手順を参照してください。また、必要に応じて、そのドキュメントのプラットフォーム固有の項を参照してください。
この方法では、事前作成済のバイナリが用意されていますが、必要に応じてソース・コードをダウンロードしコンパイルしてください。
重要: ソース・コードをコンパイルする必要がある場合は、パッケージpython[3]-devel をインストールしておく必要があります。 |
RPMなど、プラットフォーム固有のパッケージ・マネージャを使用して事前作成済バイナリをダウンロードします。
RPMパッケージ・マネージャは、yumなどのユーティリティを通じて使用できます。
cx_Oracle
RPMパッケージは、Oracle Linux yumサーバー(http://yum.oracle.com/
)から入手できます。この詳細は、https://cx-oracle.readthedocs.io/en/latest/user_guide/installation.html#installing-cx-oracle-rpms-on-oracle-linuxを参照してください
重要: この方法を使用する場合、正常にインストールするにはOracle Instant Clientが必要です。Instant Clientは、ご使用のシステムにまだない場合は提供されます。ただし、ランタイム操作には、オープン・ソース言語の要件で説明さているように、TimesTenに付属しているInstant Clientバージョンが必要です。 |
すべてのシナリオについての情報は、https://cx-oracle.readthedocs.io/en/latest/user_guide/installation.htmlにあります。
ノート: 3つすべてのケースで、ODPI-Cが含まれています。git clone の方法の場合は、ODPI-Cを含め、すべての依存関係が自動的にクローニングおよび構築されます。 |
Oracleのtnsnames.ora
を使用する方法、またはデータベースへの接続を設定するための簡単な接続メカニズムの詳細は、TimesTenの接続の構成を参照してください。
この例では、Python接続文字列にTNS名を使用します。
connection = cx_Oracle.connect("appuser", "appuser", "sampledbconn")
この例では、TimesTenへの直接接続を指定する簡易接続文字列を使用します。
connection = cx_Oracle.connect("appuser", "appuser", "myhost/sampledb:timesten_direct")
この項の内容は次のとおりです。
表1に、cx_Oracle
型(言語拡張モジュールを介して入手可能)とTimesTen SQL型とのマッピングを示します。
ノート: TimesTenでの暗黙的データ型変換により、追加のTimesTen SQL型をこれらのcx_Oracle 型にマップできます。Oracle TimesTen In-Memory Database SQLリファレンスのデータ型変換を参照してください。 |
現行リリースでのデータ型サポートの最新情報については、https://github.com/oracle/oracle-timesten-samples/tree/master/languages/python
でREADME.md
ファイルを参照してください。
表1 cx_Oracleの型マッピング
cx_Oracle型 | TimesTen型 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
次のことに注意してください。
エラー・メッセージが、同じ条件下でOracleによって生成されるメッセージとは若干異なる場合があります。
PythonのメソッドCursor.executemany()
については、TimesTenでは、batcherrors
オプションは無視されるためデフォルトのbatcherrors=false
設定のみがサポートされています。バッチ内のいずれかの行でエラーが発生した場合は、必ずエラーが返されます。(これに対して、Oracle Databaseではbatcherrors=true
がサポートされており、バッチ内のいずれかの行が成功すると必ず成功が返されます。)また、TimesTenデータベースに対して、1つのバッチ内で複数のエラーが発生した場合、TimesTenではエラーの順序付けは試行されませんが、Oracleデータベースに対して発生した場合にはそれらは順序付けられます。
この項では、Pythonの単純な例、およびTimesTen Pythonサンプル・アプリケーションのURLを示します。
この単純なサンプル・プログラムでは、TimesTenデータベースに接続し、employees
という表を作成し、その表に3つの行を挿入し、それらの行を選択して表示し、その表を削除し、データベースから切断します。
## ## simple.py ## from __future__ import print_function import cx_Oracle import AccessControl def run(): try: credentials = AccessControl.getCredentials("simple.py") connection = cx_Oracle.connect(credentials.user, credentials.password, credentials.connstr) cursor = connection.cursor() cursor.execute(""" CREATE TABLE employees(first_name VARCHAR2(20), last_name VARCHAR2(20))""") print("Table has been created") values = [["ROBERT", "ROBERTSON"], ["ANDY", "ANDREWS"], ["MICHAEL", "MICHAELSON"]] cursor.executemany("INSERT INTO employees VALUES (:1, :2)", values) print("Inserted ", len(values), "employees into the table") cursor.execute(""" SELECT first_name, last_name FROM employees""") for fname, lname in cursor: print("Selected employee:", fname, lname) cursor.execute("DROP TABLE employees") print("Table has been dropped") cursor.close() connection.close() print("Connection has been released") except Exception as e: # Something went wrong print("An error occurred", str(e)) run()
結果を次に示します。
% python3 simple.py -u username -p password Table has been created Inserted 3 employees into the table Selected employee: ROBERT ROBERTSON Selected employee: ANDY ANDREWS Selected employee: MICHAEL MICHAELSON Table has been dropped Connection has been released
cx_Oracle
を使用するPythonのTimesTenサンプル・プログラムは、https://github.com/oracle/oracle-timesten-samples/tree/master/languages/pythonで入手できます
詳細は、その場所にあるREADME.md
を参照してください。
Node.jsは、Webサーバーなどのスケーラブルなネットワーク・アプリケーションおよびツールを構築するために使用できる、オープン・ソースのJavascriptランタイム環境です。これには、ファイル・システムのI/O、ネットワーキング、データ・ストリームおよび暗号化などの基本機能を扱う、サーバー・アプリケーションの記述の複雑さを軽減するためのモジュールが含まれています。
https://nodejs.org
で、Node.jsに関する情報を検索してダウンロードできます。
TimesTenでサポートされているNode.jsのバージョンの詳細は、https://github.com/oracle/oracle-timesten-samples/tree/master/languages/nodejsにある
README.md
ファイルを参照してください
Node.jsインストールには、パッケージ・マネージャnpm
が含まれています。Node.jsアドオンに関する項で後述されているとおりに、これを使用してNode.jsアドオンをインストールします。
Node.jsアプリケーションからOracleまたはTimesTenデータベースにアクセスするためのNode.jsアドオンは、node-oracledb
です。このアドオンに関する一般情報は、https://oracle.github.io/node-oracledb/
にあります。
TimesTenでサポートされているNode.jsアドオンのバージョンの詳細は、README.md
ファイルを参照してください。
この項の後半では、次の内容について説明します。
この項では、Node.jsをTimesTenで使用するための次の設定処理について説明します。
Node.jsアドオンをインストールするにはインターネット・アクセスが必要です。ファイアウォールの外部のインターネットにアクセスするために、プロキシ・サーバーを示すようにhttp_proxy
およびhttps_proxy
環境変数を設定する必要がある場合があります。
Node.jsアドオンをダウンロードする方法はいくつかあります。ご使用の設定と環境に最も適した方法を選択してください。
git clone
を使用してGitHubからソース・ファイルをダウンロードし(ご使用のシステムにgit
をインストールする必要がある)、NPMパッケージ・マネージャを使用してドライバをインストールします。
node-oracledb
は、GitHubからソース・ファイルをダウンロードしてインストールできます。Node.jsをダウンロードし展開した後は、Node.jsのbin
ディレクトリにあるNPMパッケージ・マネージャを使用して、事前作成済のnode-oracledb
バイナリをインストールすることもできます。(自分のパスにNode.jsのbin
ディレクトリを追加する)。
https://oracle.github.io/node-oracledb/INSTALL.html#-3-node-oracledb-installation-instructions
の「GitHubからのソース・コード」にあるインストールの手順を参照してください。
NPMパッケージ・マネージャを使用して、事前作成済のパッケージをダウンロードします。
インストールの手順を参照してください。
この方法では、事前作成済のバイナリのみが用意されています。事前作成済のバイナリを使用できない場合は、ソース・コードをコンパイルする必要があります。これを行うには、Oracle Instant Clientがインストールされている必要があります。これは、TimesTenに付属しているもので十分です。
RPMなど、プラットフォーム固有のパッケージ・マネージャを使用して事前作成済バイナリをダウンロードします。
node-oracledb
RPMパッケージは、Oracle Linux yumサーバー(http://yum.oracle.com/
)から入手できます。
インストールの手順を参照してください。
重要: この方法を使用する場合、正常にインストールするにはOracle Instant Clientが必要です。Instant Clientは、ご使用のシステムにまだない場合は提供されます。ただし、ランタイム操作には、オープン・ソース言語の要件で説明さているように、TimesTenに付属しているInstant Clientバージョンが必要です。 |
すべてのシナリオについての情報は、https://oracle.github.io/node-oracledb/INSTALL.html
にあります。
注意: 3つすべてのケースで、ODPI-Cが含まれています。git clone の方法の場合は、ODPI-Cを含め、すべての依存関係が自動的にクローニングおよび構築されます。 |
Oracleのtnsnames.ora
を使用する方法、またはデータベースへの接続を設定するための簡単な接続メカニズムの詳細は、TimesTenの接続の構成を参照してください。
この例では、Node.js接続文字列にTNS名を使用します。
// Get connection function connect(cb) { oracledb.getConnection({ user : "appuser", password : "appuser", connectString : "sampledbconn" } , cb); }
この例では、TimesTenへの直接接続を指定する簡易接続文字列を使用します。
// Get connection function connect(cb) { oracledb.getConnection({ user : "appuser", password : "appuser", connectString : "myhost/sampledb:timesten_direct" } , cb); }
この項の内容は次のとおりです。
表2に、言語アドオンを介して入手できるnode-oracledb
型とTimesTen SQL型とのマッピングを示します。
注意: TimesTenでの暗黙的データ型変換により、追加のTimesTen SQL型をこれらのOracle Databaseの型とnode-oracledb 別名の型にマップできます。Oracle TimesTen In-Memory Database SQLリファレンスのデータ型変換を参照してください。 |
現行リリースでのデータ型サポートの最新情報については、https://github.com/oracle/oracle-timesten-samples/tree/master/languages/nodejs
でREADME.md
ファイルを参照してください
表2 node-oracledbの型マッピング
Node.jsの型 | Oracle Databaseの型 | node-oracledb別名の型 | TimesTen型 |
---|---|---|---|
|
|
該当なし |
|
|
|
該当なし |
|
|
|
|
|
|
|
該当なし |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
該当なし |
|
|
|
該当なし |
|
|
|
|
|
|
|
|
|
|
|
該当なし |
|
|
|
|
|
|
|
該当なし |
|
|
|
該当なし |
|
|
|
|
|
次のことに注意してください。
エラー・メッセージが、同じ条件下でOracleによって生成されるメッセージとは若干異なる場合があります。
Node.jsのメソッドconnection.executeMany()
については、TimesTenでは、batcherrors
オプションは無視されるためデフォルトのbatcherrors=false
設定のみがサポートされています。バッチ内のいずれかの行でエラーが発生した場合は、必ずエラーが返されます。(これに対して、Oracle Databaseではbatcherrors=true
がサポートされており、バッチ内のいずれかの行が成功すると必ず成功が返されます。)また、TimesTenデータベースに対して、1つのバッチ内で複数のエラーが発生した場合、TimesTenではエラーの順序付けは試行されませんが、Oracleデータベースに対して発生した場合にはそれらは順序付けられます。
この項では、Node.jsの単純な例、およびTimesTen Node.jsサンプル・アプリケーションのURLを示します。
この単純なサンプル・プログラムでは、TimesTenデータベースに接続し、employees
という表を作成し、その表に3つの行を挿入し、それらの行を選択して表示し、その表を削除し、データベースから切断します。
// // simple.js // var oracledb = require('oracledb'); var accessControl = require('./AccessControl'); async function run() { let connection; try { let credentials = accessControl.getCredentials("simple.js"); connection = await oracledb.getConnection({ user: credentials['-u'], password: credentials['-p'], connectString: credentials['-c'] }); let result; await connection.execute("CREATE TABLE employees(first_name VARCHAR2(20), last_name VARCHAR2(20))"); console.log("Table has been created"); const values = [["ROBERT", "ROBERTSON"], ["ANDY", "ANDREWS"], ["MICHAEL", "MICHAELSON"]]; await connection.executeMany("INSERT INTO employees VALUES(:1, :2)", values); console.log("Inserted", values.length, "employees into the table"); result = await connection.execute("SELECT first_name, last_name FROM employees"); result.rows.forEach(function(row){ console.log("Selected employee:", row[0], row[1]); }); await connection.execute("DROP TABLE employees"); console.log("Table has been dropped"); } catch (err) { console.log(err); } finally { if (connection) { try { connection.close(); console.log("Connection has been released"); } catch (err) { console.log(err); } } } } run();
結果を次に示します。
% node simple.js -u username -p password Table has been created Inserted 3 employees into the table Selected employee: ROBERT ROBERTSON Selected employee: ANDY ANDREWS Selected employee: MICHAEL MICHAELSON Table has been dropped Connection has been released
node-oracledb
を使用するNode.jsのTimesTenサンプル・プログラムは、https://github.com/oracle/oracle-timesten-samples/tree/master/languages/nodejsで入手できます
詳細は、その場所にあるREADME.md
を参照してください。
Oracleのアクセシビリティについての詳細情報は、Oracle Accessibility ProgramのWeb サイトhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc
を参照してください。
Oracleサポートへのアクセス
サポートをご購入のOracleのお客様は、My Oracle Supportにアクセスして電子サポートを受けることができます。詳細情報はhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=info
か、聴覚に障害のあるお客様はhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs
を参照してください。
Oracle TimesTen In-Memory Databaseオープン・ソース言語サポート・ガイド, リリース18.1
F25666-03
Copyright © 2019, 2020, Oracle and/or its affiliates.
このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。
ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクル社までご連絡ください。
このソフトウェアまたは関連ドキュメントを、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供する場合は、次の通知が適用されます。
U.S. GOVERNMENT END USERS: Oracle programs (including any operating system, integrated software, any programs embedded, installed or activated on delivered hardware, and modifications of such programs) and Oracle computer documentation or other Oracle data delivered to or accessed by U.S. Government end users are "commercial computer software" or "commercial computer software documentation" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.そのようなものとして、i)オラクル社のプログラム(オペレーティング・システム、統合ソフトウェア、提供されたハードウェアに対して組み込まれたか、インストールされたか、アクティブ化されたプログラム、およびそのようなプログラムの変更版など)、ii)オラクル社によるコンピュータ・ドキュメントまたはiii)その他のOracleデータ(またはそれらすべて)の使用、模造、複製、リリース、表示、開示、変更、派生物の準備、または改作(またはそれらすべて)は、適用可能な契約に含まれているライセンスで指定された、権利および制限の対象となります。The terms governing the U.S. Government’s use of Oracle cloud services are defined by the applicable contract for such services.No other rights are granted to the U.S. Government.
このソフトウェアまたはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアもしくはハードウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用する際、安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、オラクル社およびその関連会社は一切の責任を負いかねます。
OracleおよびJavaはOracle Corporationおよびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。
Intel、Intel Insideは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Epyc、AMDロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXはThe Open Groupの登録商標です。
このソフトウェアまたはハードウェア、そしてドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。オラクル社との間で該当する取決めにて別途規定しないかぎり、オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。オラクル社との間で該当する取決めにて別途規定する場合を除き、オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても、一切の責任を負いかねます。