您是本帖第973个浏览者
sql server中更改表的所有者权限
最近接手了一台新服务器的维护,需要把旧服务器的sql server数据放到新服务器中
在企业管理器中附加上数据库后运行网站程序发现程序出错,读不到某些表的数据,数据库连接字符串是没问题的,而且有些表是可以读出来的!
在企业管理器中打开数据库表的列表,发现有几个数据库是旧服务器上的用户访问权限,而在新服务器上没有这个用户的,看来是因为权限问题导致这几个表无法读取数据从来程序出错
查阅资料用以下系统存储过程解决了问题
打开查询分析器运行
exec sp_MSForEachTable 'sp_changeobjectowner ''?'', ''dbo'''
以上存储过程是将所有的表的权限更改为dbo
运行过程中会有出错信息,不用理会,因为已经有些表是dbo
而且运行了不会马上显示结果,需要停止一下服务,然后再启动服务才能看到更改成功
重新打开网站,网站可以正常访问了。
搜索更多相关主题的帖子:
企业管理 sql server 服务器 数据库