Parfois, la modification des utilisateurs de la base de données change le propriétaire de la base de données pour une table de dbo.tablename à badschema.tablename. Cela affectera également toutes les procédures stockées créées sous les tables avec le schéma incorrect. Si vous devez remplacer le schéma de ces tables par le schéma dbo par défaut, suivez les étapes ci-dessous.
Ces étapes nécessitent que Microsoft SQL Server Management Studio soit installé sur votre ordinateur. Si vous ne l'avez pas installé, Microsoft SQL Server Management Studio Express 2008 est disponible gratuitement auprès de Microsoft et peut être téléchargé via ce lien :http://www.microsoft.com/download/en/details.aspx?id=22985
Vous devez bien connaître MS SQL si vous souhaitez effectuer ces étapes. Si vous ne vous sentez pas à l'aise avec cela, veuillez contacter le support pour obtenir de l'aide. Assurez-vous de sauvegarder votre site avant d'apporter des modifications à la base de données. Si vous êtes un client d'hébergement partagé, vous pouvez le faire via votre panneau de contrôle en suivant les étapes décrites ici :Sauvegardez votre site Web à l'aide de Plesk. Si vous êtes un client de serveur dédié, vous pouvez sauvegarder votre site soit via votre Panneau de configuration, soit directement via Control Suite en suivant les étapes ici :Comment sauvegarder un domaine à l'aide de Control Suite.
Partie 1
- Ouvrez Microsoft SQL Server Management Studio et connectez-vous.
- Cliquez sur Nouvelle requête bouton.
- Collez le script suivant dans la zone Nouvelle requête en modifiant oldschema au nom du schéma courant :
SELECT
'ALTER SCHEMA dbo TRANSFER '
+ s.
Name
+
'.'
+ o.
Name
FROM
sys.Objects o
INNER
JOIN
sys.Schemas s
on
o.schema_id = s.schema_id
WHERE
s.
Name
=
'oldschema'
And
(o.Type =
'U'
Or
o.Type =
'P'
Or
o.Type =
'V'
)
- Cliquez sur Exécuter
Cette requête se traduira par une sortie dans la zone Résultats qui ressemble à la sortie ci-dessous :
ALTER
SCHEMA
dbo TRANSFER yourschema.Table1
ALTER
SCHEMA
dbo TRANSFER yourschema.Table2
ALTER
SCHEMA
dbo TRANSFER yourschema.Table3
ALTER
SCHEMA
dbo TRANSFER yourschema.Table4
ALTER
SCHEMA
dbo TRANSFER yourschema.Table5
ALTER
SCHEMA
dbo TRANSFER yourschema.Table6
Partie 2
- Cliquez sur Nouvelle requête bouton.
- Collez les requêtes de la sortie de la partie 1 dans votre nouvelle zone de requête
- Cliquez sur Exécuter
Cela transférera le nom du schéma vers le nouveau schéma, modifiant également les procédures stockées et les vues.