请问大侠们,在delphi 7里用SQL语句查询 中文值字段的时候,会提示列名无效,有什么好的解决办法么!?

解决方案 »

  1.   

    with AdoQuery1 do
      begin
        close;
        SQL.Clear;
        SQL.Add('Select * from Buslines where Drivername='+Trim(Edit1.text));
        Open;
      end;在Edit1中输入中文驾驶员名字的时候查询就会报错列名无效!
      

  2.   

    中文字段 是允许的!我很多都是中文的;你的代码有错误!
    应该with AdoQuery1 do 
      begin 
        close; 
        SQL.Clear; 
        SQL.Add('Select * from Buslines where Drivername='''+Trim(Edit1.text)+''''); //字符需要引号
        Open; 
      end; 
      

  3.   


    代码有错误,你可以这样with AdoQuery1 do 
      begin 
        close; 
        SQL.Clear; 
        SQL.Add('Select * from Buslines where Drivername='+Trim(Edit1.text)); 
        ShowMessage(SQL.Text);//显示一下,看看是否正确
        Open; 
      end; 
      

  4.   

    with AdoQuery1 do 
      begin 
        close; 
        SQL.Clear; 
        SQL.Add('Select * from Buslines where Drivername='''+Trim(Edit1.text)+''''); 
        Open; 
      end; 
      

  5.   

    5楼正解.
    或者你用:
    with AdoQuery1 do 
      begin 
        close; 
        SQL.Clear; 
        SQL.Add('Select * from Buslines where Drivername=:DriverName');
        Parameters.ParamByName('DriverName').Value:=Trim(Edit1.text);   
        Open; 
      end;