次のコマンドを実行すると、すべてのタブに対して一連のALTER sCHEMAステートメントが生成されます。
SELECT 'ALTER SCHEMA dbo TRANSFER ' + TABLE_SCHEMA + '.' + TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'jonathan'
次に、クエリアナライザーでステートメントをコピーして実行する必要があります。
これもあなたのために行う古いスクリプトです。オブジェクトの所有者を変更すると思います。ただし、2008年には試していない。
DECLARE @old sysname, @new sysname, @sql varchar(1000)
SELECT
@old = 'jonathan'
, @new = 'dbo'
, @sql = '
IF EXISTS (SELECT NULL FROM INFORMATION_SCHEMA.TABLES
WHERE
QUOTENAME(TABLE_SCHEMA)+''.''+QUOTENAME(TABLE_NAME) = ''?''
AND TABLE_SCHEMA = ''' + @old + '''
)
EXECUTE sp_changeobjectowner ''?'', ''' + @new + ''''
EXECUTE sp_MSforeachtable @sql
このサイトから入手しました。
また、必要に応じて、ストアドプロシージャに対して同じことを行う方法についても説明します。