Export SQL procedură stocată într-un fișier și de a genera Script-ul său
în articolele anterioare, am revizuit un algoritm general de a găsi și ștergerea tranzacțiilor deschise incomplete în bazele de date SQL Server, a creat un tabel pentru fixarea tranzacțiilor incomplete și o procedură CRUD-stocate, și a implementat numeroase setări care vor face documentul nostru flux de lucru productiv și la îndemână.
să exportăm și să testăm o procedură stocată, să generăm codul acesteia și să o transformăm într – un script-va fi executată pe orice gazdă sau un grup de gazde prin specificarea parametrilor de intrare adecvați.
Export procedură stocată în SQL Server
de asemenea, poate fi destul de util să generați un script pentru crearea obiectelor bazei de date necesare, de exemplu, să generați un script pentru a exporta o procedură stocată într-un fișier sau să copiați procedura stocată în alte soluții. Pentru aceasta, urmați pașii următori:
- în Exploratorul de obiecte, faceți clic dreapta pe baza de date
- selectați activități din meniul contextual care apare
- selectați comanda generare Scripturi
- selectați obiectele de script
- în fereastra Set Scripting Options, selectați Script to File
- rulați scriptul generat împotriva bazei de date țintă.
când se efectuează toți acești pași, vom obține un script generat al procedurii stocate exportate.
testarea unei proceduri stocate
să revenim la o procedură stocată pe care am creat-o în partea 2. Dacă tragem cursorul într-o procedură stocată, va apărea un meniu derulant:
pentru a funcționa corect, procedura stocată trebuie să aibă o descriere. În cazul în care nu a fost adăugat încă, vă rugăm să rulați următorul script:
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
sau du-te pentru proprietățile extinse ale obiectului:
de asemenea, puteți adăuga o descriere utilizând această metodă.
generarea codului procedurii stocate
îl puteți apela cu un clic dreapta pe meniul derulant al unei proceduri stocate, apoi selectați „Script Object as CREATE / ALTER”:
odată ce faceți acest lucru, va apărea un script pentru modificarea obiectului – în cazul nostru, va fi modificarea procedurii stocate. Dacă nu există niciun obiect, ar exista un script pentru crearea acestuia. Acest script poate fi mutat cu ușurință la instanțele corespunzătoare MS SQL Server.
transformarea codului de procedură stocat într-un script
puteți selecta „Convert EXEC to Script” într – un meniu derulant:
în loc să apelați o procedură stocată, va fi creat un script, parametrii de intrare vor deveni variabile, iar conținutul procedurii stocate va deveni un script. Este o caracteristică la îndemână atunci când testați codul:
acum Puteți rula scriptul derivat pe orice gazdă sau un grup de gazde prin setarea valorilor corespunzătoare ale parametrilor de intrare.
Istoricul creării interogărilor
să examinăm acum o altă funcționalitate importantă – SQL Complete: Istoricul execuției care afișează interogările anterioare. Pentru a face acest lucru, faceți clic pe butonul SQL Complete: Execution History:
veți vedea următoarea fereastră:
colțul din stânga sus al ferestrei conține filtre pentru cuvinte și interval de timp, în timp ce colțul din dreapta arată numărul de interogări care au fost găsite pe baza datelor introduse în filtru. Partea de jos a ferestrei arată interogarea selectată din tabel.
tabelul este format din următoarele coloane:
- Status – arată dacă o interogare a fost finalizată cu succes (bifă albă într – un cerc verde) sau nu (cruce albă într – un cerc roșu)
- QueryText – afișează textul interogării
- Dimensiune (octeți) – afișează dimensiunea măsurată în octeți
- execuție On – afișează data și ora la care a fost executată o interogare
- durata – arată timpul în care a fost nevoie de o interogare pentru a fi executat
- fișier – arată numele fișierului și o cale completă la acesta
- server – arată numele serverului
- utilizator-arată un utilizator care a executat un script
- bază de date-arată un baza de date în care a fost executat un script
căutarea coloanelor „QueryText” și „Execution On” se face în filtrele „Search” și „From/To”.
de asemenea, puteți sorta coloanele de date în ordine crescătoare sau descrescătoare făcând clic pe un antet al unei coloane corespunzătoare. În mod implicit, sortarea coloanei „execuție pe” este activată în ordine descrescătoare.
puteți sorta mai multe coloane în același timp ținând apăsat un buton SHIFT. De asemenea, puteți configura filtre mai complexe făcând clic pe semnul filtru:
să introducem acum numele procedurii stocate „AutoKillSessionTranBegin” în filtrul „Căutare” :
ca rezultat, obținem un istoric complet de creare a srv.AutoKillSessionTranBegin procedură care a fost descrisă înainte.
dacă faceți clic dreapta pe un rând de tabel adecvat, puteți deschide un script într-o fereastră nouă sau îl puteți copia în clipboard pentru a-l lipi oriunde este necesar:
puteți deschide un script într-o fereastră nouă făcând dublu clic pe scriptul dorit într-un rând de tabel.
de asemenea, puteți specifica cât timp este stocat Istoricul execuției, dimensiunea maximă a interogării și calea de stocare a istoricului:
puteți citi mai multe detalii despre funcționalitatea istoricului execuției aici.
asta e tot, oameni buni. Noua funcționalitate a fost dezvoltată, testată și mutată în instanțe MS SQL Server adecvate.
- autor
- Postări recente
Evgeniy Gribkov
ultimele postări de Evgeniy Gribkov (vezi toate)
- crearea procedurii stocate pentru abandonarea tabelelor Temporare locale în SQL Server-16 Iunie 2021
- depozit de control al sursei de legături dedicate – 6 mai 2021
- controlul versiunii bazei de date utilizând controlul sursei pentru SQL Server – Mai 5, 2021
sql complet, sql server, tranzacții sql server, sql stocate procedura