Exporteer de SQL-opgeslagen Procedure naar een bestand en genereer het Script

In vorige artikelen hebben we een algemeen algoritme bekeken Voor het vinden en verwijderen van onvolledige open transacties in SQL Server-databases, een tabel gemaakt voor het repareren van onvolledige transacties en een CRUD-opgeslagen procedure, en talrijke instellingen geïmplementeerd die onze documentworkflow productief en handig zullen maken.

laten we nu een opgeslagen procedure exporteren en testen, de code ervan genereren en het omzetten in een script – het zal worden uitgevoerd op elke host of een groep hosts door de juiste invoerparameters op te geven.

opgeslagen Procedure exporteren in SQL Server

het kan ook nuttig zijn om een script te genereren voor het maken van de benodigde database-objecten, bijvoorbeeld een script genereren om een opgeslagen procedure naar een bestand te exporteren of de opgeslagen procedure naar andere oplossingen te kopiëren. Om dit te doen, volgt u de volgende stappen:

  • klik in de Objectverkenner met de rechtermuisknop op uw database
  • Selecteer taken uit het contextmenu dat verschijnt
  • Selecteer het commando scripts genereren
Selecteer het commando scripts genereren
Fig. 1 het selecteren van de scripts genereren opdracht
  • selecteer de objecten om te script
het selecteren van de objecten die u wilt script
Fig. 2 het selecteren van de objecten die u wilt script
  • selecteer in het venster Scripting opties instellen Het Script om een bestand te maken
Script selecteren voor bestand
Fig 3. Script in Bestand selecteren
  • voer het gegenereerde script uit tegen de doeldatabase.

wanneer al deze stappen worden uitgevoerd, krijgen we een gegenereerd script van de geëxporteerde opgeslagen procedure.

het testen van een opgeslagen procedure

laten we terugkeren naar een opgeslagen procedure die we hebben aangemaakt in deel 2. Als we de cursor naar een opgeslagen procedure slepen, verschijnt er een vervolgkeuzemenu:

het vervolgkeuzemenu opgeslagen procedure
Fig 4. Het vervolgkeuzemenu opgeslagen procedure

om correct te werken, moet uw opgeslagen procedure een beschrijving hebben. Als het nog niet is toegevoegd, voer dan het volgende script uit:

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

of ga voor de uitgebreide eigenschappen van het object:

de beschrijving van de opgeslagen procedure toevoegen
Fig.5 de beschrijving

van de opgeslagen procedure toevoegen U kunt ook een beschrijving toevoegen met deze methode.

codegeneratie van de opgeslagen procedure

u kunt het aanroepen met een klik met de rechtermuisknop op het vervolgkeuzemenu van een opgeslagen procedure, selecteer vervolgens “Script Object as CREATE / ALTER”:

selecteren Fig.6 het selecteren van het “Script Object as CREATE / ALTER” in het contextmenu

Als u dit doet, verschijnt er een script voor de verandering van het object – in ons geval zal het de opgeslagen procedure wijziging zijn. Als er geen object is, zou er een script zijn om het aan te maken. Dit script kan eenvoudig worden verplaatst naar de juiste MS SQL Server instanties.

opgeslagen procedurecode omzetten naar een script

u kunt “Exec converteren naar Script” selecteren in een vervolgkeuzemenu:

selecteren Fig.7 het selecteren van het commando” converteer EXEC naar Script ” in het hoofdmenu van SQL Complete

in plaats van een opgeslagen procedure aan te roepen, wordt een script aangemaakt, worden invoerparameters variabelen en wordt de inhoud van de opgeslagen procedure een script. Het is een handige functie bij het testen van uw code:

het resultaat van het aanmaken van een script met een opgeslagen procedure
Fig.8 het resultaat van het aanmaken van een script van een opgeslagen procedure

nu kunt u het afgeleide script uitvoeren op elke host of een groep hosts door de juiste waarden van invoerparameters in te stellen.

Aanmaakgeschiedenis van Query

laten we nu een andere belangrijke functionaliteit bekijken – SQL Complete: uitvoergeschiedenis die de vorige query ‘ s weergeeft. Om dit te doen, klikt u op de knop SQL Complete: Execution History:

