我需要從許多使用SQLite的應用程序中記錄查詢,不僅插入/更新/刪除,還可以選擇其他查詢。在這種情況下,嚮應用程序引入日誌記錄在實踐中不是一個可行的解決方案。那麼如何在SQLite中啓用查詢日誌?SQLite的SQL查詢日誌記錄?
回答
看看sqlite Trace API。你必須自己實現回調。
void *sqlite3_trace(sqlite3*, void(*xTrace)(void*,const char*), void*);
通過
sqlite3_trace()
註冊的回調函數在不同的時間被調用時SQL語句是由sqlite3_step()
運行。當語句首先開始執行時,回調將返回SQL語句文本的UTF-8呈現。當輸入每個觸發的子程序時會發生額外的回調。
好的,所以你基本上說我需要編寫日誌記錄代碼。我想知道是否有人已經這樣做了,對於這樣的常見用例? – 2009-10-22 14:04:34
您必須編寫COMMAND來調用**內置**跟蹤機制。 – 2009-10-22 14:15:01
sqlite3_trace api不會顯示綁定。如果你使用包裝類,你可能想要自己記錄sql語句和參數。 – eodonohoe 2009-10-22 14:53:08
- 1. Hibernate查詢(不是SQL)日誌記錄
- 2. Zend啓用SQL查詢日誌記錄
- 3. Oracle SQL查詢日誌記錄
- 4. CakePHP中的MySQL查詢日誌記錄
- 5. ServiceStack OrmLite查詢日誌記錄
- 6. laravel禁用查詢日誌記錄
- 7. Cassandra OpsCenter緩慢查詢日誌記錄
- 8. 禁用Spring批量SQL查詢的日誌記錄
- 9. 適用於SQL中日誌記錄表的查詢和索引
- 10. SQL Server日誌記錄失敗的查詢
- 11. PostgreSQL對.sql腳本的查詢/錯誤日誌記錄
- 12. 使用註釋的iBatis - SQL查詢日誌記錄
- 13. 將DEBUG設置爲False的日誌記錄Django SQL查詢
- 14. Development.log日誌文件不記錄Rails的SQL查詢
- 15. 用於日誌記錄的SQLite跟蹤
- 16. 慢查詢日誌中記錄更快的查詢日誌文件中
- 17. RoR:在生產日誌中記錄SQL查詢
- 18. mysql的慢查詢日誌記錄是查詢速度更快
- 19. 在查詢繁重的網站查詢日誌記錄情況
- 20. 使用SQLite進行日誌記錄
- 21. MySQL慢速查詢日誌記錄快速查詢
- 22. SQL Server - 查詢日誌?
- 23. Java日誌記錄:它是日誌還是日誌記錄器?
- 24. MySQL - 事務日誌記錄 - binlog?一般查詢日誌?登錄到數據庫?
- 25. 在SQLite中啓用查詢日誌3
- 26. Websphere 6.1中的SQL日誌記錄
- 27. SQL Server的dml錯誤日誌記錄
- 28. ADO.net中的SQL事件日誌記錄
- 29. 問題與SQL查詢查找SQL日期之間的記錄
- 30. 記錄NHibernate的SQL查詢
只需添加更多信息,如果您在應用程序中使用SQLite,則應該爲應用程序整體使用不同的日誌記錄系統,而不是要求內置SQLite函數。 – 2010-12-23 21:07:42
[在sqlite數據庫中保留一個日誌表?](https://stackoverflow.com/questions/422951/keeping-a-log-table-in-sqlite-database) – user4157124 2018-02-15 15:06:42
這不是,因爲另一個問題只記錄對數據的修改,而這裏的想法是記錄像select這樣的查詢。編輯原始問題以明確此區別。 – 2018-02-18 04:25:43