заключване режими

заключване режими определят различни видове брави. Изборът на режим на заключване, които се прилагат в зависимост от ресурсите, с които искате да блокирате. Следващите три вида брави се използват за заключване на ниво ред и на ниво страница:

♦ споделен (обща, S);

♦ изключителен (ексклузивен, E);

♦ актуализация (актуализация, XJ).

Изключителен заключване запазва страница или низ за изключително използване в една сделка. Той се използва за оператори на ГСД (вмъкване, обновяване или изтриване), който променя ресурса. Изключителен заключване не може да се настрои, ако някой друг процес продължава споделен или изключително заключване на този ресурс, който е. Д. Само един изключително заключване може да съществува в продължение на ресурса. След като на страницата (или ред) е настроен изключително заключване, никой друг заключване не може да се инсталира на същия ресурс.

Заключване на ниво страница също така дава възможност за заключване мишена, която е описана по-нататък в този раздел.

заключване актуализация може да се настрои само ако няма други актуализация брави или изключителни брави. В този случай, тя може да бъде инсталиран на сайтове, които вече имат общ заключване. В този случай, заключването на актуализация получава и друг сподели заключване на един и същ обект. Ако сделката, която променя обекта се потвърди, актуализира ключалката се заменя с изключително заключване, ако обектът не съществува други ключалки.

заключване Актуализация предотвратява някои общи видове мъртвите зони. (Мъртвите зони са описани по-нататък в този раздел.)

Таблица. 13.1 показва матрицата съвместимост на споделени и изключително заключване и заключване на ъпгрейд. Тази матрица се тълкува както следва: предполагам транзакция T \ заключване, както е показано в първата колона на матрицата; Ние също така се предположи, че някой друг сделка 7? Това изисква заключване, както е посочено в съответната колона заглавието. В този случай, "Да" означава, че ключалката на Тд може, а с "не" показва конфликт със съществуващ заключване.

Таблица 13.1. Matrix Съвместимост споделени и изключително заключване и заключване на актуализации

Database Engine поддържа и други форми на заключване, като резе за заключване и заключващи устройства.

Има пет различни видове брави на ниво таблица:

♦ споделен (обща, S);

♦ изключителен (изключителна, X);

♦ споделена заключване с план (намерение сподели, Е);

♦ изключително заключване с план (намерение изключителен, IX);

♦ споделена заключване с намерение изключителен достъп (споделен с намерение изключителен, шест).

Споделено и изключителни ключалки на съответното ниво на заключване линия (или страница) със същото име. Като правило, се заключва с намерение да показва намерението за създаване на катинар на ресурсите по-ниско ниво в йерархията на обекти на базата данни. Поради това, блокирането на ходене поставя в йерархия на едно ниво по-горе обект, че този процес е предназначен за блокиране. Това е ефективен начин да разберете дали такова блокиране е възможно, също така забранява на други процеси, за да се блокира по-високо ниво, преди да е постигнато необходимото ключалката.

Таблица. 13.2 показва спектър на съвместимост на всички видове маса ключалки. Тълкуване на тази матрица отговаря точно на тълкуването на матрицата в таблица. 13.1.

Таблица 13.2. Съвместимост Матрицата всички видове заключване на таблици