var
TmpQry:TQuery;
begin
TmpQry:=TQuery.Create(nil);
TmpQry.sql.add('select @@servername');
TmpQry.ExecSQL;
ServerEdit.Text:=TmpQry.Fields[0].AsString;
end;

解决方案 »

  1.   

    错在:
    TmpQry.ExecSQL;
    因为select语句是有返回值的,而ExecSQL是用于Update、delete、insert等不需要返回值的SQL语句;
    所以,你应该改成:
    TmpQry.Open
      

  2.   

    TmpQry:=TQuery.Create(self);
    TmpQry.Close;
    TmpQry.sql.add('select @@servername');
    TmpQry.ExecSQL;
    ServerEdit.Text:=TmpQry.Fields[0].AsString;
      

  3.   

    TmpQry:=TQuery.Create(self);
    TmpQry.Close;
    TmpQry.sql.add('select @@servername');
    TmpQry.Open;
    ServerEdit.Text:=TmpQry.Fields[0].AsString;
      

  4.   

    敢问楼上各位:
    'select @@servername'是什么意思?
      

  5.   

    TmpQry.ExecSQL;
    改成:TmpQry.Open;
    'select @@servername' 是返回MS-SQL的服务器名
      

  6.   

    'select @@servername'你的这个是什么意思啊我看语句错了吧