• 您的位置我爱Aspx >> 数据库 >> 更改数据库中表的所属用户的两个方法
  • 更改数据库中表的所属用户的两个方法

  • 作者:aspxer  来源:internet  日期:2007-5-22 0:33:17  关键字:数据库,数据
  • 更改数据库中表的所属用户的两个方法

    >

    --更改某个表

    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

    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

    我对这篇文章有话说?
  • 广告位招租,广告代号:content_468_15
  • 上一篇:删除数据库中重复数据的几个方法
    下一篇:SQL SERVER中直接循环写入数据