C++Builder Personal で DAO

レコード一覧を取得する


void __fastcall TForm1::Button4Click(TObject *Sender)
{
//表示用コントロールをクリア
ListBox1->Items->Clear();
ListBox2->Items->Clear();

Variant de = Variant::CreateObject("DAO.DBEngine.36");

//Edit3 に mdbファイル名を入力
Variant db = de.Exec(Function("OpenDatabase")<<Edit3->Text<<false<<false);

//Edit4 に テーブル名を入力
const int dbOpenTable = 1;
Variant rs = db.Exec(Function("OpenRecordset")<<Edit4->Text<<dbOpenTable);

//Edit7 に インデックス名を入力
rs.Exec(PropertySet("Index")<<Edit7->Text);
rs.Exec(Procedure("Seek")<<">"<<"");

while (!rs.Exec(PropertyGet("EOF")))
{
//表示用コントロールに項目内容をセット
Variant fd = rs.Exec(PropertyGet("Fields")<<0);
ListBox1->Items->Add(fd.Exec(PropertyGet("Value")));

fd = rs.Exec(PropertyGet("Fields")<<1);
ListBox2->Items->Add(fd.Exec(PropertyGet("Value")));

rs.Exec(Function("MoveNext"));
}

rs.Exec(Procedure("Close"));
db.Exec(Procedure("Close"));
}