Сакталган жол-жоболору жогорку натыйжалуулугун куткар жана жөлөк
Microsoft SQL Server алуу блокторго Transact-SQL билдирүүлөрдү бириктирүүчү маалымат базаларын иштеп чыгуу жараянын жөнөкөйлөтүү сакталуучу механизмин камсыз кылат. Сакталган тартиби алар арзырлык убагында төлөнөт салым болуп оруп натыйжалуулук жана коопсуздук пайда табууга көпчүлүк SQL Server иштеп баалашат.
Сакталат тартиби колдонуу артыкчылыктары
Эмне үчүн иштеп колдонуу сакталган жол-жоболорду керек?
Мына ушул технология негизги пайдасы:
- Precompiled аткаруу: SQL Server бир жолу ар бир сакталган тартибин түзөт, андан кийин аткаруу планын reutilizes. сакталган жол-жоболору бир нече жолу чакырып жатканда бул эбегейсиз зор иштин күчтөндүрүүгө алып келет.
- Азайтылган кардар / Server жол кыймылы: тармак жөндөмдүүлүгү сенин айлана-чөйрөгө кам көрүү, анда сиз ошол эле сакталган жол-жоболорду зым аркылуу жеткирилет бир линияга узак SQL суроо кыскартууга болот, сүйүнүп кетет.
- Коду жана программалоо топтоо натыйжалуу кайра: сакталат тартипте бир нече колдонуучулар жана кардар программалары менен колдонсо болот. Эгер белгиленген тартипте аларды пайдаланган болсо, анда өнүгүү цикл аз убакыт талап кылынат таба аласыз.
- Жакшыртылган коопсуздук башкаруу: Сиз негизги жадыбал уруксаттарды өз алдынча сакталган тартибин ишке ашыруу үчүн пайдалануучулар уруксат бере алат.
Сакталган жол колдонуучу аныкталган милдетин окшош, бирок тымызын айырмачылыктар бар.
түзүлүш
Сакталган жол-жоболор жана башка программалоо тилинде көргөн мдъг окшош.
Алар аткаруу убагында көрсөтүлгөн киргизүү параметрлеринин түрүндө маалыматтарды кабыл алуу. Бул киргизүү параметрлери (ишке болсо) кээ бир натыйжа отчеттун бир нече аткаруу менен колдонулууда. Бул жыйынтык жазылыштар, чыгыш параметрлери жана кайра коду пайдалануу менен чалуу чөйрөгө кайтарылып берилет.
Бул нерсе тиленбеген сыяктуу сезилиши мүмкүн, бирок сакталган жол-жоболору, чынында, абдан жөнөкөй экенин таба аласыз.
мисал
бул беттин ылдый жагында көрсөтүлгөн жадыбал деген тактоо менен байланышкан практикалык мисалды карап көрөлү. Бул маалымат реалдуу убакытта жана кампа жетекчилери дайыма кампасынан ташып кетүүнү жана жүктөп алуу үчүн жеткиликтүү боюнча сакталып жаткан азык-түлүктөрдүн көлөмүн текшерип жатабыз турат. Буга чейин ар бир менеджер төмөнкү окшош сурамдарды чуркап келет:
SELECT өнүм, сом менен саны
FROM Тизмелөөгө
Склад = 'FL "
Бул SQL Server боюнча натыйжасыз ишинин жыйынтыгы. складдык менеджер суроого аткарылган ар бир жолу, базасына Server суроого recompile жана нөлдөн баштап, аны ишке ашыруу үчүн аргасыз болгон. Ал ошондой эле стол маалыматты алуу үчүн SQL жана тиешелүү уруксат билимге ээ складдык менеджер керек.
Анын ордуна, кайра бир сакталган тартипте пайдалануу аркылуу жөнөкөйлөтүлгөн болот. Бул жерде бир склад үчүн жолу көлөмүн издейт sp_GetInventory деген тартиби коду болот.
ТҮЗҮҮ ТАРТИБИ sp_GetInventory
@location varchar (10)
AS
SELECT өнүм, сом менен саны
FROM Тизмелөөгө
КАЙДА склад = @location
Florida складдык менеджер кийин буйрук берүү менен жолу көлөмүн колдоно алат:
Ишке sp_GetInventory 'FL "
New York складдык башкаруучу ошол жердин запастарын кирүүгө бирдей сакталган тартибин колдоно аласыз:
Ишке sp_GetInventory 'NY "
Албетте, бул жөнөкөй эле мисал, ал эми абстракттуу пайда жерден көрүүгө болот. складдык менеджер SQL же тартибин ички иштерин да керек эмес. аткаруу көз карашы менен алганда, сакталуучу керемет. SQL Server Мурун аткаруу планын түзөт жана аткаруу учурунда тиешелүү параметрлери тууралуу ойлонбойбуз менен reutilizes.
Эми сиз сакталган жол пайда үйрөнгөн деп, ал жакка алып жана аларды пайдалануу.
бир нече мисал аракет жана аткаруу жабдууларды жетишилген олку-солку болбой калып турган өлчөө!
жолу токтому
ID | продукт | товар сактоочу бөлмө | сан |
142 | бурчак | NY | 100 |
214 | Peas | FL | 200 |
825 | дан | NY | 140 |
512 | Лима буурчак | NY | 180 |
491 | Tomatoes | FL | 80 |
379 | дарбыз | FL | 85 |