首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

delphi ADOQuery1.OPEN第二回打开就死掉了

2013-09-05 
delphi ADOQuery1.OPEN第二次打开就死掉了form1点击按钮A,打开form2,并调用下面的代码,查询出数据绑定给cm

delphi ADOQuery1.OPEN第二次打开就死掉了
form1点击按钮A,打开form2,并调用下面的代码,查询出数据绑定给cmbDoorName;
当我把form2关闭后,再点击按钮A,在ADOQuery1.Open处就完全卡死了。
请教下这个是什么原因??


    // 初始化cmbDoor
    cmbDoorName.Clear;
    cmbDoorName.Items.Add('');

    sSql := 'select * from table order by doorName';

    if trim(sSql) <> '' then
    begin
        ADOQuery1.Close;
        ADOQuery1.SQL.Clear;
        ADOQuery1.SQL.Text:=sSql;
        ADOQuery1.Open;
        while not ADOQuery1.Eof do
        begin
            cmbDoorName.Items.Add(ADOQuery1.FieldByName('doorName').AsString);
            ADOQuery1.Next;
        end;
    end;
delphi ADOQuery 死机
[解决办法]
就你说的这些真判断不出,ADOQuery连接数据库了么?
[解决办法]
form2如果是动态创建的,那每次create form2的时候都需要初始化连接参数;clear是清除了sql语句。
[解决办法]
把创建FORM代码也列出来吧。 这段代码 看不出来啥问题
[解决办法]
这种问题,一般是 创造,没释放,或 没关闭数据控件相关东西,
[解决办法]
没有全码还真判断不了。。
[解决办法]
引用:
这种问题,一般是 创造,没释放,或 没关闭数据控件相关东西,

这种可能性比较大
[解决办法]
在循环的前面加一句试试 ADOQuery1.First;
------解决方案--------------------


这段代码没有问题,是别的原因,代码上多一点。

热点排行