拒绝了对对象 '****'(数据库 '******',所有者 '***')的 SELECT 权限。

本文详细介绍了在SQL Server中遇到的权限问题,包括如何解决拒绝访问查询数据和远程登陆设置的问题。通过调整数据库权限和配置TCP/IP、Named Pipe等外围设置,能够有效解决问题,确保数据库的正常访问和远程连接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

错误:

System.Data.SqlClient.SqlException: 拒绝了对对象 'Dentists'(数据库 'dentists',所有者 'dbo')的 SELECT 权限。
    at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream)
    at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior)
    at System.Data.SqlClient.SqlCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)


解决方案:

在数据库里相应的用户权限中,把db_denydatareader的复选框的勾去掉。

很多初学者,总认为在数据库权限中选的越多,权限越大。其实这是错误的!

db_denydatareader是拒绝访问查询数据。同样,db_denydatawrite 是拒绝进行DML操作。

 

--------------------
解决1.删除刻数据库中的asp.net 用户

解决2.

拒绝了对对象'users' (数据库'People',架构'dbo')的SELECT 权限
问题:Sql server 2005 默认设置下不允许远程登陆
1 外围设置 tcp/ip 和 named pipe 同时启用
2 服务器 --〉属性 --〉安全性 --〉sql server 和windows 认证模式
问题: 拒绝了对对象 'xxx' (数据库 'xxx',架构 'dbo')的 SELECT 权限。
答案: 数据库(xxx) --->安全性---->架构---->dbo(属性)--->权限--->添加--->浏览-->public 添加 select

 

问题:Sql server 2005 默认设置下不允许远程登陆 
1 外围设置 tcp/ip 和 named pipe 同时启用 
2 服务器 --〉属性 --〉安全性 --〉sql server 和windows 认证模式 

问题: 拒绝了对对象 'xxx' (数据库 'xxx',架构 'dbo')的 SELECT 权限。 
答案: 数据库(xxx) --->安全性---->架构---->dbo(属性)--->权限--->添加--->浏览--> 
[public]---->具有授予权限(select)

 

整理转载青岛网络公司:http://www.toorain.net

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值