Транзакциялар және құлыпталу
Презентация қосу
Транзакциялар және
құлыпталу.
Орындаған: Қусманов А.Қ
АУ-301
Тексерген: Мухаметов Е.М.
1. Транзакция – бұл Transact-SQL командасының
реттелген жиынтығы. Бүтіндей орындалатын
қисынды аяқталу блогы. Транзакцияда командалар
саны шектелмеген және ол әрі қарай жұмыс істей
береді. Тек транзакцияны итергенде ғана
орындалмайды. Мұндай жағдайда жүйе қалпына
келтіріліп барып, басынан бастап жұмыс
жасалады. Жүйенің алғашқы қалпы туралы
мәлімет транзакцияның журналында сақталған.
Транзакцияға қосылған командалар жиыны келесі
міндетті қанағаттандыру қажет:
1. атомарность – транзакцияға қосылған командалар блогы
тек тұтастай ғана орындалады немесе орындалмайды ;
2. келісім – транзакция орындалып болғаннан кейін, барлы қ
мәліметтер келісім қалпында болу керек ;
3. шектеу – орындалып жатқан транзакцияны ң мәліметтерін
өзгерту басқа транзакциялардың өзгеруіне қатысты болмайды,
яғни әр түрлі өзгерістегі транзакцияларға шектеу қойылады.
Транзакция мәліметтерді жұмысты бастамас б ұрын қарайды
немесе жұмыс аяқталғаннансоң көреді. Бір транзакция бас қа
транзакцияның өзгерткен мәліметін к өрмейді.
4. Тұрақтылық - транзакция аяқталғаннан кейін, ж үйеде
сақталынады және оны қайтадан қалыпқа келтіре алмайсы ң.
Құлыпталу (блокировка) – бұл уақытша жанама
шектеу. Құлыптау кестенің бір жолына ғана салынуы
мүмкін. Құлыптауды басқарумен оның менеджері
айналысады. Транзакция жұмыс жасап жатқан кезде
ол автоматты түрде қосылып тұрады және керек
кезде зонаның көлемін кеңейтеді. Бір мезгілде бір
мәліметке бірнеше қолданушылар үшін, келесі төрт
мәселе қаралады:
. Транзакциялармен басқару
SQL Server үш басқару транзакцияларымен қамтылады: аны қ, автоматты ж әне
ұқсас.
Анық транзакциялар қолданушыларды ң транзакцияны ң басы мен ая ғын аны қ
көрсеткенін қажет етеді. Transact SQL командасын орындау ар қылы. Аны қ
транзакцияларды басқару мына командалар т үрінде қолданылады:
BEGIN TRAN[SACTION] [<транзакция аты>]
@ <ауыстыру аты>
<транзакция аты> деген жерде транзакция аты қолданылады, <ауыстыру аты> ауыстыру
атын береді. Бір код қолдана отырып бірнеше транзакцияны жасау ға болады.
COMMIT [WORK]
COMMIT [TRAN[SACTION] [<транзакция аты >]
@ <ауыстыру аты>
Транзакцияның аяғы, егер транзакция денесінде қате болмаса, онда ол команда
барлық өзгерістерді серверге тіркейді. Транзакцияда істелінген барлы қ ж ұмыстар оны ң
журналында сақталады.
ROLLBACK [WORK]
ROLLBACK [TRAN[SACTION] [<транзакция аты >]
@ <ауыстыру аты>
Автоматтық транзакция SQL Serverінде үнсіз қойылымда
орнатылады. Бұл режимде әр команда жеке транзакция ретінде
қаралады, яғни команда дұрыс аяқталса онда оның өзгерістері
тіркеледі, кері жағдайда жүйе алғашқ6ы қалпына келеді.
Транзакция тапсырмасы анық режимі бір бүтін команда бірнеше
рет қолданылады. Автоматты және анық емес басталу
транзакциясы негізге режимі болып табылады және сервер осы
режимдердің біреуінде болады. Анық басталу транзакция режимі
басқа екі режим үстімен жұмыс істейді. Автоматты басталу
транзакциясының орнату үшін Transact-SQL команда тілі
орындалады:
Құлыптауларды басқару.
Орнату туралы барлық жұмыстарды арнайы серверде
анықталған менеджермен анықталады. Транзакциялармен
автоматты режим түрінде үнсіз қойылым типі түріндегі
жұмысты жасайды. Бұл жағдайда қандай құлып керек екенін
анық көрсетуге болады.Транзакцияны орындаудың алдында
сәйкес келетін құлыптау сұралады. Бұны менеджер шешеді.
Кейде, егер керекті ресурс құлыптау менеджерімен бос
болмаса, онда сұранысты тоқтатады немесе оны кезекке қояды
және оны орындайды.Осыдан кейін ғана қажет етілген ресурс
құлыптаудан босатылады. Ресурстың құлыптауынан босауды
күту уақыты анық келесі командалармен орындалады:
SET LOCK_TIME OUT <уақыт>
Уақыт деген жерде миллисекунд саны беріледі, ол ресурстың
құлыптауынан босауды күту уақытында.
Қолданушы барынша тез орындалатын доступқа ие
бола алады. Кейде басқа қолданушылар кестенің берілгеніне
қол жеткізе алмайды, себебі транзакция әлі аяқталып болған
жоқ.
SQL Server келесі құлыптаулардың түрлерін береді:
RID – жол деңгейіндегі құлыптау;
KEY – индекс деңгейіндегі құлыптау, мәліметтер
транзакциясындағы өзгерістерге сәйкес келеді;
PAGE – бет деңгейіндегі құлыптау;
EXTERN –extern(а) деңгейіндегі құлыптау;
Table – кесте деңгейіндегі құлыптау;
DB – мәліметтер базасы деңгейіндегі құлыптау.
Ұқсас жұмыстар
Пәндер
- Іс жүргізу
- Автоматтандыру, Техника
- Алғашқы әскери дайындық
- Астрономия
- Ауыл шаруашылығы
- Банк ісі
- Бизнесті бағалау
- Биология
- Бухгалтерлік іс
- Валеология
- Ветеринария
- География
- Геология, Геофизика, Геодезия
- Дін
- Ет, сүт, шарап өнімдері
- Жалпы тарих
- Жер кадастрі, Жылжымайтын мүлік
- Журналистика
- Информатика
- Кеден ісі
- Маркетинг
- Математика, Геометрия
- Медицина
- Мемлекеттік басқару
- Менеджмент
- Мұнай, Газ
- Мұрағат ісі
- Мәдениеттану
- ОБЖ (Основы безопасности жизнедеятельности)
- Педагогика
- Полиграфия
- Психология
- Салық
- Саясаттану
- Сақтандыру
- Сертификаттау, стандарттау
- Социология, Демография
- Спорт
- Статистика
- Тілтану, Филология
- Тарихи тұлғалар
- Тау-кен ісі
- Транспорт
- Туризм
- Физика
- Философия
- Халықаралық қатынастар
- Химия
- Экология, Қоршаған ортаны қорғау
- Экономика
- Экономикалық география
- Электротехника
- Қазақстан тарихы
- Қаржы
- Құрылыс
- Құқық, Криминалистика
- Әдебиет
- Өнер, музыка
- Өнеркәсіп, Өндіріс
Қазақ тілінде жазылған рефераттар, курстық жұмыстар, дипломдық жұмыстар бойынша біздің қор #1 болып табылады.
Ақпарат
Қосымша
Email: info@stud.kz