Mest relationsdatabasesystemer bruger Structured Query Language eller SQL , for at skabe database strukturer , opdatere data og udføre rapportering og vedligeholdelsesopgaver . Database ledere bruger stored procedures som en måde at optimere ofte anvendte grupper af SQL-kommandoer . Databasen holder den lagrede procedure i en kompileret form, der kører hurtigere end SQL indgivet fra klientprogrammer . Stored Procedure
databaseserveren behandler alle SQL-sætninger der sendes af programmer og brugere. Når den modtager SQL, er det først kontrollerer koden for korrekthed og optimerer det til den bedste ydelse , så det udfører de erklæringer og returnerer resultatet til brugeren. Hvis du bruger visse grupper af SQL hyppigt, det er fornuftigt at oprette lagrede procedurer dem , da dette lader serveren gemme kommandoerne i en form , der allerede er testet og optimeret . En lagret procedure er simpelthen et sæt af SQL-kommandoer , du gemmer ved hjælp af CREATE PROCEDURE erklæring. Du leverer SQL-kommandoer og et navn , og databasen leder skaber en ny post i sin liste over lagrede procedurer . For at bruge den procedure , blot give navnet efterfølges af eventuelle inputparametre .
Indgangsparametre
Når du opretter en lagret procedure , kan du eventuelt angive en række parametre proceduren vil bruge . Du definerer de parametre som variabler begynder med et "@" efterfulgt af parameter data type, såsom tegn, heltal eller dato. Hvis proceduren har mere end én indgang parameter , du adskille dem med kommaer . Nogle versioner af SQL , såsom Oracle , kræver, at du bruger ordet "IN " for at angive en input parameter. Andre, såsom Microsofts SQL Server , påtage sig en input parameter , medmindre du bruger ordet "OUTPUT ", i hvilket tilfælde procedure bruger parameteren for output.
Outputparametre
< br >
lagrede procedure kan have nogen parametre eller enhver blanding af input og output parametre. Du leverer input parametre , når du anvende proceduren og proceduren returnerer output-parametre for dig, eller et program , da proceduren er færdig . For at angive en output parameter , bruger ordet OUT eller OUTPUT efter parameter datatype
Bruger
Lagrede procedurer har to vigtige fordele: . De kører hurtigere end standard SQL udtalelser, og de reducerer kedsommelige ofte maskinskrevne kommandoer. For eksempel, hvis du har databasetabeller anvendes til afprøvning af , at du ofte rydde ud med truncate TABLE kan du pakke dem sammen i en lagret procedure . Hvis du ændrer oplysninger i visse databasetabeller , kan du oprette en lagret procedure med inputparametre , der accepterer de nye data. At fodre resultaterne af et sæt SQL-sætninger til et andet sæt , skal du bruge en lagret procedure med output parametre.