您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> Delphi >> 为什么第一次执行时不会INSERT第二次执行时会INSERT第一次的资料

为什么第一次执行时不会INSERT第二次执行时会INSERT第一次的资料

来源:网络整理     时间:2016/8/6 11:45:01     关键词:

关于网友提出的“ 为什么第一次执行时不会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

相关图片

相关文章