Je souhaite déplacer une table dans un schéma spécifique à l'aide de T-SQL? J'utilise SQL Server 2008.
_ALTER SCHEMA TargetSchema
TRANSFER SourceSchema.TableName;
_
Si vous souhaitez déplacer toutes les tables dans un nouveau schéma, vous pouvez utiliser le document non documenté (et être obsolète à un moment donné, mais peu probable!) _sp_MSforeachtable
_ procédure stockée:
_exec sp_MSforeachtable "ALTER SCHEMA TargetSchema TRANSFER ?"
_
Réf .: ALTER SCHEMA
SQL 2008: Comment changer le schéma de base de données en dbo
Réponse courte:
ALTER SCHEMA new_schema TRANSFER old_schema.table_name
Je peux confirmer que les données du tableau restent intactes, ce qui est probablement très important :)
Réponse longue selon documents MSDN ,
ALTER SCHEMA schema_name
TRANSFER [ Object | Type | XML Schema Collection ] securable_name [;]
S'il s'agit d'une table (ou de tout élément en dehors d'une collection Type ou XML Schema), vous pouvez omettre l'objet Word car il s'agit de la valeur par défaut.