我使用的是ADO query数据控件 这句sql能正常执行 'INSERT INTO table (name1,name2) VALUES ('''+name1+''','''+name2+''')'
;
但这句话就不能执行 'INSERT INTO table (name1,p_age) VALUES ('''+name1+''',age)'
p_age这个字段在数据库中是int类型的
age 在Delphi中是integer类型的, 请问 这句SQL该如何写?????? 青高手指教,本人不胜感激!
strsql := Format('INSERT INTO table (name1,p_age) VALUES (''%s'', %d)'
, [
name1
, age
]);用Format最方便。Format的具体用法你可以参照帮助。
Q1.SQL.Text :='Insert into buyizhi(ziduan,qeifenxuli,chuangkouQ3,chuangkouQ2,chuangkouQ1,chuangkouH1,chuangkouH2,chuangkouH3,changkou3zd) values(:zd,:qeifenxuli,:chuangkou-3,:chuangkou-2,:chuangkou-1,:chuangkou+1,:chuangkou+2,:chuangkou+3,:changkou3zd)';
Q1.Parameters.ParamByName('zd').Value :=Win3.Zd ;
Q1.Parameters.ParamByName('qeifenxuli').Value :=Win3.QFXL ;
Q1.Parameters.ParamByName('chuangkou-3').Value :=Win3.w_3[1] ;
Q1.Parameters.ParamByName('chuangkou-2').Value :=Win3.w_3[2] ;
Q1.Parameters.ParamByName('chuangkou-1').Value :=Win3.w_3[3] ;
Q1.Parameters.ParamByName('chuangkou+1').Value :=Win3.w_3[4] ;
Q1.Parameters.ParamByName('chuangkou+2').Value :=Win3.w_3[5] ;
Q1.Parameters.ParamByName('chuangkou+3').Value :=Win3.w_3[6] ;
Q1.Parameters.ParamByName('changkou3zd').Value :=Win3.W3Str ;
Q1.ExecSQL ;