SQL Server պահված կարգը

Պահված ընթացակարգերը մատուցում են բարձր արդյունավետություն եւ անվտանգություն

Microsoft SQL Server- ը ապահովում է պահվող ընթացակարգի մեխանիզմ, հեշտացնել տվյալների բազայի մշակման գործընթացը, խմբավորելով Transact-SQL- ի հայտարարությունները կառավարելի բլոկների մեջ: Պահված ընթացակարգերը գնահատվում են շատ SQL Server- ի մշակողների կողմից, ովքեր գտնում են արդյունավետության եւ անվտանգության օգուտները, որոնք նրանք հնձում են լավ ժամանակի ընթացքում կանխավճարային ներդրումների համար:

Պահված ընթացակարգերի օգտագործման առավելությունները

Ինչու պետք է մշակողը պահպանի ընթացակարգերը:

Ահա այս տեխնոլոգիայի հիմնական օգուտները.

Պահված ընթացակարգերը նման են օգտագործողի կողմից սահմանված գործառույթներին, սակայն կան նուրբ տարբերություններ:

Կառուցվածք

Պահված ընթացակարգերը նման են այլ ծրագրավորման լեզուներով տեսած կառուցվածքներին:

Նրանք ընդունում են տվյալների ներածման պարամետրերի ձեւ, որոնք նշված են կատարման ժամանակ: Այս ներդրման պարամետրերը (եթե իրականացվում են) օգտագործվում են մի շարք հայտարարությունների կատարման արդյունքում, որոնք արդյունք են տալիս: Այս արդյունքը վերադարձվում է զանգահարող միջավայրի `գրառումների, արտադրանքի պարամետրերի եւ վերադարձ կոդը օգտագործելու միջոցով:

Դա կարող է հնչյուններ հնչեցնել, բայց դուք կգտնեք, որ պահված ընթացակարգերը իրականում շատ պարզ են:

Օրինակ

Եկեք նայենք գործնական օրինակին, որը վերաբերում է սեղանի այս էջի ներքեւում նշված գույքագրմանը: Այս տեղեկատվությունը թարմացվում է իրական ժամանակում, եւ պահեստային մենեջերները մշտապես ստուգում են իրենց պահեստում պահվող արտադրանքի մակարդակը եւ առաքման համար մատչելի: Նախկինում յուրաքանչյուր մենեջեր առաջադրվելու էր հետեւյալ հարցերի նման:

SELECT ապրանքը, քանակությունը
Գրապահոցից
WHERE Պահեստ = 'FL'

Սա հանգեցրել է SQL Server- ի անարդյունավետ կատարմանը: Ամեն պահեստային մենեջերը կատարում է հարցումը, տվյալների բազայի սերվերը ստիպված էր վերահղել հարցումը եւ զրոյից կատարել այն: Այն նաեւ պահանջեց պահեստային մենեջերին ունենալ SQL- ի գիտելիքներ եւ համապատասխան թույլտվություններ, սեղանի տեղեկատվության համար:

Փոխարենը, գործընթացը կարող է պարզեցվել պահված ընթացակարգի միջոցով: Ահա sp_GetInventory անունով ընթացակարգի կոդը, որը վերցնում է տվյալ պահեստի գույքագրման մակարդակները:

Ստեղծել PROCEDURE sp_GetInventory
@ տեղը varchar (10)
Ա
SELECT ապրանքը, քանակությունը
Գրապահոցից
WHERE Warehouse = տեղակայումը

Ֆլորիդայի պահեստների կառավարիչը կարող է մուտք գործել գույքագրման մակարդակ `հրահանգ տալով,

Կատարել sp_GetInventory 'FL'

Նյու Յորքի պահեստի կառավարիչը կարող է օգտագործել նույն պահեստային ընթացակարգը `այդ տարածքի գույքագրման համար:

Կատարել sp_GetInventory 'NY'

Ճիշտ է, սա պարզ օրինակ է, բայց այստեղ կարելի է տեսնել Աբստրակցիային օգուտները: Պահեստի կառավարիչը կարիք չունի հասկանալ SQL- ի կամ ընթացակարգի ներքին աշխատանքը: Իրականացման տեսանկյունից պահվող ընթացակարգը հրաշքներ է գործում: SQL Server- ը ստեղծում է կատարման պլան մեկ անգամ, այնուհետեւ reutilizes it `կատարելով համապատասխան պարամետրերի կատարման ժամանակ:

Այժմ, երբ դուք սովորել եք պահպանվող ընթացակարգերի առավելությունները, դուրս գալ այնտեղից եւ օգտագործել դրանք:

Փորձեք մի քանի օրինակ եւ չափեք ձեռք բերված կատարողական սարքավորումները, դուք զարմանում եք:

Գրապահոց աղյուսակ

ID- ն Ապրանք Պահեստ Քանակ
142 Կանաչ լոբի NY 100
214 Peas Ֆլ 200
825 Եգիպտացորեն NY 140
512 Լիմայի լոբի NY 180
491 Լոլիկ Ֆլ 80
379 Ձմերուկ Ֆլ 85