form1上有一个ttable控件table1,一个 button控件button1,table1.databasename:='hospital',table1.tablename:='bedinfo'(hospital是在本机sql server上的一个数据库别名,bedinfo是其中的一个表格),在button1click过程中添加代码table1.active:=true;
showmessage('ok');运行,系统未提示输入用户名和密码,直接提示ebd错误,无效的用户名或密码,无法登陆。在form1中添加datasouce控件 dbgrid控件,使dbgrid中显示table1中的内容。
运行,系统提示输入用户名和密码,输入后dbgrid中显示出table1的内容,然后我删去datasource和dbgrid,在运行,点击button1,系统提示输入用户名和密码,输入后显示ok 信息框,运行正常。这到底是为什么?!!!!!请高手指导,小弟感激不尽!!!!

解决方案 »

  1.   

    可能是开始少了单元文件没有添加
    你添加datasouce控件 dbgrid控件 后 自动添加了一些单元文件
    删除datasouce控件 dbgrid控件的时候,引用的单元文件是不删除的
      

  2.   

    你加个Tdatabase控件进去(Database1)Database1.AliasName='hospital',Database1.databasename='ttt';然后Database1的属性loginprompt=false;params要有USER NAME=数据库用户名称
    PASSWORD=数据库口令;然后将你的ttable.databasename='ttt'就OK
      

  3.   

    按照你的方法,我在D5下试了一下,没有问题,估计是你的操作乱了或者你的DELPHI系统有问题了。
      

  4.   

    谢谢esu(esu)的帖子,我发现只要在interfaces下的uses中添加一个dbgrids单元文件就解决了
    弹不知道为什么,我的程序中似乎并没有用到dbgrids控件。