迷失的错误:服务器能过户 'user_a' 不是数据库'database_b'中的有效用户
2010-07-29 23:51
197 查看
错误代码:
Failed to retrieve data for this request.
(Microsoft.SqlServer.Management.Sdk.Sfc)
ADDITIONAL INFORMATION:
An exception occurred while executing a Transact-SQL statement or batch.
(Microsoft.SqlServer.ConnectionInfo)
Server user 'user_a' is not a valid user in database 'database_b'.
(Microsoft SQL Server, Error: 916)
服务器能过户 'user_a' 不是数据库'database_b'中的有效用户。(Microsoft SQL Server, Error: 916)
今天帮人改个程序,在连数据库的时候居然发生了以上的错误。
觉得很可笑,连接到服务器上后,点开数据库项的时候出现了上述的错误。
用户user_a想访问的数据库是database_a,居然却访问到了database_b,因为没有访问权限被拒绝了。
这个问题是发生在尝试list服务器上的数据库时。
记得以前打开其他空间提供商中的数据库,也能列出所有数据库,包括自己不能访问的。(找到原因后,想想估计那时使用的是 sql server 2005的管理工具。)
纳闷了很久后,在http://www.sqlmonster.com/Uwe/Forum.aspx/sql-server-tools/4171/SQL-Server-Management-Studio-2008-Express-failed-to-retrieve中找到了线索,然后从 http://sqlblog.com/blogs/aaron_bertrand/archive/2008/07/07/a-little-management-studio-oops.aspx中更深入了解了原因。
原来是sql server 2008的management studio在list数据库时默认读取的一个选项"Collation
"在作怪,list数据库就要读取各个数据库的某些属性信息,而读取这个"Collation"属性就需要用户有对数据库的访问权限。否则就会报错。
那么我们只要调出对象详细信息浏览(Object Explorer Details)窗口,没有打开时,按F7键可以呼出这个界面,然后在列表中的表头按右键,将Collation项去掉。问题就解决了。
这个问题估计MS开始没有预料到,在下一个 pitch中估计会fix。毕竟是个小问题,无伤大雅。
Failed to retrieve data for this request.
(Microsoft.SqlServer.Management.Sdk.Sfc)
ADDITIONAL INFORMATION:
An exception occurred while executing a Transact-SQL statement or batch.
(Microsoft.SqlServer.ConnectionInfo)
Server user 'user_a' is not a valid user in database 'database_b'.
(Microsoft SQL Server, Error: 916)
服务器能过户 'user_a' 不是数据库'database_b'中的有效用户。(Microsoft SQL Server, Error: 916)
今天帮人改个程序,在连数据库的时候居然发生了以上的错误。
觉得很可笑,连接到服务器上后,点开数据库项的时候出现了上述的错误。
用户user_a想访问的数据库是database_a,居然却访问到了database_b,因为没有访问权限被拒绝了。
这个问题是发生在尝试list服务器上的数据库时。
记得以前打开其他空间提供商中的数据库,也能列出所有数据库,包括自己不能访问的。(找到原因后,想想估计那时使用的是 sql server 2005的管理工具。)
纳闷了很久后,在http://www.sqlmonster.com/Uwe/Forum.aspx/sql-server-tools/4171/SQL-Server-Management-Studio-2008-Express-failed-to-retrieve中找到了线索,然后从 http://sqlblog.com/blogs/aaron_bertrand/archive/2008/07/07/a-little-management-studio-oops.aspx中更深入了解了原因。
原来是sql server 2008的management studio在list数据库时默认读取的一个选项"Collation
"在作怪,list数据库就要读取各个数据库的某些属性信息,而读取这个"Collation"属性就需要用户有对数据库的访问权限。否则就会报错。
那么我们只要调出对象详细信息浏览(Object Explorer Details)窗口,没有打开时,按F7键可以呼出这个界面,然后在列表中的表头按右键,将Collation项去掉。问题就解决了。
这个问题估计MS开始没有预料到,在下一个 pitch中估计会fix。毕竟是个小问题,无伤大雅。
相关文章推荐
- 用户、组或角色 'zgb' 在当前数据库中已存在。 (Microsoft SQL Server,错误: 15023)
- 1044-Access denied for user 'root'@'%' to database databaseTest 错误
- vs.net C# 连接数据库 出现错误 用户 '(null)' 登录失败。原因: 未与信任 SQL Server 连接相关联
- 无法打开用户默认数据库。登录失败/用户 'sa' 登录失败。 (Microsoft SQL Server,错误: 4064)
- Spring4.1使用c3p0加载配置文件连接数据库,Access denied for user 'root'@'localhost' 错误!
- 关于Microsoft Access数据库错误 '80004005',“已经被别的用户以独占方式打开,或没有查看数据的权限。”
- [mysql_error]: Access denied for user 'root'@'%' to database 'image' 错误解决
- Microsoft JET Database Engine 错误 '80004005'不是一个有效的路径。 确定路径名称拼写是否正确,以及是否连接到文件存放的服务器。
- Mysql错误: Access denied for user ''@'localhost' to database 'mysql'
- c# 数据库(SQL2005)在关键字 'USER' 附近有语法错误
- asp + Access 常见的数据库访问失败问题 Microsoft JET Database Engine 错误 '80004005' 解决办法
- error 1044 (42000):access denied for user ''@'localhost' to database 'mysql'错误解决方案
- 还原数据库时发生错误,提示'逻辑文件 'XX' 不是数据库 'XX' 的一部分"之类的错误
- asp连接acess数据库出现 Microsoft JET Database Engine 错误 '80004005
- 数据库链接错误 : Access denied for user 'root'@'localhost' (using password: YES)
- 连接到 SQL Server 的实例时收到错误消息:“Cannot open user default database”(无法打开用户默认数据库)
- SQL2008无法连接到.\SQLEXPRESS,用户'sa'登录失败(错误18456)图文解决方法 已成功与服务器建立连接,但是在登录过程中发生错误。 (provider: 共享内存提供程序, er
- Microsoft JET Database Engine 错误 '80004005' 不可识别的数据库格式 问题解决方案
- asp + Access 常见的数据库访问失败问题 Microsoft JET Database Engine 错误 '80004005' 解决办法
- mysql报ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password)错误或者远程用户不能登录