MySQLI每天重置一个唯一的变量
如何每天重置表中的唯一变量MySQLI每天重置一个唯一的变量,mysqli,unique-key,Mysqli,Unique Key,如何每天重置表中的唯一变量 换句话说,当一天结束时,唯一变量再次从0开始。假设您的MySQL版本支持这些,您可能可以通过一个简单的触发器获得所需的结果。考虑表: id ephem value1 value2 1 1412 this that 2 2317 the other (&c.) 在本例中,ephem是自创建行时午夜起的秒数,显然每天午夜将重置为零。您可以在创建行时使用以下触发器自动设置该值,该触发器在我测试过的MySQL 5.1.66实例上按
换句话说,当一天结束时,唯一变量再次从0开始。假设您的MySQL版本支持这些,您可能可以通过一个简单的触发器获得所需的结果。考虑表:
id ephem value1 value2
1 1412 this that
2 2317 the other
(&c.)
在本例中,ephem
是自创建行时午夜起的秒数,显然每天午夜将重置为零。您可以在创建行时使用以下触发器自动设置该值,该触发器在我测试过的MySQL 5.1.66实例上按预期工作:
CREATE TRIGGER set_ephemeral_day_value
BEFORE INSERT ON table
FOR EACH ROW
SET new.ephem = CAST(MOD(UNIX_TIMESTAMP(), 86400) AS UNSIGNED INTEGER);
我原以为会有更直接的方法,但这也解决了我的问题,谢谢;MySQL只接受常量值,而不接受表达式作为列默认值。很高兴能帮上忙!