Sada záznamů: Zamykání záznamů (ODBC)
Toto téma se vztahuje na třídy MFC ODBC.
Toto téma vysvětluje:
Když ke aktualizaci záznamu ve zdroji dat použijete sadu záznamů, může aplikace záznam uzamknout, aby ho nikdo jiný uživatel mohl aktualizovat současně. Stav záznamu aktualizovaného dvěma uživateli současně není definován, pokud systém nezaručuje, že dva uživatelé nemohou aktualizovat záznam současně.
Poznámka:
Toto téma se vztahuje na objekty odvozené z toho, ze CRecordset
kterých hromadné načítání řádků nebylo implementováno. Pokud jste implementovali hromadné načítání řádků, některé informace se nevztahují. Nemůžete například volat Edit
členské funkce a Update
funkce. Další informace o hromadném načítání řádků naleznete v tématu Sada záznamů: Načítání záznamů hromadně (ODBC).
Režimy uzamčení záznamů
Třídy databáze poskytují dva režimy uzamykání záznamů:
Optimistické uzamčení (výchozí)
Pesimistické uzamykání
Aktualizace záznamu probíhá ve třech krocích:
Operaci zahájíte voláním členské funkce Edit .
Změníte příslušná pole aktuálního záznamu.
Operaci ukončíte a normálně potvrdíte aktualizaci voláním členské funkce Update .
Optimistické uzamčení uzamkne záznam ve zdroji dat pouze během Update
volání. Pokud v prostředí s více uživateli používáte optimistické uzamčení, měla by aplikace zpracovat chybový Update
stav. Pesimistické uzamčení uzamkne záznam ihned po volání Edit
a nevyvolá ho, dokud ho nezavoláte Update
(selhání se označí mechanismem CDBException
, ne hodnotou FALSE vrácenou Update
). Pesimistické uzamčení má potenciální trest za výkon pro ostatní uživatele, protože souběžný přístup ke stejnému záznamu může muset počkat na dokončení procesu vaší aplikace Update
.
Uzamčení záznamů v sadě záznamů
Pokud chcete změnit režim uzamykání objektu záznamů z výchozího nastavení , je nutné změnit režim před voláním Edit
.
Změna aktuálního režimu uzamčení sady záznamů
- Volání funkce SetLockingMode člen, určení buď
CRecordset::pessimistic
neboCRecordset::optimistic
.
Nový režim uzamčení zůstane v platnosti, dokud ho znovu nezměníte nebo se sada záznamů zavře.
Poznámka:
Relativně málo ovladačů ODBC v současné době podporuje pesimistické zamykání.
Viz také
Sada záznamů (ODBC)
Sada záznamů: Provedení spojení (rozhraní ODBC)
Sada záznamů: Přidávání, aktualizace a odstranění záznamů (ODBC)