kiezen Fig.9 Als u de opdracht “Execution History” kiest in het hoofdmenu van SQL Complete

ziet u het volgende venster:

de weergave van de uitgevoerde scripts
Fig.10 de weergave van de uitgevoerde scripts

de linkerbovenhoek van het venster bevat filters voor woorden en tijdbereik, terwijl de rechterhoek het aantal zoekopdrachten toont dat is gevonden op basis van de gegevens die in het filter zijn ingevoerd. De onderkant van het venster toont de query geselecteerd uit de tabel.

de tabel bestaat uit de volgende kolommen:

  1. Status – geeft aan of een query met succes is afgerond (witte vinkje in een groene cirkel) of niet (wit kruis in een rode cirkel)
  2. QueryText – geeft query-tekst
  3. Grootte (Bytes) – geeft de grootte gemeten in bytes
  4. Uitvoering – toont de datum en tijd wanneer een query werd uitgevoerd
  5. Duur – toont de tijd die het nam een query worden uitgevoerd
  6. Bestand – hiermee geeft u de naam en het volledige pad naar het
  7. Server – toont de naam van de server
  8. door de Gebruiker laat een gebruiker die het uitvoeren van een script
  9. Database – toont een database waarin een script is uitgevoerd

het zoeken naar de kolommen” QueryText “en” Execution On “wordt gedaan in de filters” Search “En” From/To”.

u kunt ook gegevenskolommen in oplopende of aflopende volgorde sorteren door op een kop van een juiste kolom te klikken. Standaard is het sorteren van de kolom “uitvoering op” ingeschakeld in aflopende volgorde.

u kunt meerdere kolommen tegelijkertijd sorteren door een SHIFT-toets ingedrukt te houden. U kunt ook complexere filters instellen door op het filterteken te klikken:

kolomfiltering
instellen Fig.11 kolomfiltering instellen

laten we nu onze opgeslagen procedurenaam “AutoKillSessionTranBegin” invoeren in het filter” zoeken”:

 opgeslagen procedurezoekopdracht in
Fig.12 opgeslagen procedure zoekopdracht in de” Execution History ” tab

als gevolg hiervan krijgen we een volledige creatiegeschiedenis van de srv.AutoKillSessionTranBegin procedure die eerder werd beschreven.

als u met de rechtermuisknop op een juiste tabelrij klikt, kunt u een script in een nieuw venster openen of kopiëren naar het klembord om het waar nodig te plakken:

het geselecteerde script kopiëren van de
Fig.13 het geselecteerde script kopiëren van het tabblad” Execution History ”

u kunt een script in een nieuw venster openen door te dubbelklikken op het gewenste script in een tabelrij.

u kunt ook opgeven hoe lang de uitvoergeschiedenis wordt opgeslagen, de maximale query-grootte en het opslagpad voor de geschiedenis:

de
Fig.14. De opdracht” Execution History ” – instellingen in SQL Complete

u kunt hier meer informatie over de functionaliteit van de Execution History lezen.

dat is alles, mensen. De nieuwe functionaliteit is ontwikkeld, getest en verplaatst naar de juiste MS SQL Server instances.

  • auteur
  • recente berichten
Evgeniy Gribkov

Evgeniy Gribkov

Evgeniy is een MS SQL Server database analist, ontwikkelaar en beheerder. Hij is betrokken bij de ontwikkeling en het testen van de SQL Server database management tools. Evgeniy schrijft ook SQL Server-gerelateerde artikelen.

Evgeniy Gribkov

Laatste bericht door Evgeniy Gribkov (zie alle)

  • het Maken van de Opgeslagen Procedure voor het laten Vallen van de Lokale Tijdelijke Tabellen in SQL Server – juni 16, 2021
  • Speciale Link Source Control Repository – Mei 6, 2021
  • Database Versie Controle met Behulp van Source Control voor SQL Server – Mei 5, 2021

sql volledige, sql server, sql server transacties, opgeslagen sql-procedure

Leave a Reply

Het e-mailadres wordt niet gepubliceerd.