sql >> Databasteknik >  >> RDS >> Oracle

JDBC-anslutningens standardbeteende för autoCommit

Från Oracle JDBC-dokumentation:

När en anslutning skapas är den i auto-commit-läge. Detta innebär att varje enskild SQL-sats behandlas som en transaktion och committeras automatiskt direkt efter att den har körts. (För att vara mer exakt är standardinställningen att en SQL-sats begås när den är klar, inte när den exekveras. En sats är klar när alla dess resultatuppsättningar och uppdateringsantal har hämtats . I nästan alla fall är dock ett uttalande slutfört, och därför begåtts, direkt efter att det har utförts.)

Den andra saken är - du har utelämnat anslutningsskapande detaljer, så jag gissar bara - om du använder några ramverk, eller skaffar en anslutning från en datakälla eller anslutningspool, autocommit kan vara off genom dessa ramverk/pooler/datakällor - lösningen är att aldrig lita på standardinställningar;-)




  1. SQL Server:hur man imiterar Oracle Keep dense_rank-frågan?

  2. Radnummer med icke-deterministisk ordning

  3. TO_CHAR(datetime) Funktion i Oracle

  4. Har Oracle en motsvarighet till SQL Servers tabellvariabler?