我的mysql数据库中有两个表 access & user
. 我想创建一个触发器,它在每次访问用户表时都会激活,并记录一个时间戳和所有被请求的列。
例如,如果有人要求 name
从 user
哪里 ID=20
然后触发器将在可访问表中创建一个新行,记录 userID, timestamp in unix format, rows column
所以呢 userID=20, timestamp=1515147950, rowAccessed=name
.
这样的扳机看起来怎么样?
编辑:
用户表(innodb):
| ID | name | email | age |
+----+--------+-------------+-----+
| 1 | Alice | alice@a.com | 20 |
| 2 | Bo b | bob@b.com | 12 |
| 3 | Carl | carl@c.com | 32 |
访问表(innodb):
| ID | userID | timeStamp | column |
+----+--------+-------------+--------+
| 1 | 2 | 1515149281 | name |
| 2 | 1 | 1515148251 | email |
access表中的数据是我希望触发器填充的。
access表中的userid列通过innodb关系链接到user表的id
1条答案
按热度按时间7eumitmz1#
不必说,对你的问题最好的选择是从代码处理它。但是如果有必要从mysql上做的话。。。这是一种方法,可能行不通,我无法访问mysql来测试它,但我将从这里开始:
我还没有完成列查询的部分,但这很简单。让我们知道这种方法是否适合您。