[DB] Isolation

Dirty read transaction 還沒 commit,就已經讀得到更新後的結果 NON-repeatable reads 在同個 transaction 使用相同 query 卻讀取到不同資料 ps: dirty read 也是一種 non-repeatable reads Phantom read 在同個 transaction 連續讀取兩次時,讀取出來的筆數跟上次不同 Isolation Level Read Uncommitted: 代表 transaction 可以 »

DB 的 transaction 是什麼?

Transaction (交易) 保證所有資料的操作都只有在成功的情況下才會寫入到資料庫。 最著名的例子也就是銀行的帳戶交易。 只有在帳戶提領金額及存入帳戶這兩個動作都成功的情況下才會將這筆操作寫入 (commit) 資料庫, 否則在其中一個動作因為某些原因失敗的話就會放棄所有已做的操作將資料回復 (rollback) 到交易前的狀態。 »