如何变更SQL2000数据库的所有者

CREATE   PROCEDURE   ChangeProcOwner  
  @OldOwner as   NVARCHAR(128),--参数原所有者  
  @NewOwner as   NVARCHAR(128)--参数新所有者  
  AS  
   
  DECLARE   @Name   as   NVARCHAR(128)    
  DECLARE   @Owner as   NVARCHAR(128)  
  DECLARE   @OwnerName as   NVARCHAR(128)  
   
  DECLARE   curObject   CURSOR   FOR    
  select 'Name' =   name,  
  'Owner' =   user_name(uid)  
  from   sysobjects  
  where   user_name(uid)=@OldOwner   and   xtype='p'  
  order   by   name  
   
  OPEN     curObject  
  FETCH   NEXT   FROM   curObject   INTO   @Name,   @Owner  
  WHILE(@@FETCH_STATUS=0)  
  BEGIN          
  if   @Owner=@OldOwner    
  begin  
  set   @OwnerName   =   @OldOwner   +   '.'   +   rtrim(@Name)  
  exec   sp_changeobjectowner   @OwnerName,   @NewOwner  
  end  
   
  FETCH   NEXT   FROM   curObject   INTO   @Name,   @Owner  
  END  
   
  close   curObject  
  deallocate   curObject  
  GO
--上面是改存储过程的
exec   ChangeProcOwner   'cn05004','dbo'


EXEC   sp_MSforeachtable   'exec   sp_changeobjectowner   ''?'',''dbo''   '  
--批量修改表的所有者
--单个修改表所有者:  
--exec   sp_changeobjectowner   '要改的表名','dbo'  
--批量修改存储过程的存储过程:

返回
上海电信漕宝机房 地址:漕宝路1600号 漕宝机房介绍 上海移动双线机房 机房地址: 金沙江路1340弄 双线机房介绍
公司地址:上海市普陀区清峪路368弄12号301 邮编:200333 电话 021-52691612 传真 021-52693626
《增值电信业务经营许可证》许可证编号: 沪ICP备05001352号 上海市互联网违法与违规信息举报中心
上海市互联网协会 上海市电子商务行业协会 DNS Stuff 公益性SEO 页面执行时间:30.762毫秒
上海纵智信息技术有限公司 版权所有 2004-2007 营业执照