我想在程序中动态添加记录,写了如下程序,可以把记录添加上去,但紧接着就提示如下错误:Project Project1.exe raise exception class EDatabaseError with message 'ADOQuery1:CommandText does not return a result set'.Process stopped.Use Step or Run to continue。请请教,哪里出了问题?
procedure TForm1.Button2Click(Sender: TObject);
var
strsql:string;
begin
strsql:='Insert into phone(Person,Num) Values('+chr(39)+edit1.text
+chr(39)+','+chr(39)+edit2.text+chr(39)+')';
with ADOQuery1 do
begin
close;
sql.Clear;
sql.Add(strsql);
open;
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
strsql:string;
begin
strsql:='Insert into phone(Person,Num) Values('+chr(39)+edit1.text
+chr(39)+','+chr(39)+edit2.text+chr(39)+')';
with ADOQuery1 do
begin
close;
sql.Clear;
sql.Add(strsql);
open;
end;
end;
要返回一个数据集(用select ....from...where...)语句的时候,用OPEN。
strsql:string;
begin
strsql:='Insert into phone(Person,Num) Values(:xPerson,:xNum)';
with ADOQuery1 do
begin
close;
sql.Clear;
sql.Add(strsql);
parameters[0].value:=Edit1.text;
Parameters[1].value:=Edit2.Text;
ExecSQL;
end;
end;