Sdílet prostřednictvím


Skriptování objektů v aplikaci SQL Server Management Studio

V tomto kurzu se naučíte generovat Transact-SQL skripty (T-SQL) pro různé objekty nalezené v sadě SQL Server Management Studio (SSMS). V tomto kurzu najdete příklady, jak skriptovat následující objekty:

  • Dotazy, když provádíte akce v grafickém uživatelském rozhraní
  • Databáze dvěma různými způsoby (skriptovat jako a generovat skript)
  • Tabulky
  • Uložené procedury
  • Rozšířené události

Pokud chcete skriptovat libovolný objekt v Průzkumníku objektů, klikněte na něj pravým tlačítkem myši a vyberte možnost Script Object As (Objekt skriptu jako ). V tomto kurzu se dozvíte, jak na to.

Požadavky

K dokončení tohoto kurzu potřebujete SQL Server Management Studio, přístup k serveru, na kterém běží SQL Server, a databázi AdventureWorks.

Pokyny pro obnovení databází v nástroji SSMS najdete tady: Obnovit databázi.

Skriptovací dotazy z grafického uživatelského rozhraní

Přidružený kód T-SQL pro úlohu můžete vygenerovat pokaždé, když k jeho dokončení použijete grafické uživatelské rozhraní v nástroji SSMS. Následující příklady ukazují, jak to provést při zálohování databáze a při zmenšení transakčního protokolu. Stejný postup lze použít u jakékoli akce, která se dokončí prostřednictvím grafického uživatelského rozhraní.

Skript T-SQL při zálohování databáze

  1. Připojte se k serveru, na kterém běží SQL Server.

  2. Rozbalte uzel Databáze.

  3. Klikněte pravým tlačítkem myši na databázi AdventureWorks2022>Tasks>Zálohování:

    Zálohování databáze

  4. Nakonfigurujte zálohování požadovaným způsobem. Pro účely tohoto kurzu je všechno ve výchozím nastavení ponecháno. Všechny změny provedené v okně se ale projeví také ve skriptu.

  5. Vybrat skript>Akci skriptu do nového okna dotazu:

    Zálohování databáze skriptů – akce skriptu

  6. Zkontrolujte vyplněný T-SQL v okně dotazu.

    Zálohování skriptů databáze – kontrola T-SQL

  7. Výběrem příkazu Execute (Spustit ) spusťte dotaz pro zálohování databáze prostřednictvím T-SQL.

Skript T-SQL při zmenšování transakčního logu

  1. Klikněte pravým tlačítkem myši na databázi AdventureWorks2022>Tasks>Shrink>Files:

    Zmenšení souborů

  2. V rozevíracím seznamu Typ souboru vyberte Protokol:

    Zmenšení transakčního protokolu

  3. Vyberte skript a akci skriptu zkopírujte do schránky:

    Skript do schránky

  4. Otevřete okno Nový dotaz a vložte ho. (V okně klikněte pravým tlačítkem myši. Pak vyberte Vložit.)

    Vložit skript

  5. Výběrem příkazu Execute (Spustit ) spusťte dotaz a zmenšete transakční protokol.

Skriptovací databáze

Následující část vás naučí skriptovat databázi pomocí možností Skript jako a Generovat skripty . Možnost Skript jako znovu vytvoří databázi a její možnosti konfigurace. Schéma i data můžete skriptovat pomocí možnosti Generovat skripty . V této části vytvoříte dvě nové databáze. Pomocí možnosti Skript jako vytvoříte AdventureWorks2022a. K vytvoření AdventureWorks2022b použijete možnost Generovat skripty.

Skriptování databáze pomocí možnosti Skript

  1. Připojte se k serveru, na kterém běží SQL Server.

  2. Rozbalte uzel Databáze.

  3. Klikněte pravým tlačítkem myši na databázi AdventureWorks2022>Script Database As>Create To>New Query Editor Window:

    Skriptovací databáze

  4. Zkontrolujte dotaz na vytvoření databáze v okně:

    Skriptovaná databáze Tato možnost skriptuje pouze možnosti konfigurace databáze.

  5. Na klávesnici otevřete stisknutím kombinace kláves Ctrl+F dialogové okno Najít . Výběrem šipky dolů otevřete možnost Nahradit . Na horním řádku Najít zadejte AdventureWorks2022 a na dolním řádku Nahradit zadejte AdventureWorks2022a.

  6. Vyberte Nahradit vše a nahradíte všechny instance AdventureWorks2022 za AdventureWorks2022a.

    Vyhledání a nahrazení

  7. Výběrem příkazu Execute (Spustit ) spusťte dotaz a vytvořte novou databázi AdventureWorks2022a.

