这可能更像是一个设计问题,但在这里。我正在编写一个使用本地 SQLite 数据库(带有多个表)的 Android 应用程序,该数据库时不时地与 MySQL 数据库同步。我只想更新数据库中修改过的行。为此,我将last_modified
在每一行中添加一列“”,以指示添加/更新/替换/等该行的时间。
我是数据库操作的新手,但我已经看到触发器可能是执行此操作的最佳方法。我有几个关于触发器、SQLite 和 Android 的问题。
我已经阅读了这个链接:on update current_timestamp with SQLite它基本上说我使用了正确的方法。我的问题是:
- 我应该把
db.execSQL("CREATE TRIGGER...")
声明放在哪里?在我创建表之前还是之后? - 我可以对数据库中的每个表使用相同的触发器吗?即,触发器能否自动检测正在更新/插入/替换/等的表和行?并通知设置该行的“
last_modified
”字段,还是我必须为每个表创建一个单独的触发器? - 由于我对数据库操作很陌生,您能否提供一个执行上述行为的示例 Android Trigger 语句,或者为示例提供资源?
或者如果触发器是一个坏主意,有没有更好的选择?
谢谢你。