zoukankan      html  css  js  c++  java
  • SQL2000 修改表所有者的方法

     

    单个修改所有者sql语句如下:

    查询分析器输入:EXEC sp_changeobjectowner 'user.table', 'dbo'

    user.table的意思为:所有者.表名,比如oblog.oblog_user,以前的语句表示将table这张表的所有者由

    user改成dbo

    批量修改所有者语句如下:

    查询分析器输入:exec sp_msforeachtable 'sp_changeobjectowner ''?'', ''dbo'''

    即可把当面表的所有所有者换成dbo

    第二种方法:

    更改数据库所有者并不能影响已经创建的表的所有者,你需要使用sp_changeobjectower来改变对象的所有者,并且对象的所有者sa对应的是dbo

    以下语句是利用游标,读取mydb帐户拥有的所有对象,并将其所有者更改为sa
    另外如果之前本地不存在mydb帐户,可能会导致孤立帐户的出现,你先试试能不能成功吧,如果不行,再提供给你解决方法。

    declare cur cursor for
    select name
    from sysobjects
    where uid=user_id('mydb')

    declare @name sysname
    declare @sqlstr varchar(5000)

    open cur
    fetch next from cur
    into @name

    while @@fetch_status=0
    begin
    set @sqlstr='exec sp_changeobjectowner ''mydb.'+@name+''',''dbo'''
    exec (@sqlstr)
    fetch next from cur
    into @name
    end
    close cur
    deallocate cur

  • 相关阅读:
    贪心策略---不重叠的区间个数
    贪心策略---分配饼干
    双指针---最长子序列
    双指针---回文字符串
    双指针---反转字符串中的元音字符
    双指针---两数平方和
    双指针---有序数组的TWO SUM
    排序---小结
    排序---桶排序
    变量的解构赋值
  • 原文地址:https://www.cnblogs.com/zjoch/p/1741635.html
Copyright © 2011-2022 走看看