关闭

delphi query下的sql动态查询

标签: delphi动态查询sqlquery变量
471人阅读 评论(0) 收藏 举报
分类:

delphi query下的sql动态查询

效果图
效果图
设计视图
设计视图
所需控件:
1. Query(数据集控件)
2. Datasource(数据访问控件)
3. DBGrid (数据浏览控件)
Query->Datadource->DBGrid

代码如下

procedure TForm1.Button2Click(Sender: TObject);
begin
  if combobox1.text = ''
  then showmessage('查询条件为空!')
  else
    begin
       case combobox1.ItemIndex of
       0: begin
           query1.Close;
           query1.SQL.Clear;
           query1.SQL.Add('select * from students where Sno=:sno');
           query1.ParamByName('sno').AsString:=Edit1.Text;
           query1.Open;
       end;
       1: begin
           query1.Close;
           query1.SQL.Clear;
           query1.SQL.Add('select * from Students where Sname=:sname' ); query1.ParamByName('sname').AsString:=Edit1.Text;
           query1.Open;
       end;
       2: begin
           query1.Close;
           query1.SQL.Clear;
           query1.SQL.Add('select * from Students where Speciality=:speciality' ); query1.ParamByName('speciality').AsString:=Edit1.Text;
           query1.Open;
       end;
       3: begin
           query1.Close;
           query1.SQL.Clear;
           query1.SQL.Add('select * from Students where Enrollyear=:enrollyear' );         query1.ParamByName('enrollyear').AsString:=Edit1.Text;
           query1.Open;
       end;
       4: begin
           query1.Close;
           query1.SQL.Clear;
           query1.SQL.Add('select * from Students where Birthday=:birthday' );         query1.ParamByName('birthday').AsDatetime:=strtodatetime(Edit1.Text);
           query1.Open;
       end;
    end;
end;

delphi通过:name的方式来标识变量name
然后就可以用 query1.ParamByName(‘enrollyear’).AsString:=Edit1.Text;方法给变量赋值

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:11043次
    • 积分:390
    • 等级:
    • 排名:千里之外
    • 原创:23篇
    • 转载:19篇
    • 译文:0篇
    • 评论:4条
    文章分类
    最新评论