Sdílet prostřednictvím


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:

  1. Operaci zahájíte voláním členské funkce Edit .

  2. Změníte příslušná pole aktuálního záznamu.

  3. 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ů

  1. Volání funkce SetLockingMode člen, určení buď CRecordset::pessimistic nebo CRecordset::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)