我使用VB编写了一个访问数据库的COM+组件,里面使用ADO访问SQL SERVER数据库,这个组件的功能很简单就是使用adodb.connection连接数据库,连接字符串为
"Driver={SQL Server};uid=sa;pwd=sa;server=servername;database=test",服务器为win2000 server,客户端为win 2000 pro,如果客户端登录win2000的帐号在服务器上没有该帐号的话,程序在调用组件的查询数据库的方法提示权限不够,但如果在客户端不使用组件,而是直接用ado去连接sql server是可以的,我服务器上的guest帐号已经启用,不知道是什么原因。
哪位高手给解答一下。

解决方案 »

  1.   

    你的sql server是不是使用了信任连接?如果是那么当你登录上了域以后是可以直接用ado连数据库的,数据库管理员对你在域中角色的权限设定就是你对数据库操作的权限。。
      

  2.   

    我使用是的sql server 2000中文企业版,安装采用默认的方式,现在网络中没有主域控制器,组件服务器和数据库服务器是同一台计算机,客户端的计算机希望能够guest身份登录网络,服务器上并不需要给客户端设置帐号,组件是以sa的身分访问数据库,现在运行时程序提示权限不够。
      

  3.   

    我的客户端程序并不直接访问数据库,而是通过中间层组件来访问数据库,现在就是不清楚为什么以guest身分登录网络后,组件没有权限访问数据库了
      

  4.   

    guest和普通的user在访问组件或数据库时机制有什么不同,能否解答一下,现在组合创建是成功的,但调用组件的方法时提示权限不够