有没有办法获取有关表格中特定行的 insertion time
的信息?
假设我有以下 表(用户) :
________________
| ID | name |
|_____|________|
| 1 | tom |
| 2 | brad |
|_____|________|
现在,我想知道插入第二行(2,brad)。
有可能吗?任何帮助表示赞赏!
答案 0 :(得分:0)
你可以试试这个:
select table_schema,table_name,max_time
from information_schema.tables t1 JOIN
(select MAX(t2.create_time) AS maximum_time FROM
information_schema.tables t2 where
table_schema ='user') as t3
on t1.create_time = t3.max_time;
这将给出表中最后一次插入时间。
旁注:
您可以在表中添加一列,并在插入记录时将时间存储在该列中。这有助于您确定何时插入特定记录。
这样的事情: -
insert into yourtable(ID, name, CreatedTime)
values(2,'Brad',now())
答案 1 :(得分:0)
您必须使用trigger
https://dev.mysql.com/doc/refman/5.5/en/trigger-syntax.html
它有点复杂,但确实有用!
delimiter |
CREATE TRIGGER trigger_user_insert BEFORE INSERT ON user
FOR EACH ROW
BEGIN
-- When an insertion occurs, you do your work here with SQL
END;
|
delimiter ;