sql >> Database >  >> RDS >> Oracle

Is COMMIT vereist na elke ONMIDDELLIJKE UITVOERING?

De enige keren dat u zich echt moet committeren, behalve aan het einde van een zakelijke transactie, zijn:

  1. Bij het uitvoeren van DDL:de DDL-uitvoering is verpakt in een paar impliciete commits.
  2. Na direct pad invoegen:de tabel kan niet worden gelezen totdat de invoeging is vastgelegd.

Zoals Horsey opmerkt, is het juiste punt om vast te leggen wanneer de zakelijke transactie is voltooid. Anders moet u zelf wat code schrijven om gedeeltelijk voltooide en vastgelegde transacties te detecteren en op te lossen die de database in een logisch inconsistente toestand hebben verlaten (bijv. Er bestaat een INVOICE-record zonder INVOICE_DETAIL-records).



  1. Krijg alles na en voor een bepaald teken in SQL Server

  2. [Laravel]:SQLSTATE[3F000]:Ongeldige schemanaam

  3. Hoe gebruik je een percentage (%) in een LIKE zonder dat het als een jokerteken wordt behandeld?

  4. PostreSQL 10 start niet op Ubuntu 18.04 op het Windows-subsysteem voor Linux