TimesTen接続の管理

この項では、データベースへの接続方法について説明します。

データベースの接続属性の設定

この項では、初期接続属性の設定など、TimesTenデータベースの設定に関する情報について説明します。

TimesTen Classicについては、『Oracle TimesTen In-Memory Databaseオペレーション・ガイド』にデータベースのDSN (データソース名)の作成に関する情報が記載されています。DSNは、TimesTenデータベースとデータベースへの接続に使用される接続属性のセットを識別する論理名です。作成するDSNのタイプは、アプリケーションがデータベースに直接接続するか、クライアント接続するかによって異なります。データベースに直接接続する場合は、TimesTenデータベースの管理を参照してください。データベースへのクライアント接続を作成する場合は、TimesTenクライアントおよびサーバーの操作を参照してください。

TimesTen Scaleoutについては、『Oracle TimesTen In-Memory Database Scaleoutユーザーズ・ガイド』にデータベースの作成、接続属性の設定およびデータベースへの接続、直接接続またはクライアント/サーバー接続のどちらかの使用に関する情報が記載されています。データベースの作成およびデータベースへの接続を参照してください。

ノート:

TimesTen接続は、親プロセスから継承できません。子プロセスの作成前に(分岐)プロセスでデータベース接続が開かれた場合、子ではその接続を使用しないようにする必要があります。

接続および切断

XYZConnectionクラスに基づいて、TimesTenに接続および切断できます。

TTCmd、TTConnectionおよびTTConnectionPoolの使用を参照してください。

次に例を示します。

  ...

  XYZConnection conn;
  char connStr[256];
  char user[30];
  char pwd[30];
 
  ...
 
  try {
    conn.Connect(connStr, user, pwd);
  }
  catch (TTWarning st) {
    cerr << "Warning connecting to TimesTen: " << st << endl;
  }
  catch (TTError st) {
    cerr << "Error connecting to TimesTen " << st << endl;
    exit(1);
  }

// ... Work with the database connection...

  try {
    conn.Disconnect();
  }
  catch (TTStatus st) {
    cerr << "Error disconnecting from TimesTen: " << st << endl;
    exit(1);
  }

接続メソッド

TTConnectionTTConnectionPoolおよびTTXlaPersistConnectionクラスにはメソッド・シグネチャがあります。

virtual void 
TTConnection::Connect(const char* connStr)
 
virtual void
TTConnection::Connect(const char* connStr, const char* username, 
                      const char* password)
 
virtual void
TTConnection::Connect(const char* connStr, 
                      DRIVER_COMPLETION_ENUM driverCompletion)

void 
TTConnectionPool::ConnectAll(const char* connStr)

void
TTConnectionPool::ConnectAll(const char* connStr, const char* username, 
                             const char* password)
 
virtual void
TTXlaPersistConnection::Connect(const char* connStr, const char* username, 
                                const char* password, const char* bookmarkStr, 
                                bool createBookmarkFlag)
 
virtual void
TTXlaPersistConnection::Connect(const char* connStr, 
                                DRIVER_COMPLETION_ENUM driverCompletion, 
                                const char * bookmarkStr, bool createBookmarkFlag)
 
virtual void
TTXlaPersistConnection::Connect(const char* connStr, const char* username, 
                                const char* password, const char* bookmarkStr)

virtual void
TTXlaPersistConnection::Connect(const char* connStr, 
                                DRIVER_COMPLETION_ENUM driverCompletion, 
                                const char * bookmarkStr)

ノート:

  • 接続文字列(connStr値)では、"DSN=testdb;uid=brian;pwd=password"のようにユーザー名とパスワードを指定できます。接続文字列、ユーザー名およびパスワードを引数として取るシグネチャについては、そのユーザー名とパスワード引数は接続文字列で指定されたユーザー名またはパスワードよりも優先されることに注意してください。

  • DRIVER_COMPLETION_ENUMの値の詳細は、TTConnectionリファレンスを参照してください。