Jak změnit schéma MS SQL tabulek, uložených procedur a zobrazení najednou
Někdy změna uživatele databáze změní vlastníka databáze pro tabulku z dbo.tablename na badschema.tablename. To také ovlivní všechny uložené procedury vytvořené pod tabulkami s nesprávným schématem. Pokud potřebujete změnit schéma pro tyto tabulky zpět na výchozí schéma dbo, postupujte podle následujících kroků.
Tyto kroky vyžadují, abyste měli na svém počítači nainstalované Microsoft SQL Server Management Studio. Pokud nemáte nainstalovaný Microsoft SQL Server Mangement Studio Express 2008, je k dispozici zdarma od společnosti Microsoft a lze jej stáhnout prostřednictvím tohoto odkazu:http://www.microsoft.com/download/en/details.aspx?id=22985
Pokud se chystáte provést tyto kroky, měli byste se dobře orientovat v MS SQL. Pokud se s tím necítíte dobře, požádejte o pomoc podporu. Před provedením jakýchkoli změn v databázi se ujistěte, že jste si zazálohovali svůj web. Pokud jste zákazníkem sdíleného hostingu, můžete to provést prostřednictvím ovládacího panelu podle následujících kroků:Zálohujte svůj web pomocí Plesk. Pokud jste zákazníkem dedikovaného serveru, můžete svůj web zálohovat buď prostřednictvím ovládacího panelu, nebo přímo prostřednictvím sady Control Suite podle následujících kroků:Jak zálohovat doménu pomocí sady Control Suite.
Část 1
- Otevřete Microsoft SQL Server Management Studio a přihlaste se.
- Klikněte na Nový dotaz tlačítko.
- Vložte následující skript do pole Nový dotaz změnou starého schématu na název aktuálního schématu:
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'
)
- Klikněte na tlačítko Provést
Výsledkem tohoto dotazu bude výstup v poli Výsledky, který vypadá podobně jako výstup níže:
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
Část 2
- Klikněte na Nový dotaz tlačítko.
- Vložte dotazy z výstupu části 1 do nového pole Dotaz
- Klikněte na tlačítko Provést
Tím se přenese název schématu do nového schématu a také se změní uložené procedury a pohledy.