2011-09-15 53 views
1

在HTML5 webSQL中,我正在事務對象中運行SELECT查詢。HTML5 webSQL爲什麼要在事務中進行SELECT查詢?

爲什麼我需要將它包裝在交易中?

是否有任何替代方法來運行它沒有交易?

db.transaction(function(tx) { 
    tx.executeSql('SELECT id FROM username', [], function(tx, rs){ 
    ... 
    ... 

    }); 
}); 

回答

3

web-sql processing model需要交易聲明。事務指示數據庫將多個操作視爲一個單元。在事務塊內的所有操作都成功執行之前,不會提交對查詢請求的數據的更改。通過在事務中鎖定數據庫來防止UPDATE/SELECT競爭條件。

+0

thnx for reply。真的是一個好點+1 –

相關問題