Вы можете запустить следующее, что сгенерирует набор инструкций 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
Получил с с этого сайта .
В нем также говорится о том, чтобы сделать то же самое для хранимых процедур, если вам нужно.