我有一段代码,不知怎么写,请指教.
var
dk_km:string;
begin
  dk_km:='select * from table where xb='男'';
  adoquery1.sql.add(dk_km);
end;
请问,在给dk_km赋值时xb='男'的单引号是怎么写出来的?

解决方案 »

  1.   


    var 
    dk_km:string; 
    begin 
        dk_km:='select * from table where xb=''男'''; 
        adoquery1.sql.add(dk_km); 
    end; {另一写法}
    var 
    dk_km:string; 
    begin 
        dk_km:='select * from table where xb='+QuotedStr('男'); 
        adoquery1.sql.text:=dk_km;
    end; 
      

  2.   

    dk_km:='select   *   from   table   where   xb='+QuotedStr('男');
      

  3.   

    1.拼sql db_km := 'select * from table where xb='''+'男'+'''';
    2.利用绑定参数形式,这种方法比上种要好,不必关心引号等字符
      adoquery1.sql.text := ' select * from table where xb=:xb';
      adoquery1.parameters.parambyname('xb').value := '男';
      adoquery1.open;
      

  4.   


    一般用这样两种方法
    //第一种
    var
      str:string;
    begin
      str:='select * from t where 性别=''男'' ';
      with adoquery do
        begin
          close;
          sql.clear;
          sql.add(str);
          open;
        end;
    end;
    //第二种
    begin
      with adoquery do
        begin
          close;
          sql.clear;
          sql.add('select * from t where 性别=:sex');
          parameters.parambyname('sex').value:='男';
          open;  
        end;
    end;
      

  5.   

    var 
    dk_km:string; 
    begin 
        dk_km:='select * from table where xb=''男'''; 
        adoquery1.sql.add(dk_km); 
    end;
      

  6.   

    DELPHI里的 " " 等于SQL里的''
    'select * from  table where xb=' '' + '男' +' '' ';