我有个问题,请各位指教一下?我要怎么做。请一步步指教(初学者)(10分)

  • 主题发起人 主题发起人 linlky
  • 开始时间 开始时间
L

linlky

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure TForm1.B_appeClick(Sender: TObject);
begin
With Add_Q do
begin
Close;
SQL.Clear;
SQL.Add('Select * From User_pass');
SQL.Add('Where User_pass.ID="'+lid.Text+'"');
Execsql;
User_Table1.Refresh;
end;
With User_Table1 do
begin
Open;
Refresh;
end;

我用的是DBGRID控件。但是我用了 SQL.Add('Select * From User_pass');
SQL.Add('Where User_pass.ID="'+lid.Text+'"');
但是在DBGRID里面没动静。按我想的来说,应该过滤出満足lid.Text里的内容呀!
可是就是没变呀。好像什么也没执行一样。
我要怎么做?才能満足lid.Text里的内容显示在DBGRID里呀?
请各位帮助一下OK?
我用的是ADO中的Add_Q。但是DBGRID不能和Add_Q(ADOQuery1)连接。。。
Datasouce属性里没有呀?我要怎么办?这个语言不能执行呀?
 
添加一个Tdatasource就可以了,将Tdatasource的Dataset设为Add_Q,将Dbgrid的datasource
设为Tdatasource.
begin
With Add_Q do
begin
Close;
SQL.Clear;
SQL.Add('Select * From User_pass');
SQL.Add('Where User_pass.ID="'+lid.Text+'"');
Execsql;
end;
 
1、楼上所说的。
2、将 ExecSQL 改为 Open;
 
是,楼上的对,这样的问题应该先看书上的例子,做上一两个例子,就解决了
 
对于要返回数据集的SQL用OPEN;
对于INSERT,UPDATE,DELETE等不返回数据集的SQL用ExecSQL
 
于要返回数据集的SQL用OPEN,如 select
对于INSERT,UPDATE,DELETE等不返回数据集的SQL用ExecSQL
 
后退
顶部