2
我在桌面上有一個觸發器,我不想在特定的上下文中觸發。如何鎖定SQLite數據庫?
爲了做到這一點,我打算:
- 鎖定數據庫
- 跌落觸發
- 執行我的操作
- 將觸發
- 解鎖數據庫
鎖定數據庫是必要的,所以其他線程嘗試執行的任何操作都將暫停,直到觸發器恢復到位。我如何從C代碼執行此操作?
我在桌面上有一個觸發器,我不想在特定的上下文中觸發。如何鎖定SQLite數據庫?
爲了做到這一點,我打算:
鎖定數據庫是必要的,所以其他線程嘗試執行的任何操作都將暫停,直到觸發器恢復到位。我如何從C代碼執行此操作?
使用BEGIN TRANSACTION
和COMMIT TRANSACTION
SQL在a transaction執行工作:
BEGIN TRANSACTION;
DROP TRIGGER dbname.triggername;
(do other stuff)
CREATE TRIGGER ...;
COMMIT TRANSACTION;