由於SQLite中SQL語句不支持事務,我們可以通過SQLConnection類的與事務相關的方法 可使用此功能:SQLConnection.begin()、SQLConnection.commit() 和 SQLConnection.rollback()來實現事務功能。
事務實例代碼:
import mx.controls.Alert;
private var con:SQLConnection;private function initApp():void
{
var file:File = File.applicationStorageDirectory.resolvePath("myTestdb.db")
con = new SQLConnection();
var stmt:SQLStatement = new SQLStatement();try
{
con.open(file);
con.begin();
stmt.sqlConnection=con;
stmt.text="INSERT INTO emp (firstName, lastName, salary) VALUES ('f', 'l', 1110)";
stmt.execute();
con.commit();
}
catch(err:SQLError)
{
con.rollback();
Alert.show(err.message);
}
}
事務由begin()方法開始,如果在執行commit之前拋出異常,將會執行rollback()方法,自動回滾.
很簡單很容易看懂.