Oracle CURSOR FOR UPDATE (Čeština)
Shrnutí: v tomto výukovém programu se naučíte, jak používat aktualizovatelný kurzor Oracle k aktualizaci dat v tabulce.
Úvod do aplikace Oracle Cursor PRO AKTUALIZACI
Někdy chcete sadu řádků uzamknout, než je budete moci aktualizovat ve svém programu. Oracle poskytuje klauzuli FOR UPDATE
příkazu SELECT
v aktualizovatelném kurzoru, aby provedl tento druh uzamykacího mechanismu.
Zde je syntaxe pro deklaraci aktualizovatelného kurzoru:
Nová syntaxe je zde FOR UPDATE
klíčová slova.
Jakmile otevřete kurzor, Oracle uzamkne všechny řádky vybrané příkazem SELECT ... FOR UPDATE
v tabulkách uvedených v FROM
klauzule. A tyto řádky zůstanou uzamčené, dokud se kurzor nezavře nebo dokud nebude transakce dokončena pomocí COMMIT
nebo ROLLBACK
.
Všimněte si, že Oracle uzamkne všechny řádky vrácené SELECT ... FOR UPDATE
během aktualizace, proto byste měli mít klauzuli WHERE
, abyste vybrali pouze nezbytné řádky být uzamčen.
Pokud máte konkrétní sloupec, který chcete aktualizovat, můžete jej uvést v klauzuli FOR UPDATE
takto:
V tomto případě Oracle uzamkne pouze řádky tabulky, jejichž název sloupce je uveden v klauzuli FOR UPDATE OF
.
Upozorňujeme, že pokud použijete pouze klauzuli FOR UPDATE
a po klíčovém slově OF
nezadáte jeden nebo více sloupců, Oracle poté uzamknout všechny vybrané řádky ve všech tabulkách uvedených v klauzuli FROM
.
Příklad Oracle Cursor FOR UPDATE
Zvažte následující příklad.
Jak to funguje.
- Nejprve deklarujte aktualizovatelný kurzor, který aktualizuje kredity zákazníků, jejichž kredity jsou větší než nula.
- Další , smyčka přes řádky v kurzorech.
- Poté získejte počet objednávek pro každého zákazníka.
- Poté přiřaďte přírůstek kreditu na základě počtu objednávek.
- Nakonec aktualizujte kredit zákazníka.
V tomto výukovém programu jste se naučili používat aktualizovatelný kurzor Oracle k aktualizaci dat v tabulce.
- Byl tento výukový program užitečný?
- Ano Ne