トップ回答者
VC++2005MFCでAccess2000で作成したデータベースを操作する

質問
回答
-
私がmdbファイルを操作する際はODBCドライバを使用します。
簡単な手順
1.CRecordsetの派生クラスを作成する。
a.[プロジェクト]-[クラスの追加]-[MFC ODBC コンシューマ]を選択してMFC ODBC コンシューマ ウィザードを起動する。
b.データソースを選択する。なければ新規作成する(ドライバは[Microsoft Access Driver (*.mdb)]を選択する)。
c.データの操作を行うテーブルやクエリを選択する。
※データソースが作成されていないPCで作成したアプリを動作させたい場合、生成した派生クラスのGetDefaultConnect関数の戻り値を
_T("Driver={Microsoft Access Driver (*.mdb)};DBQ=hogehoge.mdb;UID=admin;UserCommitSync=Yes;")
に変更すると動作します。DBQはパスを含むmdbファイル名になります。2.生成したクラスを使用してテーブルにアクセスする。
CHogehogeRs rs;
try{
rs.Open();
// テーブルの参照,移動,追加,変更などを行う
rs.Close();
}
catch ( CDBException* e )
{
// エラー処理
}後はCRecordsetを参照してください。
- 回答としてマーク B_Wolf 2009年6月12日 5:00
すべての返信
-
私がmdbファイルを操作する際はODBCドライバを使用します。
簡単な手順
1.CRecordsetの派生クラスを作成する。
a.[プロジェクト]-[クラスの追加]-[MFC ODBC コンシューマ]を選択してMFC ODBC コンシューマ ウィザードを起動する。
b.データソースを選択する。なければ新規作成する(ドライバは[Microsoft Access Driver (*.mdb)]を選択する)。
c.データの操作を行うテーブルやクエリを選択する。
※データソースが作成されていないPCで作成したアプリを動作させたい場合、生成した派生クラスのGetDefaultConnect関数の戻り値を
_T("Driver={Microsoft Access Driver (*.mdb)};DBQ=hogehoge.mdb;UID=admin;UserCommitSync=Yes;")
に変更すると動作します。DBQはパスを含むmdbファイル名になります。2.生成したクラスを使用してテーブルにアクセスする。
CHogehogeRs rs;
try{
rs.Open();
// テーブルの参照,移動,追加,変更などを行う
rs.Close();
}
catch ( CDBException* e )
{
// エラー処理
}後はCRecordsetを参照してください。
- 回答としてマーク B_Wolf 2009年6月12日 5:00