home > OLE オートメーション > ADO >

ForNext

Only Do What Only You Can Do

14. 選択クエリー (Command.Execute)

VBScript

JScript

Perl

PHP

Python

Ruby

PowerShell

Scala

F#

C

C++

C++Builder

更新日 : 2005.12.13
void __fastcall TForm1::Button25Click(TObject *Sender)
{
    const int adOpenDynamic         =  2;
    const int adOpenForwardOnly     =  0;
    const int adOpenKeyset          =  1;
    const int adOpenStatic          =  3;
    const int adOpenUnspecified     = -1;

    const int adLockBatchOptimistic =  4;
    const int adLockOptimistic      =  3;
    const int adLockPessimistic     =  2;
    const int adLockReadOnly        =  1;
    const int adLockUnspecified     = -1;

    //表示用コントロールをクリア
    ListBox1->Items->Clear();
    ListBox2->Items->Clear();

    Variant cn = Variant::CreateObject("ADODB.Connection");

    //Edit3 に mdbファイル名を入力
    cn.Exec(PropertySet("ConnectionString")<<"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Edit3->Text + ";");
    cn.Exec(Procedure("Open"));

    //Edit4 に テーブル名を入力
    //Edit5, Edit6 に フィールド名を入力
    //Edit1 に Key値を入力
    AnsiString sql = "SELECT * FROM " + Edit4->Text + " "
                   + "WHERE "  + Edit5->Text + " = " + Edit1->Text;

    Variant cmd = Variant::CreateObject("ADODB.Command");
    cmd.Exec(PropertySet("ActiveConnection")<<cn);
    cmd.Exec(PropertySet("CommandText")<<sql);

    Variant rs = cmd.Exec(Function("Execute"));
    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"));

    cn.Exec(Procedure("Close"));
}

VC++

C#

Java

Objective-C

D

VB

VB.NET

Delphi

更新日 : 2005.12.13
procedure TForm1.Button24Click(Sender: TObject);
var
    cnn:Variant;//Connection
    cmd:Variant;//Command
    rs :Variant;//Recordset
    sql:string; //Recordset
begin
    //表示用コントロールをクリア
    ListBox1.Items.Clear;
    ListBox2.Items.Clear;

    cnn := CreateOleObject('ADODB.Connection');

    //Edit3 に mdbファイル名を入力
    cnn.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' + Edit3.Text + ';';
    cnn.Open;

    //Edit4 に テーブル名を入力
    sql := 'SELECT * FROM ' + Edit4.Text;
    cmd := CreateOleObject('ADODB.Command');
    cmd.ActiveConnection := cnn;
    cmd.CommandText      := sql;

    rs  := cmd.Execute;
    while not rs.EOF do
    begin
        //表示用コントロールに項目内容をセット
        ListBox1.Items.Add(rs.Fields[0].Value);
        ListBox2.Items.Add(rs.Fields[1].Value);

        rs.MoveNext;
    end;
    rs.Close;

    cnn.Close;
end;

Ada

PL/SQL

T-SQL

関数型

inserted by FC2 system