Как переместить таблицу в схему в T-SQL

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

Ответ 1

ALTER SCHEMA TargetSchema 
    TRANSFER SourceSchema.TableName;

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

exec sp_MSforeachtable "ALTER SCHEMA TargetSchema TRANSFER ?"

Ref.: ALTER SCHEMA

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

Ответ 2

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

ALTER SCHEMA new_schema TRANSFER old_schema.table_name

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

Длинный ответ по Документы MSDN,

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

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