有一档案表,字段(学号,姓名,性别,年龄,专业)
现用dgbrid显示此表相关信息
语句如下
procedure TForm1.Button1Click(Sender: TObject);
begin
with ADOQuery1 do
   begin
      close;
      sql.Clear;
      sql.Add('select * from 档案信息');
      open;
   end;
   ADOQuery1.Active:=true;
   if ADOQuery1.FieldByName('学号').Value=null then
      application.MessageBox('数据库中没有数据,请添加数据!','提示',64);
end;
已经成功实际查询
现想用存储过程实现同样的效果,其中存储过程如下CREATE PROCEDURE 档案查询 
AS 
declare @strsql varchar(8000)
begin 
select @strsql='select * from 档案信息'
end 请问delphi里应如何调用此过程并能达到同样的效果,谢谢

解决方案 »

  1.   

    with ADOProcedure do
      begin
      close;
      procedurename := '档案查询';
      open;
      end;
      

  2.   

    procedure TForm1.Button1Click(Sender: TObject);
    begin
    with ADOQuery1 do
      begin
      close;
      sql.Clear;
      sql.Add('select * from 档案信息');
      open;
      end;
      if ADOQuery1.recordcount <= 0 then
      application.MessageBox('数据库中没有数据,请添加数据!','提示',64);
    end;
    这样写比较好...
      

  3.   

    CREATE PROCEDURE 档案查询  
    AS  
    begin  
     select * from 档案信息
    end  //////////////////////////////sql.clear;
    sql.text:= 'exec dbo.档案查询';
    open;