Skriptování databáze pomocí možnosti Generovat skripty

  1. Připojte se k serveru, na kterém běží SQL Server.

  2. Rozbalte uzel Databáze.

  3. Klikněte pravým tlačítkem myši naÚlohy>AdventureWorks2022>Generovat skripty:

    Generování skriptů pro databáze

  4. Otevře se úvodní stránka. Výběrem možnosti Další otevřete stránku Zvolit objekty . Můžete vybrat celou databázi nebo konkrétní objekty v databázi. Vyberte Možnost Skriptovat celou databázi a všechny databázové objekty.

    Generování skriptů pro objekty

  5. Vyberte Další pro otevření stránky Nastavit možnosti skriptování. Tady můžete nakonfigurovat, kam se má skript uložit, a několik dalších rozšířených možností.

    a. Vyberte Uložit do nového okna dotazu.

    b) Vyberte Upřesnit a ujistěte se, že jsou nastavené tyto možnosti:

    • Statistika skriptu nastavená na Statistika skriptu.
    • Typy dat pro skripty nastavené pouze na schéma.
    • Indexy skriptů jsou nastaveny na hodnotu True.

    Objekty skriptu

    Poznámka:

    Data pro databázi můžete skriptovat při výběru schématu a dat pro typy dat pro možnost skriptování . To ale není ideální pro velké databáze. Může spotřebovat více paměti, než může aplikace SSMS přidělit. Toto omezení je v pořádku pro malé databáze. Pokud chcete přesunout data pro větší databázi, použijte Průvodce importem a exportem.

  6. Zvolte OK a pak vyberte Další.

  7. V souhrnu vyberte Další. Potom znovu vyberte Další a vygenerujte skript v okně Nový dotaz .

  8. Na klávesnici otevřete dialogové okno Najít (Ctrl+F). Výběrem šipky dolů otevřete možnost Nahradit . Na horním řádku Najít zadejte AdventureWorks2022. Na spodním řádku Replace zadejte AdventureWorks2022b.

  9. Výběrem možnosti Nahradit vše nahradíte všechny instance AdventureWorks2022za AdventureWorks2022b.

    AdventureWorks 2016

  10. Výběrem možnosti Spustit spusťte dotaz a vytvořte novou databázi AdventureWorks2022b.

Tabulky skriptů

Tato část popisuje, jak skriptovat tabulky z databáze. Tuto možnost použijte k vytvoření tabulky nebo ke zrušení a vytvoření tabulky. Tuto možnost můžete použít také ke skriptování T-SQL přidružené k úpravě tabulky. Příkladem je vložení do něj nebo jeho aktualizace. V této části odstraníte tabulku a pak ji znovu vytvoříte.

  1. Připojte se k serveru, na kterém běží SQL Server.

  2. Rozbalte položku Databáze.

  3. Rozbalte databázový uzel AdventureWorks2022.

  4. Rozbalte uzel Tabulky.

  5. Klikněte pravým tlačítkem na dbo.ErrorLog>Skriptovat tabulku jako>DROP a CREATE do>nového okna editoru dotazů:

    Tabulka skriptů

  6. Vyberte Spustit a spusťte dotaz. Tato akce zahodí tabulku Errorlog a znovu ji vytvoří.

    Poznámka:

    Tabulka Errorlog je ve výchozím nastavení v AdventureWorks2022 databázi prázdná. Takže neztratíte žádná data tím, že tabulku vypustíte. Následující kroky v tabulce s daty však způsobují ztrátu dat.

Uložené procedury skriptu

V této části se dozvíte, jak odstranit a vytvořit uloženou proceduru.

  1. Připojte se k serveru, na kterém běží SQL Server.

  2. Rozbalte položku Databáze.

  3. Rozbalte uzel Programovatelnost .

  4. Rozbalte uzel Uložená procedura .

  5. Klikněte pravým tlačítkem myši na uloženou proceduru dbo.uspGetBillOfMaterials>Vytvořit skript uložené procedury jako>DROP a CREATE To>Nové okno editoru dotazu:

    Uložené procedury skriptu

Rozšířené události skriptů

Tato část popisuje, jak skriptovat rozšířené události.

  1. Připojte se k serveru, na kterém běží SQL Server.

  2. Rozbalte uzel správy .

  3. Rozbalte uzel Rozšířené události.

  4. Rozbalte uzel Sessions.

  5. Klikněte pravým tlačítkem myši na rozšířenou relaci, kterou vás zajímá >Skript relace jako>Vytvořit do>Nového Okna Editoru Dotazů:

    Rozšířená relace v okně Editoru dotazů

  6. V okně Nový editor dotazů upravte nový název relace z system_health na system_health2. Vyberte Spustit a spusťte dotaz.

  7. V Průzkumníku objektů klikněte pravým tlačítkem myši na Sessions. Výběrem možnosti Aktualizovat zobrazíte novou rozšířenou relaci událostí. Zelená ikona vedle sezení označuje, že sezení probíhá. Červená ikona označuje, že relace je zastavená.

    Nová rozšířená relace událostí

    Poznámka:

    Relaci můžete zahájit tak, že na ni kliknete pravým tlačítkem a vyberete Spustit. Jedná se ale o kopii již spuštěné relace system_health , takže tento krok můžete přeskočit. Kopii rozšířené relace událostí můžete odstranit: klikněte na ni pravým tlačítkem myši a vyberte Odstranit.

Další kroky

Nejlepším způsobem, jak se seznámit s SSMS, je praktické cvičení. Tyto výukové materiály a návodové články vám pomůžou s různými funkcemi dostupnými v rámci SSMS. V těchto článcích se dozvíte, jak spravovat komponenty SSMS a jak najít funkce, které používáte pravidelně.