投诉建议: service@dingmei.net
QQ13826515612  QQ永远在线
手机站(wap.cmseasy.cc) - 互联网资讯 - 繁體 - 加入收藏  填写邮箱地址,订阅网站通知
注册登录 - 网站地图 - 新闻中心 - 帮助中心 - 交费方式 - 产品免费体验 

关于 SQL Server 没有 dbo 权限的问题

发布时间:2008-11-26 10:25:09   浏览人数: 677886 次  

关于 sql server 数据库查询数据或执行存储过程时,出现类似 "没有dbo权限"、"找不到 dbo.XXX 对象"等的解决方法

1. 出现这个问题的原因是因为当前连接数据库的登录用户不是 dbo 权限,所以此用户不能操作所有者为 dbo 的对象。为什么不开放 dbo 权限:因为如果客户的程序有问题(比如有注入漏洞)、或数据库密码泄漏等,如果当前用户有 dbo 权限的话,会给数据库服务器带来安全隐患,所以我司的数据库都不开放 dbo 权限,而我们给用户开放了datareader、datawriter、ddladmin 等权限,这些权限一般情况下是足够的。

2. 用户在初始化数据的时候,比如通过企业管理器执行导入数据的 SQL ,或通过某些网站安装程序初始化的时候,这些原始的初始化数据中的对象所有者可能是 dbo ,这将会导致在初始化数据后,数据库的当前登录用户没有权限操作这些对象。

3. 对于以上问题,解决方法如下:
  1. 在您对数据库的结构进行了更改后,要注意数据库对象(如数据表、存储过程等)的所有者应该是您的数据库用户名,而不是 dbo ,如果您发现有某些对象的所有者是 dbo ,这时您应该登录我司的数据库控制面板,然后找到“修复对象所有者”的按钮,点击一下就可以将所有对象的所有者设置为您的当前登录用户。
  (注意:系统表、系统存储过程 等不用处理,只有自己建立的表、存储过程、视图等才要处理)
4. 在您的程序中,要注意以下方面
  在查询、更新、删除数据,执行存储过程等一切操作中,不要使用 "dbo.表名"、"dbo.存储过程名" 等进行操作,
  而改为直接用 "表名"、"存储过程"名等进行操作,就是不要带有对象所有者的部分,如:
  select * from dbo.table1 应该改为 select * from table1
  更多请做类似修改~



上一篇:美国虚拟主机导购!!
下一篇:滥用on error resume next造成的空间被停用
珠海总公司:0756-3366365 香港公司:00852-68581005 广州公司:400-622-8306    网站栏目导航
  中华人民共和国增值电信业务经营许可证:粤B-20060337 CNNIC认证顶级域名注册商 ICANN认证顶级域名注册商 
cdn加速服务 备案系统认证   举报不良网站 我们的支付方式 AAA级信用  
鼎美网络 ? 版权所有 Copyright ? 2006-2014 DingMei.net,Inc. All rights reserved   法律顾问: 益诺众承律师事务所 夏天风 律师   
鼎美网络,傲动,云主机,香港空间,美国空间,免备案空间,无需备案的空间,不用备案的空间,香港虚拟主机,稳定的香港空间,港台主机,香港空间购买,广州域名空间,双线主机,服务器托管,魔方主机,智能建站,手机网站模板,在线制作手机网站,wap建站,400电话,企业短信,智能建站系统,免费建站系统,开源建站系统,php建站,php建站系统,免费php建站,建站系统php开源,建站系统源码下载,打字建站,建站不需编程,自助奸诈,自助建站,自助建站系统,傻瓜式自助建站系统,最好的自助建站,建站之星,自动建站系统,免费建站,360免费建站,免费做网站,做网站用什么软件,做网站的软件,怎么做网站,怎样做网站,做网站的公司,做网站教程,建站教程,如何建站,建站软件,做网站的步骤,做网站多少钱,自助建站哪个好,免费建站系统排行,cms建站系统,网站系统,公司网站模板,公司网站要多少钱,企业网站,公司网站怎么做,公司网站建设,公司网站源码,怎么做微信商城,怎么做微商城,微信商城系统,手机网站制作,免费代理加盟
Live Chat by comm100
以下js为测试信息