批量更新存储过程所有者

时间:2010-07-15 21:14:00 

一。首先,添加如下存储过程

CREATE PROCEDURE dbo.ChangeObjectOwner
 @OldOwner as NVARCHAR(128)='cidianwang.com',--参数原所有者
 @NewOwner as NVARCHAR(128)='dbo'--参数新所有者
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
 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 ChangeObjectOwner '要更改的名称','dbo'

标签:存储过程,批量,数据库
0
投稿

猜你喜欢

  • 向MySQL数据库的表中录入数据的实用方法

    2008-12-17 16:24:00
  • 自然描述与自然任务

    2010-01-26 15:51:00
  • Javascript学习第一季 一

    2008-06-24 17:51:00
  • 天气预报调用代码

    2008-11-18 15:59:00
  • Oracle row_number() over()解析函数高效实现分页

    2011-12-01 10:33:07
  • UTF-8转为GB2312编码的asp函数

    2007-08-23 13:42:00
  • 制作主页的独门功夫五十招

    2010-09-05 21:15:00
  • 优化代码 改善CSS文件可读性

    2008-06-13 13:50:00
  • 在sql中返回插入的记录的id

    2008-12-21 15:54:00
  • jquery 使用点滴函数代码

    2011-05-21 16:12:00
  • 高效率的GetRows()的使用方法

    2008-09-23 18:29:00
  • Dreamweaver层使用八定律

    2008-05-16 11:41:00
  • tab(标签)在使用时的禁忌

    2009-04-16 13:06:00
  • 一个asp简单购物车教程

    2007-09-17 11:02:00
  • 逐步讲解向Access数据库上传且显示图片

    2008-11-28 16:51:00
  • gchart:基于google图表API的jquery组件全攻略:1、入门

    2010-01-25 12:18:00
  • Dreamweaver小技巧:超高速下载图像

    2009-07-14 21:59:00
  • 在XPath查询中指定轴(转自MSSQL手册)

    2008-09-04 14:23:00
  • MySQL查询不含周末的五天前的日期

    2008-11-11 12:28:00
  • HTML文件HEAD内部标签用法浅析

    2008-07-06 20:56:00
  • asp之家 网络编程 m.aspxhome.com