開始後COMMITED行:請選擇檢索鑑於這種情況下交易
TIME TRANSACTION 1 TRANSACTION 2
1sec BEGIN
2sec INSERT RECORDS INTO T1
3sec (doing other things) BEGIN
4sec (doing other things) (doing other things)
5sec COMMIT (doing other things)
6sec SELECT * FROM T1 <<- GETS ROWS INSERTED BY T1
據Postgres的文檔:
還要注意的是兩個連續的SELECT命令可以看到不同的數據, 即使它們在單個交易中,但如果其他 交易在第一個選擇執行期間提交更改
問題是:如何避免SELECT
在事務開始和查詢開始之間獲取行提交。