ヘッダーをスキップ
Oracle TimesTen In-Memory Databaseトラブルシューティング・プロシージャ・ガイド
リリース7.0
E05173-02
  目次へ
目次
索引へ
索引

前へ
前へ
次へ
次へ
 

作成済の表がアプリケーションで見つからない

この項では、データ・ストアに作成済の表、索引、順序、ビューがアプリケーションで見つからないときに確認する事項を説明します。

考えられる原因
対処
所有者を指定していないか、間違って指定している
TimesTenデータ・ストアのアクセス制御が有効になっているが、表に対するSELECT権限がユーザーにない
データ・ストアが一時的である
Overwrite属性が有効になっている
DSNに指定したパス名が相対的である

オブジェクトの所有者を指定する

表、索引および順序は、「PARTS」のような単独の名前、または「STAN.PARTS」のような所有者と表名が組み合された修飾名で作成できます。表または索引にアクセスする際に所有者を指定しないと、TimesTenでは、まず所有者はユーザーのログインID(UIDの値)であるとみなされます。TimesTenがユーザーのログインIDを使用して表または索引を検出できない場合は、次に所有者はユーザーSYSであるとみなされます。

別のユーザーとしてアプリケーションでデータ・ストアに接続し、オブジェクトを共有する必要がある場合は、オブジェクトの作成時や参照時に所有者を明示的に指定します。

表へのアクセスに必要なアクセス制御権限を確認する

データ・ストアのアクセス制御が有効な場合は、ttUserPrivilegesプロシージャを使用して表に対するSELECT権限があるかどうかを確認します。表に対するSELECT権限がない場合は、管理者から、GRANT文を使用して権限を付与される必要があります。

Temporary DSN属性を確認する

一時データ・ストア(DSN属性: Temporary=1)は、データ・ストアとの接続がすべて削除されるまで存続します。一時データ・ストアの表にアクセスしようとしたときに、その表が存在しない場合、その表が存在したデータ・ストアは削除されてしまっている可能性があります。

Overwrite DSN属性を確認する

DSN属性のOverwriteおよびAutoCreateが有効な場合にすでにデータ・ストアが存在していると、TimesTenはそのデータ・ストアを削除して、新しいデータ・ストアを作成します。古いデータ・ストアで作成された表は削除されます。

データ・ストアのパス名を確認する

特定のDSNに接続する場合に、常に同じデータ・ストアにアクセスするようにするには、データ・ストアの相対パス名ではなく、絶対パス名を使用します。たとえば、demoデータ・ストアがdatastoreディレクトリにある場合は、次のように指定します。

DataStore=/datastore/demo

次のようには指定しません。

DataStore=demo

後者の場合、データ・ストアのパス名はアプリケーションが起動されたディレクトリに対する相対パスです。表を検索できず、またデータ・ストアの相対パス名を使用している場合は、その表が存在するデータ・ストアは存在せず、データ・ストア(チェックポイントおよびログ)・ファイルは、アクセスしているディレクトリとは別のディレクトリに存在する可能性があります。

詳細は、『Oracle TimesTen In-Memory Databaseオペレーション・ガイド』のデータ・ストアのパス名の指定に関する説明を参照してください。