各位大哥:
     小弟遇到了个郁闷的问题
function TLoginForm.GetUserLevel(OPERATOR_NAME:string):string;
 begin    dmDataSource.qrySQLCommand.Close ;
  dmDataSource.qrySQLCommand.SQL.Clear;
  dmDataSource.qrySQLCommand.SQL.Add('select * from Operator_TABLE where OPERATOR_NAME='+''''+cboUserName.Text+'''');
   dmDataSource.qrySQLCommand.Open;
  result:=dmDataSource.qrySQLCommand.ParamByName('DESCRIPTION').AsString ;
 end;
系统返回qrySQLCommand:Parameter 'DESCRIPTION'not found
我用的是BDE里的QUERY
顺便问一下,我用这个QUERY没有ParamByName这个,我是引用了 DBTables才有的,但是按到qrySQLCommand.后面任然没有自动出,我就是手动加的,不过程序没抱错,我用的是INTERBASE数据库
谢谢大家帮帮忙啊

解决方案 »

  1.   

    没看到你在sql语句里定义了DESCRIPTION这个参数呀。
    再说ParamByName一般是在open之前使用,你到底是要得到什么东西?
      

  2.   

    我自己改成Fieldbyname成功了...........................................这这...怎么回事
      

  3.   

    那看来你是想得到结果集的DESCRIPTION字段的值。使用FieldByName是正确的。
    而ParamByName是设置sql语句里参数使用的,你把ParamByName和FieldByName搞混了。