CDaoWorkspace::RepairDatabase
更新 : 2007 年 11 月
Microsoft Jet データベース エンジンにアクセスする障害のあるデータベースの修復を試みます。
static void PASCAL RepairDatabase(
LPCTSTR lpszName
);
パラメータ
- lpszName
既存の Microsoft Jet エンジン データベース ファイルのパスとファイル名。パスを省略すると、現在のフォルダだけが検索されます。ネットワークで統一名前付け規約 (UNC) がサポートされているときは、"\\\\MYSERVER\\MYSHARE\\MYDIR\\MYDB.MDB" のように、ネットワーク パスも指定できます。"\" は C++ のエスケープ文字のため、パス文字列には 2 つの円記号が必要です。
解説
lpszName で指定されたデータベースは、修復の前に閉じる必要があります。マルチユーザー環境では、修復中にほかのユーザーが lpszName を開くことはできません。lpszName が閉じられていないか、排他的に使用ができない場合、エラーが発生します。
このメンバ関数は、不完全な書き込み操作により不正であるとしてマークされたデータベースの修復を試みます。障害は、Microsoft Jet データベース エンジンを使用しているアプリケーションが、電源やコンピュータ ハードウエアの問題などにより、予期しない状況で閉じられたときに発生することがあります。操作を完了し、Close メンバ関数を呼び出すか、通常の方法でアプリケーションを終了させた場合には、データベースが不正であるとしてマークされることはありません。
メモ : |
---|
データベースの修復後、ファイルのデフラグメント化と、ディスク スペースの修復のために、CompactDatabase メンバ関数を使用して、データベースを再構成することをお勧めします。 |
データベースの修復の詳細については、DAO ヘルプの「RepairDatabase Method」を参照してください。
必要条件
ヘッダー : afxdao.h