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 de objecten om te script
- selecteer in het venster Scripting opties instellen Het Script om een bestand te maken
- 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:
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:
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”:
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:
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:
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:
ziet u het volgende venster:
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:
- Status – geeft aan of een query met succes is afgerond (witte vinkje in een groene cirkel) of niet (wit kruis in een rode cirkel)
- QueryText – geeft query-tekst
- Grootte (Bytes) – geeft de grootte gemeten in bytes
- Uitvoering – toont de datum en tijd wanneer een query werd uitgevoerd
- Duur – toont de tijd die het nam een query worden uitgevoerd
- Bestand – hiermee geeft u de naam en het volledige pad naar het
- Server – toont de naam van de server
- door de Gebruiker laat een gebruiker die het uitvoeren van een script
- 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:
laten we nu onze opgeslagen procedurenaam “AutoKillSessionTranBegin” invoeren in het filter” zoeken”:
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:
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:
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
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