Distributed Tuning Interface のリファレンス : PvCheckDbInfo()
 
このページをシェアする                  
PvCheckDbInfo()
データベースの整合性をチェックします。
ヘッダー ファイル:catalog.h(ヘッダー ファイルも参照)
関数が最初に利用可能になるライブラリ:w3dbav75.dll(Windows)、libpsqldti.so(Linux)、libpsqldti.dylib(OS X)(リンク ライブラリも参照)
構文
BTI_API PvCheckDbInfo(
BTI_LONG hConnection,
BTI_CHAR_PTR dbName,
BTI_ULONG checkFlags);
引数
In
hConnection
サーバーを識別する接続ハンドル。接続ハンドルは PvConnectServer()関数によって取得されます。
In
dbName
既存の名前付きデータベース名。特定サーバーの名前付きデータベースの全リストは、PvGetDbNamesData()関数を使って取得できます。結果リストから 1 つの名前付きデータベースを取得するには、PvGetDbName()関数を使用します。
In
checkFlags
予約済み関数はすべてのデータベース フラグをチェックします。
戻り値
P_OK
操作は成功しました。
P_E_INVALID_HANDLE
サーバーを識別する接続ハンドルが無効です。
P_E_NULL_PTR
関数はヌル ポインターによって呼び出されました。
P_E_ACCESS_RIGHT
関数を呼び出すのに十分なアクセス権がありません。
P_E_NOT_EXIST
dbName で指定された名前付きデータベースは存在しません。
P_E_FAIL
一般エラーが発生しました。
備考
データベースに一貫性がある場合、この関数の戻り値は P_OK になります。データベースに一貫性がない場合、または関数呼び出しが失敗した場合、戻り値は上に挙げたエラー コードのいずれかになります。
BTI_WORD res; // 関数呼び出しから返される値
BTI_CHAR_PTR dbName; // データベース名
BTI_ULONG checkFlags; // データベース フラグ
BTI_LONG hConnection; // 接続ハンドル
BTI_LONG reserved;
// PvStart() および PvStop() 用に予約されている値
 
// 変数を初期化する
dbName = "demodata";
// データベースの名前は「demodata」
checkFlags = 0xFFFFFFFF; // すべてのフラグをチェックする
hConnection = P_LOCAL_DB_CONNECTION;
// 接続ハンドルをローカル接続に設定する
 
// P_LOCAL_DB_CONNECTION は config.h に定義されている
reserved = 0;
 
// DTI 呼び出しを実行する前に、DTI セッションを開始する
res = PvStart (reserved);
 
if (res == P_OK)
{
// DTI セッションは正常に開始されました
// これで、さまざまな DTI 呼び出しを実行できます
 
res = PvCheckDbInfo (hConnection,
dbName,
checkFlags);
 
if (res == P_OK)
{
// データベースは整合しています
}
else
{
// ここに、PvCheckDbInfo() から返されたエラー コード
// を処理するコードを記述します
}
// DTI セッションを閉じる
Res = PvStop (&reserved);
}
関連項目
PvStart()
PvConnectServer()
PvGetDbNamesData()
PvGetDbName()
PvFreeDbNamesData()
PvDisconnect()
PvStop()