select * FROM employee where   empcarnumber=''''+carnumber+'''' 每一邊四個單引號

解决方案 »

  1.   

    提示说 ’列名 carnumber‘ 无效
      

  2.   

    carnumber 值是‘00001’?
    值中包含引号吗?
    adoquery1.sql.add('select * FROM employee where   empcarnumber='+ QuotedStr(carnumber) );
      

  3.   

    adoquery1.sql.add('select * FROM employee where empcarnumber='''+trim(carnumber)+'''');
      

  4.   

    在delphi中要用到sql语句时,sql.add('') 中单引号中的select 语句中如有常量字符串应该用   :   ''常量字符串''形式,那样提交到数据库时,才能使字段的值等于一个真正的字符串.
    所以你的语句应该写成:
      adoquery1.sql.add('select * FROM employee where   empcarnumber=''''  '+carnumber+' ''''  ');
      

  5.   

    在delphi中要用到sql语句时,sql.add('') 中单引号中的select 语句中如有常量字符串应该用   :   ''常量字符串''形式,那样提交到数据库时,才能使字段的值等于一个真正的字符串.
    所以你的语句应该写成:
      adoquery1.sql.add('select * FROM employee where   empcarnumber=''''  '+carnumber+' ''''  ');
      

  6.   

    謝謝各位  我找到了問題的所以,這個CARNUMBER 是由一個自定義函數get_number返回來的,  carnumber:=get_number;
    最後我改爲
    carnumber:=pchar(get_number);
    就行了,謝謝你們的幫忙