ADO连接ACCESS数据库
procedure TForm1.Button1Click(Sender: TObject);
var
ssp,suser,sdet,sres,s,tim:string;
begin
ssp:='a'; //测试用的数据
suser:='b';
sdet:='c';
sres:='d';
tim:=datetostr(now);
with ADOQuery1 do
begin
Close;
sql.Clear;
sql.Add('Insert into dst_xx(sp,user,detail,reserve,rq) Values('
+''''+Ssp+''','''+Suser+''','''+Sdet+''','''+Sres+''','''+tim+''')');
try
showmessage(sql.Text);
ExecSQL;
except
Application.MessageBox('不能写入非常规信息!','信息提示',MB_ICONSTOP);
Exit;
end;
end;
end;
就是提示INSERT INTO 语法错误
procedure TForm1.Button1Click(Sender: TObject);
var
ssp,suser,sdet,sres,s,tim:string;
begin
ssp:='a'; //测试用的数据
suser:='b';
sdet:='c';
sres:='d';
tim:=datetostr(now);
with ADOQuery1 do
begin
Close;
sql.Clear;
sql.Add('Insert into dst_xx(sp,user,detail,reserve,rq) Values('
+''''+Ssp+''','''+Suser+''','''+Sdet+''','''+Sres+''','''+tim+''')');
try
showmessage(sql.Text);
ExecSQL;
except
Application.MessageBox('不能写入非常规信息!','信息提示',MB_ICONSTOP);
Exit;
end;
end;
end;
就是提示INSERT INTO 语法错误
sql.Add(' insert into dst_xx (sp,user,detail,reserve,rq) ');
sql.Add(' values(:a1,:a2,……)');
Parameters.ParamByName('a1').Value:=ssp;
…………
execsql;
sql.Add('Insert into dst_xx(sp,user,detail,reserve,rq) Values('
+'"'+Ssp+'","'+Suser+'","'+Sdet+'","'+Sres+'","'+tim+'")');
大哥你的写法和我有什么不同啊
用一个函数呀。QuotedStr('123')==>得到 '123'写成这样:
....
sql.Add('Insert into dst_xx(sp,user,detail,reserve,rq) Values('+
QuotedStr(Ssp)+','+QuotedStr(Suser)+','+QuotedStr(Sdet)+','+
QuotedStr(Sres)+','+QuotedStr(tim)+')'
....
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~sql.Add('Insert into dst_xx(sp,[user],detail,reserve,rq) Values('
+''''+Ssp+''','''+Suser+''','''+Sdet+''','''+Sres+''','''+tim+''')');