ForNext
Only Do What Only You Can Do
11. 検索する (Seek)
VBScript
JScript
Perl
PHP
Python
Ruby
PowerShell
Scala
F#
C
C++
C++Builder
更新日 : 2006.07.15
void __fastcall TForm1::Button11Click(TObject *Sender) { //表示用コントロールをクリア ListBox1->Items->Clear(); ListBox2->Items->Clear(); ListBox3->Items->Clear(); //データベースを開く (排他モード = false, 読み込み専用 = true) Variant de = Variant::CreateObject("DAO.DBEngine.36"); Variant db = de.Exec(Function("OpenDatabase") << "e:\\test.mdb" << false << true); //テーブルを開く const int dbOpenTable = 1; Variant rs = db.Exec(Function("OpenRecordset") << "M_商品" << dbOpenTable); //インデックスを指定 rs.Exec(PropertySet("Index") << "PK_商品"); rs.Exec(Procedure("Seek") << "=" << Edit1->Text); if (!rs.Exec(PropertyGet("NoMatch"))) { //表示用コントロールに項目内容をセット Variant fd = rs.Exec(PropertyGet("Fields") << "商品CD"); ListBox1->Items->Add(fd.Exec(PropertyGet("Value"))); fd = rs.Exec(PropertyGet("Fields") << "商品名"); if (VarIsNull(fd.Exec(PropertyGet("Value")))) ListBox2->Items->Add(""); else ListBox2->Items->Add(fd.Exec(PropertyGet("Value"))); fd = rs.Exec(PropertyGet("Fields") << "ふりがな"); if (VarIsNull(fd.Exec(PropertyGet("Value")))) ListBox3->Items->Add(""); else ListBox3->Items->Add(fd.Exec(PropertyGet("Value"))); rs.Exec(Function("MoveNext")); } //テーブルを閉じる rs.Exec(Procedure("Close")); //データベースを閉じる db.Exec(Procedure("Close")); }
VC++
C#
Java
Objective-C
D
VB
更新日 : 2006.07.15
Private Sub Command11_Click() '表示用コントロールをクリア List1.Clear List2.Clear List3.Clear 'データベースを開く (排他モード = False, 読み込み専用 = True) Dim db As Database Set db = DBEngine.OpenDatabase("e:\test.mdb", False, True) 'テーブルを開く Dim rs As Recordset Set rs = db.OpenRecordset("M_商品", dbOpenTable) 'インデックスを指定 rs.Index = "PK_商品" rs.Seek "=", Text1.Text If Not rs.NoMatch Then '表示用コントロールに項目内容をセット List1.AddItem rs("商品CD") List2.AddItem rs("商品名") & "" List3.AddItem rs("ふりがな") & "" End If 'テーブルを閉じる rs.Close 'データベースを閉じる db.Close End Sub
VB.NET
Delphi
更新日 : 2006.07.15
procedure TForm1.Button11Click(Sender: TObject); var de:Variant;//DBEngine db:Variant;//Database rs:Variant;//Recordset const dbOpenTable:Integer = 1; begin //表示用コントロールをクリア ListBox1.Items.Clear; ListBox2.Items.Clear; ListBox3.Items.Clear; //データベースを開く (排他モード = false, 読み込み専用 = true) de := CreateOleObject('DAO.DBEngine.36'); db := de.OpenDatabase('e:\test.mdb', false, true); //テーブルを開く rs := db.OpenRecordset('M_商品', dbOpenTable); //インデックスを指定 rs.Index := 'PK_商品'; rs.Seek('=', Edit1.Text); if not rs.NoMatch then begin //表示用コントロールに項目内容をセット ListBox1.Items.Add(rs.Fields['商品CD'].Value); if VarIsNull(rs.Fields['商品名'].Value) then ListBox2.Items.Add('') else ListBox2.Items.Add(rs.Fields['商品名'].Value); if VarIsNull(rs.Fields['ふりがな'].Value) then ListBox3.Items.Add('') else ListBox3.Items.Add(rs.Fields['ふりがな'].Value); end; //テーブルを閉じる rs.Close; //データベースを閉じる db.Close; end;