Как переместить таблицу в схему в T-SQL - PullRequest
253 голосов
/ 19 июля 2009

Я хочу переместить таблицу в конкретную схему, используя T-SQL? Я использую SQL Server 2008.

Ответы [ 2 ]

438 голосов
/ 19 июля 2009
ALTER SCHEMA TargetSchema 
    TRANSFER SourceSchema.TableName;

Если вы хотите переместить все таблицы в новую схему, вы можете использовать недокументированные (и в какой-то момент устаревшие!

exec sp_MSforeachtable "ALTER SCHEMA TargetSchema TRANSFER ?"

Ссылка: ALTER SCHEMA

SQL 2008: Как изменить схему БД на dbo

18 голосов
/ 07 декабря 2015

Краткий ответ:

ALTER SCHEMA new_schema TRANSFER old_schema.table_name

Я могу подтвердить, что данные в таблице остаются нетронутыми, что, вероятно, очень важно:)

Длинный ответ согласно Документам MSDN ,

ALTER SCHEMA schema_name 
   TRANSFER [ Object | Type | XML Schema Collection ] securable_name [;]

Если это таблица (или что-то еще, кроме коллекции типов или схем XML), вы можете пропустить слово Object, поскольку это значение по умолчанию.

...