Export SQL uložené procedury do souboru a generovat jeho skript
v předchozích článcích jsme přezkoumali obecný algoritmus hledání a mazání neúplných otevřených transakcí v databázích SQL Server, vytvořili tabulku pro opravu neúplných transakcí a proceduru uloženou CRUD a implementovali řadu nastavení, díky nimž bude náš pracovní postup dokumentů produktivní a praktický.
pojďme nyní exportovat a otestovat uloženou proceduru, vygenerovat její kód a přeměnit ji na skript – bude spuštěn na libovolném hostiteli nebo skupině hostitelů zadáním správných vstupních parametrů.
Export uložené procedury v SQL Serveru
může být také docela užitečné vygenerovat skript pro vytvoření potřebných databázových objektů, například vygenerovat skript pro export uložené procedury do souboru nebo zkopírovat uloženou proceduru do jiných řešení. Postupujte podle následujících kroků:
- v Průzkumníku objektů klepněte pravým tlačítkem myši na databázi
- vyberte úkoly z kontextové nabídky, která se zobrazí
- vyberte příkaz generovat skripty
- Vyberte objekty ke skriptu
- v okně nastavit možnosti skriptování vyberte skript do souboru
- spusťte vygenerovaný skript proti cílové databázi.
po provedení všech těchto kroků získáme vygenerovaný skript exportované uložené procedury.
testování uložené procedury
vraťme se k uložené proceduře, kterou jsme vytvořili v části 2. Pokud přetáhneme kurzor na uloženou proceduru, objeví se rozbalovací nabídka:
Chcete-li správně fungovat, měla by mít uložená procedura popis. Pokud ještě nebyl přidán, spusťte prosím následující skript:
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Identification of frozen transactions (forgotten ones that do not have active requests) with their subsequent removal' , @level0type=N'SCHEMA',@level0name=N'srv', @level1type=N'PROCEDURE',@level1name=N'AutoKillSessionTranBegin'
GO
nebo přejděte na rozšířené vlastnosti objektu:
pomocí této metody můžete také přidat popis.
generování kódu uložené procedury
můžete jej zavolat kliknutím pravým tlačítkem myši na rozbalovací nabídku uložené procedury a poté vybrat „Script Object as CREATE / ALTER“:
jakmile to uděláte, objeví se skript pro změnu objektu – v našem případě to bude uložená změna procedury. Pokud neexistuje žádný objekt, existuje skript pro jeho vytvoření. Tento skript lze snadno přesunout do správných instancí MS SQL Server.
otočení uloženého kódu procedury na skript
v rozevírací nabídce můžete vybrat „převést EXEC na skript“ :
místo volání uložené procedury bude vytvořen skript, vstupní parametry se stanou proměnnými a uložený obsah procedury se stane skriptem. Je to užitečná funkce při testování kódu:
nyní můžete spustit odvozený skript na libovolném hostiteli nebo skupině hostitelů nastavením správných hodnot vstupních parametrů.
historie vytváření dotazů
podívejme se nyní na další důležitou funkci-SQL Complete: Execution History, která zobrazuje předchozí dotazy. Chcete-li to provést, klikněte na tlačítko SQL Complete: Execution History:
se zobrazí následující okno:
levý horní roh okna obsahuje filtry pro slova a časový rozsah, zatímco pravý roh zobrazuje počet dotazů, které byly nalezeny na základě dat zadaných ve filtru. Spodní strana okna zobrazuje dotaz vybraný z tabulky.
tabulka se skládá z následujících sloupců:
- Stav – zobrazuje, zda byl dotaz úspěšně dokončen (bílé zaškrtnutí v zeleném kruhu) nebo ne (bílý kříž v červeném kruhu)
- QueryText – zobrazuje text dotazu
- Velikost (bajty) – zobrazuje velikost měřená v bajtech
- provedení On – zobrazuje datum a čas, kdy byl dotaz proveden
- trvání – zobrazuje čas potřebný k provedení dotazu
- soubor – zobrazuje soubor
- server – zobrazuje název serveru
- uživatel – zobrazuje uživatele, který provedl skript
- databáze – zobrazuje a databáze, ve které byl skript spuštěn
hledání sloupců „QueryText“ a „Execution On“ se provádí ve filtrech“ Search „a“ From/To“.
můžete také třídit datové sloupce ve vzestupném nebo sestupném pořadí kliknutím na záhlaví správného sloupce. Ve výchozím nastavení je třídění sloupců „Execution On“ povoleno v sestupném pořadí.
můžete třídit více sloupců současně podržením tlačítka SHIFT. Složitější filtry můžete také nastavit kliknutím na znaménko filtru:
Nyní zadejte náš uložený název procedury „AutoKillSessionTranBegin“ do filtru“ hledat“:
výsledkem je úplná historie vytváření srv.AutoKillSessionTranBegin postup, který byl popsán dříve.
pokud kliknete pravým tlačítkem myši na správný řádek tabulky, můžete otevřít skript v novém okně nebo jej zkopírovat do schránky a vložit jej tam, kde je potřeba:
skript můžete otevřít v novém okně dvojitým kliknutím na požadovaný skript v řádku tabulky.
můžete také určit, jak dlouho je uložena historie provádění, maximální velikost dotazu a cesta k ukládání historie:
další podrobnosti o funkčnosti Execution History si můžete přečíst zde.
to je vše, lidi. Nová funkce byla vyvinuta, testována a přesunuta do správných instancí MS SQL Server.
- Autor
- poslední příspěvky
Evgeniy Gribkov
poslední příspěvky od Evgeniy Gribkov (Zobrazit vše)
- vytvoření uložené procedury pro upuštění lokálních dočasných tabulek v SQL Serveru-červen 16, 2021
- vyhrazený odkaz řízení zdroje úložiště-květen 6, 2021
- řízení Verze databáze pomocí řízení zdroje pro SQL Server-Květen 5, 2021
sql kompletní, sql server, sql Server transakce, sql uložené procedury