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 AdventureWorks2022 databázi.

Pokyny pro obnovení databází v nástroji SSMS najdete tady: Obnovení zálohy databáze pomocí aplikace SSMS.

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í:

    Snímek obrazovky s možností 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:

    Snímek obrazovky se zálohováním databáze skriptu – akce skriptu

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

    Snímek obrazovky se zálohováním databáze skriptu – 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:

    Snímek obrazovky se zmenšením souborů

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

    Snímek obrazovky s protokolem zmenšování transakcí

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

    Snímek obrazovky skriptu 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.)

    Snímek obrazovky se skriptem pro vložení

  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:

    Snímek obrazovky se skriptovací databází

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

    Snímek obrazovky se skriptovanou databází

    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.

    Snímek obrazovky s možností Najít a nahradit

  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:

    Snímek obrazovky se generováním 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.

    Snímek obrazovky 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.

    Snímek obrazovky s objekty Script

    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 dat pomocí Průvodce importem a exportem SQL Serveru.

  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.

    Snímek obrazovky 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. Tabulka skriptů errorLogu>jako>DROP a CREATE do>nového okna editoru dotazů:

    Snímek obrazovky s tabulkou skriptů

  6. Vyberte Spustit a spusťte dotaz. Tato akce tabulku zahodí 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>Skript Uložená procedura jako>DROP a CREATE do>nového okna Editoru dotazů:

    Snímek obrazovky s uloženými procedurami 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á >relace skriptů jako>CREATE do>nového okna editoru dotazů:

    Snímek obrazovky s relací okna Rozšířeného nového 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á.

    Snímek obrazovky s novou rozšířenou relací 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.