我在数据库中创建了一个数据表SignedMember(SignedMemberADOQuery),连接SignInADOConnect数据库,此数据库还有其他表。在我创建SignedMemberADOQuery之前,应用程序是可以正常运行的。但是我在添加了SignedMemberADOQuery.Active:=False;
SignedMemberADOQuery.Active:=True;(运行到此句,就不行了。直接跳到except异常处理语句。注释掉后又正常)。
我以前创建数据表都不会出现这种情况。原程序的其他代码没有改动,SignedMemberADOQuery的SQL连接语句是
Select * from SignenMember。在数据库中我有有创建SignedMember。
请问大侠,这是什么原因呢?

解决方案 »

  1.   

    菜鸟路过。你那SQL语句的表名和数据库的表名怎么看着不顺眼的。
      

  2.   

    SignedMemberADOQuery能否添加成功静态字段?或者说在设计视图连接DBGRID能否显示数据?这样看俺没看出问题
      

  3.   

    Select * from SignenMember我在数据库中创建了一个数据表SignedMember不一致
      

  4.   

    回复 erhan
    不好意思,SignenMember那里写错了,但是我之后就改过来SignedMember,不是这个原因。
      

  5.   

    //以下是我的一部分程序程序代码,望各位大侠指点 
    //我本想创建SignedMemberADOQuery来替换一下SignedUserADOQuery看看,问题出在哪里。SignedMemberADOQuery对应的表SignedMember,此时还没有做任何数据操作。 
    //连接SQL数据库
      Screen.Cursor := crHourGlass;
      StatusBar1.Panels[0].Text := '正在连接SQL数据库,请稍候...';
      try
        with DataModule1 do
        begin
          SignInADOConnect.Close;
          SignInADOConnect.Open;
          showmessage(SignedUserADOQuery.SQL.CommaText);
          SignInADOQuery.Active:=False;
          SignInADOQuery.Active:=True;
          SignedUserADOQuery.Active:=False;
          SignedUserADOQuery.Active:=True;//(改变一下运行到此句就跳到except语句中去了
          CardUser1ADOQuery.Filtered := False;
          with CardUser1ADOQuery do
          begin
            SQL.Clear;
            SQL.Add('select * from NewCardUser');
            ExecSQL;
            Open;
          end;
          if SignedUser1ADOQuery.Active=False then SignedUser1ADOQuery.Active:=True;
          if CustomData1ADOQuery.Active=False then CustomData1ADOQuery.Active:=True;
        end;
        StatusBar1.Panels[0].Text := 'SQL连接成功!';
        Screen.Cursor := crDefault;
      except
        Screen.Cursor := crDefault;
        StatusBar1.Panels[0].Text := 'SQL连接失败,请先连接';
        exit;
      end;
      

  6.   


    try
     ...
    except
      on E: Exception do ErrorDialog(E.Message, E.HelpContext);
    end;
    加上看看是什么错误,贴上来帮你分析下
      

  7.   

    代码没什么问题哟,不知道是不是IDE里SignedUserADOQuery的什么属性不小心改坏了?
      

  8.   

    回复 以上各位大侠:
    这个程序原来就正常运行的,所以不存在 数据集没有激活和DataModule1没有创建 的问题!我上午注释掉try..except..end; 此时 程序运行到
    SignedUserADOQuery.Active:=True;
    可以运行下去了。不再跳到except异常处理那里,弹出的错误是找不到我自己在数据表创建的字段,删除我创建的字段后,可以运行了。
        分析到此处,由于我的这个应用程序还跟另外一个大应用程序一起配合运行的,据弹出错误目前分析估计是 屏幕定制控件集流上传到服务器的信息没有改变为我创建的字段所致。
     
       感谢各位大侠的指点!