heh

sql server 修改所有者

问题:数据库里的每个表都属于某个用户,即:所有者。修改所有者有如下两种:

  • 批量修改:EXEC sp_MSforeachtable 'exec sp_changeobjectowner ''?'',''dbo'' '
  • 单个修改:exec sp_changeobjectowner '要改的表名','dbo'

注意:只有所有者才能更改表的所有者。登陆“系统管理员” 可修改,但数据库要先开启系统管理员用户。>>开通方法

对于单个修改。但,有的服务器会提示如下:

 消息   15001,级别   16,状态   1,过程   sp_changeobjectowner,行   38   
  对象   'user'   不存在或不是对此操作有效的对象。


修改为:exec sp_changeobjectowner '表所有者.要改的表名','dbo'           就不需表的所有者才能修改了

例如:exec sp_changeobjectowner 'chinabm.course_type1','dbo'

待续:对于批量修改,没试过,不知道会有什么问题。

posted on 2008-12-25 11:16  imwho  阅读(993)  评论(0编辑  收藏  举报

导航