Բովանդակություն:

Ինչն է առաջացնում տվյալների բազայի փակուղիներ:
Ինչն է առաջացնում տվյալների բազայի փակուղիներ:

Video: Ինչն է առաջացնում տվյալների բազայի փակուղիներ:

Video: Ինչն է առաջացնում տվյալների բազայի փակուղիներ:
Video: MySQL | SQL Սկսնակների համար։ Դասընթաց 2024, Նոյեմբեր
Anonim

Ա փակուղի տեղի է ունենում, երբ երկու (կամ ավելի) գործարքներ արգելափակում են միմյանց՝ կողպեքներ պահելով այն ռեսուրսների վրա, որոնք նույնպես անհրաժեշտ են գործարքներից յուրաքանչյուրին: Օրինակ. Գործարք 1-ը փակցված է Ա աղյուսակում: Մարդկանց մեծամասնությունը կգրի դա փակուղիներ հնարավոր չէ խուսափել բազմակի օգտագործողի մեջ տվյալների բազա.

Այսպիսով, ինչ է փակուղիները տվյալների բազայում:

Փակուղիներ . Մեջ տվյալների բազա , ա փակուղի իրավիճակ է, երբ երկու կամ ավելի գործարքներ սպասում են, որ մեկը մյուսին հրաժարվի կողպեքներից: Օրինակ՝ A գործարքը կարող է արգելափակել Հաշիվների աղյուսակի որոշ տողեր և ավարտելու համար անհրաժեշտ է թարմացնել պատվերների աղյուսակի որոշ տողեր:

Նաև գիտեք, արդյոք ընտրյալը կարող է փակուղի առաջացնել: 2 Պատասխաններ. Փակուղի տեղի է ունենում, երբ հարցումներից մեկը ձեռք է բերում կողպեք օբյեկտի վրա (տողեր, տվյալների էջեր, ծավալներ, աղյուսակներ և այլն), և այլ ռեսուրս փորձում է մուտք գործել այն: SQL Server-ի ամենափոքր միավորը տվյալների էջերն են, և SQL-ն կողպում է էջի վրա աշխատելիս: Այսպիսով, այո, հնարավոր է, որ երկուսը ընտրել հայտարարություն կարող է ստեղծել փակուղի.

Բացի այդ, ինչպե՞ս կարող ենք կանխել տվյալների բազայի փակուղին:

Խորհուրդներ փակուղուց խուսափելու համար

  1. Համոզվեք, որ տվյալների բազայի ձևավորումը պատշաճ կերպով նորմալացված է:
  2. Մշակեք հավելվածներ՝ ամեն անգամ սերվերի օբյեկտներին նույն հերթականությամբ մուտք գործելու համար:
  3. Թույլ մի տվեք օգտատերերի մուտքը գործարքների ընթացքում:
  4. Խուսափեք կուրսորներից:
  5. Գործարքները հնարավորինս կարճ պահեք:

Ինչպե՞ս եք շտկում փակուղին:

Խելացի ծրագրավորողը փակուղուց դուրս գալու համար պետք է կատարի հետևյալ քայլերը

  1. Ստուգեք 1205 համարի սխալը, երբ բացառություն է արվում:
  2. Համառոտ դադարեցրեք հավելվածը, որպեսզի մյուս հարցմանը ժամանակ տրամադրեք իր գործարքն ավարտելու և ձեռք բերված կողպեքները ազատելու համար:
  3. Կրկին ուղարկեք հարցումը, որը հետ է վերադարձվել SQL Server-ի կողմից:

Խորհուրդ ենք տալիս: