如何在MySQL数据库中保存用户的所有操作 - Java Application

时间:2014-04-23 08:45:07

标签: java mysql

我制作了一个java应用程序并访问它,你必须登录。

登录有两种类型:admin和普通用户。我想保存有关普通用户所有动作的信息。换句话说,我需要知道哪个用户添加,更改或删除了数据库中的任何内容。

有没有办法做到这一点?

我知道我必须在数据库中创建一个新表,但不知道其他任何事情。有没有人可以帮我澄清我的疑问。

老实说,我甚至不知道从哪里开始。

如果我不清楚,我道歉。

感谢您给我的任何帮助。

问候。

我会尽力解释任何问题。

2 个答案:

答案 0 :(得分:2)

您需要创建一个表格,如:

User   |  FormName  |  Action   |  ActionTime

每当用户执行操作时,都会将数据插入此表中。

例如:

用户添加产品时。将该详细信息插入此表中。 类似的东西:

UserID   |  FormName  |  Action                |  ActionTime
1           Inventory    User added a product     2014-4-4 12:10:00

每当用户添加,编辑,删除任何内容时,您都必须这样做。所以我建议使用static函数。

修改

现在您可以通过以下方式跟踪用户:

SELECT * 
FROM UserActionTable 
WHERE UserID=1

答案 1 :(得分:0)

在数据库上创建触发器,以便从数据库表中插入,更新和删除行。当在那些表上执行任何操作时触发器将自动由数据库在此时添加历史表中的行(数据)。

https://dev.mysql.com/doc/refman/5.0/en/create-trigger.html

使用上面的链接,您可以轻松执行此任务。