본문 바로가기

컴터/delphi

DB 검색하기..

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

unit test2;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, DBCtrls, Grids, DBGrids, DB, DBTables, StdCtrls;

type
  TForm1 = class(TForm)
    Query1: TQuery;
    DataSource1: TDataSource;
    DBGrid1: TDBGrid;
    DBNavigator1: TDBNavigator;
    Edit1: TEdit;
    Button1: TButton;
    Edit2: TEdit;
    procedure Button1Click(Sender: TObject);
    procedure Edit1KeyPress(Sender: TObject; var Key: Char);
    procedure Edit1Enter(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  Query1.Close;

  Query1.SQL.Clear;
  Query1.SQL.Add('select * from biolife');
  Query1.SQL.Add('where category like ''' + Edit1.Text + '%''');
 
  { 이렇게 해도 됩니다.
   Query1.SQL.Text:=
   'Select * from biolife ' +
   ' where Category like ''' + Edit1.Text + '%''';
  }
  Query1.Open;
end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
  if Key = #13 then begin
     Key:=#0; ///엔터키를 다른키로 바꿈.(띵띵 소리가 나오지 않게 하기 위해
     Button1Click(nil);///sender (보내는값)이없다.null 과 같음.
  end;
end;

procedure TForm1.Edit1Enter(Sender: TObject);
begin
  Edit1.SelectAll;////엔터들어 왔을때 블럭 지정케 ..근데 안해도 되네요..
end;

end.