使用事務操作SQLite資料庫

2021-06-02 09:51:03 字數 532 閱讀 8742

使用sqlitedatabase的begintransaction()方法可以開啟乙個事務,程式執行到endtransaction() 方法時會檢查事務的標誌是否為成功,如果程式執行到endtransaction()之前呼叫了settransactionsuccessful() 方法設定事務的標誌為成功則提交事務,如果沒有呼叫settransactionsuccessful() 方法則回滾事務。使用例子如下:

sqlitedatabase db = ....;

db.begintransaction();//開始事務

try );

db.execsql("update person set name=? where personid=?", new object);

db.settransactionsuccessful();//呼叫此方法會在執行到endtransaction() 時提交當前事務,如果不呼叫此方法會回滾事務

} finally

db.close();

上面兩條sql語句在同乙個事務中執行。

在SQLite中使用事務

用乙個事務轉賬來實現sqlite的事務處理 下面的person類是已經建立好了的表,在 建立資料庫與完成資料添刪改查 一 中可以看到 1 update person set amount amount 10 where personid 1 2 update person set amount am...

使用事物操作sql資料庫

使用 sqlitedatabase 的begintransaction 方法可以開啟乙個事務,程式執行到 endtransaction 方法時會檢查事 務的標誌是否為成功,如果程式執行到 endtransaction 之前呼叫了 settransactionsuccessful 方法設定事務的 標誌...

Qt連線Sqlite使用事務批量插入資料

dbt1.transaction 開始啟動事務 inqry.prepare insert into datatable values while readdat.atend 繫結資料,順序應與表結構字段資料一致 inqry.addbindvalue listindex 繫結資料 inqry.addb...