java - 如何在sqlite db中保存特定列的历史记录
问题描述
我的应用程序包含 sqlite db,我的问题:如果特定列已更改或更新,是否有方法或方法可以保存和查看特定列的历史记录?我的应用程序基本上是用于项目的输入和输出。一切正常,但我想跟踪项目数量的历史,我无法弄清楚输出项目的代码:
boolean updateexistItemOutput(String itemname, String itemtype ,String itemsTypeOut, double outputQty, double total, double profit, double profitMultiple, double totalProfitSingle,
double totalProfitMultiple, String lastUpdated, String inOrOut, String notes) {
SQLiteDatabase sqLiteDatabase = getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put(column_name, itemname);
contentValues.put(column_outputquantity, outputQty);
contentValues.put(column_itemsType,itemtype);
contentValues.put(column_total, total);
contentValues.put(column_profitSingle, profit);
contentValues.put(column_profitMultiple, profitMultiple);
contentValues.put(column_TotalprofitSingle, totalProfitSingle);
contentValues.put(column_TotalprofitMultiple, totalProfitMultiple);
contentValues.put(column_updateDate, lastUpdated);
contentValues.put(column_inOurOut, inOrOut);
contentValues.put(column_notes,notes);
contentValues.put(column_itemsTypeOut, itemsTypeOut);
return sqLiteDatabase.update(table_Name, contentValues, column_name + "=?", new String[]{itemname}) > 0;
}
解决方案
我认为常见的方法是创建一个记录数据更改的新表 History。
每次更改数据时都应在 History 表中插入一条新记录。
推荐阅读
- c++ - Hash table - adding a rehash to resize method
- kubernetes - Kubernetes podAntiAffinity affects deployment - FailedScheduling - didn't match pod affinity/anti-affinity
- google-apps-script - How can I copy a table with some cells that have an image inside from a doc to another
- android - Items of Recycler View is not showing
- python - Python MySQL - 如果其他列中的值相等,则合并(相加)表中某些列中的值
- python - linux中“find”命令中的子进程stdout readline()编码错误
- python-3.x - 如何抓取没有特定类的文本
- python - 基数为 10 的 int() 的无效文字:'1 2 3 89 4 10'
- javascript - 当我使用 jquery 动态添加新表单输入时,Select2 输入不起作用
- uwp-xaml - 如何将 ContentDialog 添加到我的 XAML 而不会收到有关它的错误消息?