关于网友提出的“ 为什么第一次执行时不会INSERT第二次执行时会INSERT第一次的资料”问题疑问,本网通过在网上对“ 为什么第一次执行时不会INSERT第二次执行时会INSERT第一次的资料”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题: 为什么第一次执行时不会INSERT第二次执行时会INSERT第一次的资料
描述: BitBtn1
SHOWDEPT1.ShowModal;
SHOWDEPT下的BitBtn1
procedure TSHOWDEPT1.FormShow(Sender: TObject);
begin
IF QUERY1.Active THEN
QUERY1.Close;
QUERY1.Open;
end;
procedure TSHOWDEPT1.DBGrid1DblClick(Sender: TObject);
begin
if QUERY1.IsEmpty then
exit;
QUERY1.Edit;
if QUERY1CD.AsString = '*' then
QUERY1CD.AsString := ' '
else
QUERY1CD.AsString := '*';
end;
procedure TSHOWDEPT1.BitBtn1Click(Sender: TObject);
begin
QUERY1.First;
WHILE NOT QUERY.Eof DO
BEGIN
IF QUERY1CD.AsString = '*' THEN
BEGIN
INS.ParamByName('NAME').AsString := 'NO';
INS.ParamByName('DEP').AsString := QUERY1DEP.Value;
INS.ExecSQL;
END;
QUERY1.Next;
END;
end;
QUERY1的SQL.TEXT是:SELECT ' 'cd,DEP FROM ABC
INS的SQL.TEXT是:insert into BBB VALUES ( :NAME, :DEP)
请问为什么当我执行第一次的时候
按下BitBtn1,SHOWDEPT1有跳出来,QUERY1的资料也有显示在DBGRID上面
但按下SHOWDEPT1中的BitBtn1资料却没有INSERT进资料库呢??(SHOWDEPT1会自动关闭)
解决方案1: 加个showmessage看看sql.text , i:=INS.ExecSQL; 看看返回值是否有错误
以上介绍了“ 为什么第一次执行时不会INSERT第二次执行时会INSERT第一次的资料”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/3138645.html