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

2021-10-04 20:42:04 字數 865 閱讀 4889

dbt1.

transaction()

;//開始啟動事務

inqry.

prepare

("insert into datatable values (?,?,?)");

while

(!readdat.

atend()

)//繫結資料,順序應與表結構字段資料一致

inqry.

addbindvalue

(listindex)

;//繫結資料

inqry.

addbindvalue

(tmstamp)

;//繫結資料

inqry.

addbindvalue

(dtdata)

;//繫結資料

inqry.

execbatch()

;//進行批處理操作

dbt1.

commit()

;//提交事務,此時開啟資料庫檔案執行sql語句

//不加下面三句,重複操作上面語句時,資料庫不會有新的新增

//因為作為主鍵的listindex內有原資料,此時資料庫不會儲存主鍵值重複的內容

listindex.

clear()

;tmstamp.

clear()

;dtdata.

clear()

;

dbt1.

transaction()

;while

(!readdat.

atend()

)dbt1.

commit()

;

在SQLite中使用事務

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

sqlite 啟用事務

插入3000條資料,兩分鐘沒插完。然後去網上找辦法,才知道大批量資料插入需要用事物,否則效率會很低。原文如下 insert時,沒有使用事務的sqlite速度的確很慢 啟用事務後,速度大大的提高了。1 啟用事務 php link sqlite open c test.db sqlite query l...

使用事務操作SQLite資料庫

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