首页 > 解决方案 > 如何在 android 中记录查询 SQLite 查询?

问题描述

我正在使用如下代码。有什么方法可以为我们查看或记录它吗?运行该查询时。例如,我想记录所有 INSERT、UPDATE、DELETE 查询以保存在我的另一个表中。

我找到了许多其他答案,但仍然无法解决这个问题。

这是例如在 INSERT 上获取日志查询的代码:

// --- add addProductServiceCategory ---//
public long addProductServiceCategory(ProductServiceCategory productServiceCategory){
    SQLiteDatabase db = this.getWritableDatabase();
    ContentValues values = new ContentValues();
    values.put(ProductServiceCategoryColumn.Entry.ID, productServiceCategory.id);
    values.put(ProductServiceCategoryColumn.Entry.PROJECT_ID, productServiceCategory.project_id);
    values.put(ProductServiceCategoryColumn.Entry.TITLE, productServiceCategory.title);
    values.put(ProductServiceCategoryColumn.Entry.CREATE_AT, productServiceCategory.created_at);
    values.put(ProductServiceCategoryColumn.Entry.UPDATE_AT, productServiceCategory.updated_at);

    long todo_id = db.insert(ProductServiceCategoryColumn.Entry.TABLE_PRODUCT_SERVICE_CATEGORY, null, values);
    return todo_id;
}

示例:我有一个表名 tbl_log_queries。在这张表中,我想存储记录的查询。

这是我的 tbl_log_queries

标签: androidsqlite

解决方案


围绕 SQLiteDatabase 编写一个包装类,在运行之前记录查询。使用它而不是直接使用 SQLiteDatabase。


推荐阅读