Vistaðar reglur skila háum skilvirkni og öryggisbótum
Microsoft SQL Server veitir geymsluaðferðina til að einfalda þróun gagnagrunnsins með því að sameina Transact-SQL staðhæfingar í viðráðanlegu blokkir. Geymdar aðferðir eru vel þegnar af flestum SQL Server forriturum sem finna skilvirkni og öryggisbætur sem þeir uppskera eru vel þess virði að bjóða upp á fjárfestingu í tíma.
Kostir þess að nota geymdar reglur
Af hverju ætti verktaki að nota geymdar aðferðir?
Hér eru helstu kostir þessarar tækni:
- Forkönnuð framkvæmd: SQL Server samanheimur hverja geymda málsmeðferð einu sinni og þá endurstillir framkvæmd áætlunarinnar. Þetta veldur miklum árangri í uppbyggingu þegar geymdar aðferðir eru kallaðir ítrekað.
- Minni viðskiptavinur / miðlara umferð: Ef bandbreidd netkerfis er áhyggjuefni í umhverfi þínu, munt þú vera fús til að læra að geymdar aðferðir geta dregið úr langan SQL fyrirspurnir á einni línu sem er sendur yfir vírinn.
- Skilvirk endurnotkun kóða og forritunarmyndunar: Geymdar aðgerðir geta verið notaðar af mörgum notendum og forritum viðskiptavinar. Ef þú nýtir þá á fyrirhugaðan hátt finnur þú þróunarlotan tekur minni tíma.
- Auka öryggisstjórnun: Þú getur veitt notendum leyfi til að framkvæma geymsluaðferð óháð undirliggjandi heimildum.
Geymdar aðgerðir eru svipaðar notendaskilgreindum aðgerðum, en það er lúmskur munur.
Uppbygging
Geymdar aðferðir eru svipaðar og byggingar sem sjást á öðrum forritunarmálum.
Þeir samþykkja gögn í formi innsláttarbreytur sem eru tilgreindar á framkvæmdartíma. Þessar innsláttarbreytur (ef þær eru gerðar) eru notaðar við framkvæmd röð yfirlýsingar sem framleiða nokkrar afleiðingar. Þessi niðurstaða er skilað til að hringja umhverfi með því að nota upptökutæki, framleiðsla breytur og afturkóðun.
Það kann að hljóma eins og munnsamur, en þú munt komast að því að geymdar aðferðir eru reyndar mjög einfaldar.
Dæmi
Við skulum skoða verklegt dæmi sem tengist töflunni sem nefnt er sem skráð er neðst á þessari síðu. Þessar upplýsingar eru uppfærðar í rauntíma og vörustjórarnir eru stöðugt að athuga magn vöru sem geymt er á vörugeymslunni og fáanlegt til sendingar. Í fortíðinni myndi hver stjórnandi keyra fyrirspurnir svipaðar eftirfarandi:
VELJA Vara, Magn
Frá birgðum
HVAR Vörugeymsla = 'FL'
Þetta leiddi til óhagkvæmrar frammistöðu á SQL Server. Í hvert skipti sem vörugeymsla framkvæmdastjóri framkvæmdi fyrirspurnina var gagnagrunnsþjónninn neydd til að endurreisa fyrirspurnina og framkvæma það frá grunni. Það krefst einnig að vörustjórinn hafi þekkingu á SQL og viðeigandi heimildum til að fá aðgang að töfluupplýsingunum.
Í staðinn er hægt að einfalda aðferðina með því að nota geymda aðferð. Hér er kóðinn fyrir málsmeðferð sem heitir sp_GetInventory sem sækir birgðahæð fyrir tiltekið vöruhús.
Búðu til ferli sp_GetInventory
@location varchar (10)
AS
VELJA Vara, Magn
Frá birgðum
HVAR Vörugeymsla = @location
The Florida vörugeymsla framkvæmdastjóri getur þá aðgang að birgðum stigum með því að gefa út stjórn:
Framkvæma sp_GetInventory 'FL'
Vörustjórinn í New York getur notað sömu geymsluaðferðir til að fá aðgang að skránni á þessu svæði:
EXECUTE sp_GetInventory 'NY'
Leyfilegt, þetta er einfalt dæmi, en ávinningur af abstraction má sjá hér. Vörustjórinn þarf ekki að skilja SQL eða innri verkferla málsins. Frá frammistöðu sjónarhorni, virkar aðferðin undur. SQL Server býr til framkvæmdaráætlun einu sinni og endurtækir hana síðan með því að tengja við viðeigandi breytur við framkvæmdartíma.
Nú þegar þú hefur lært ávinning af geymdum aðferðum, komdu þangað og notaðu þau.
Prófaðu nokkur dæmi og mæla árangurshækkanirnar sem þú hefur náð - þú verður undrandi!
Skráartafla
Auðkenni | Vara | Vörugeymsla | Magn |
142 | Grænar baunir | NY | 100 |
214 | Peas | FL | 200 |
825 | Korn | NY | 140 |
512 | Lima baunir | NY | 180 |
491 | Tómatar | FL | 80 |
379 | Vatnsmelóna | FL | 85 |