更改数据库中表的所属用户的两个方法

2016-01-29 16:21 100 1 收藏

更改数据库中表的所属用户的两个方法,更改数据库中表的所属用户的两个方法

【 tulaoshi.com - SQLServer 】

 

--更改某个表
exec sp_changeobjectowner 'tablename','dbo'


--存储更改全部表
CREATE PROCEDURE dbo.User_ChangeObjectOwnerBatch
 @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
 order by name

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)

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
-- select @name,@NewOwner,@OldOwner

 FETCH NEXT FROM curObject INTO @Name, @Owner
END

close curObject
deallocate curObject


GO

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/) 

来源:http://www.tulaoshi.com/n/20160129/1498366.html

延伸阅读
在Oracle数据库中删除两表中相同数据的方法是用到in语句,本文通过实例来讲解删除两表中相同数据的方法。 软件环境: 1、Windows NT4.0+ORACLE 8.0.4。 2、Oracle安装路径为:C:\ORANT。 问题提出: 1、在做数据转储业务的时候,如果发生操作错误,有可能出现主表和副表中都有同一种数据, 这样结算的结果就有可能发生错误。 实...
(1)启动,一直到出现如图6.34所示的界面。 (2)出现如图6.35所示的界面。 (3)出现如图6.36所示的数据库选项的选项卡。 (4)出现如图6.37所示的界面。 (5)出现如图6.38所示的共享服务器模式的选项卡。 (6)切换到如图6.39所示的共享服务器模式的选项卡。 (7)返回图6.37所示界面。 (8...
标签: SQLServer
一、  自动应用重做日志 1、  利用SET  AUTORECOVERY命令自动应用重做日志 完成对数据文件的修复操作 SQLSTARTUP  MOUNT; 启动实例并加载数据库 SQLSET  AUTORECOVERY  ON 启用重做日志自动应用功能 SQLRECOVER  DATABASE 恢复指定表空间、数据文件或整个数据库 SQLALTER  DATABASE  OPEN; 完成...
在SQL Server 2008中,为了保护数据库的安全,需要给不同的使用者开通不同的访问用户,那么如何简单的控制用户的权限呢?下面我们就创建一个只读用户,给大家学习使用。 SQL Server 2008 Microsoft SQLServer Management Studio 1、首先打开,用管理员账户登录。这里我选的服务器是,账户是,如果是连接远程的服务器,输入远程服务器地址即...
如果你从未为MySQL设置根用户密码,服务器在以根用户身份进行连接时不需要密码。但是,建议你为每个账户设置密码。 如果你以前设置了根用户密码,但却忘记了该密码,可设置新的密码。下述步骤是针对Windows平台的。在本节后面的内容中,介绍了针对Unix平台的步骤。 在Windows平台下,该步骤是: 以系统管理员身份登录到系统...

经验教程

479

收藏

55
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部