J'ai une table qui a été placée dans le schéma "db_owner" et j'ai besoin qu'elle soit dans le schéma "dbo".
Y a-t-il un script ou une commande à exécuter pour effectuer le changement ?
J'ai une table qui a été placée dans le schéma "db_owner" et j'ai besoin qu'elle soit dans le schéma "dbo".
Y a-t-il un script ou une commande à exécuter pour effectuer le changement ?
Afficher tous les TABLE_SCHEMA
avec cette requête :
SELECT TABLE_SCHEMA, TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
Vous pouvez utiliser cette requête pour changer tous les schémas pour toutes les tables en schéma de table dbo :
DECLARE cursore CURSOR FOR
SELECT TABLE_SCHEMA, TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA <> 'dbo'
DECLARE @schema sysname,
@tab sysname,
@sql varchar(500)
OPEN cursore
FETCH NEXT FROM cursore INTO @schema, @tab
WHILE @@FETCH_STATUS = 0
BEGIN
SET @sql = 'ALTER SCHEMA dbo TRANSFER ' + @schema + '.' + @tab
PRINT @sql
FETCH NEXT FROM cursore INTO @schema, @tab
END
CLOSE cursore
DEALLOCATE cursore
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.