gpt4 book ai didi

Mysql - CAST 的唯一约束(TIMESTAMP as DATE)

转载 作者:行者123 更新时间:2023-11-29 06:53:42 25 4
gpt4 key购买 nike

我的 MYSQL 表中有一个 TIMESTAMP myDate 字段。

有没有一种方法可以为 myDate 中的每一 day 定义一个唯一的字符串 stringForTheDay

类似于:

UNIQUE(stringForTheDay, day_in_mydate)

简而言之,不能允许这两行:

2012-11-29 13:35:53      samestring
2012-11-29 20:39:09 samestring

最佳答案

我认为最好的办法是将日期部分复制到单独的列中,并在其上添加唯一约束。您可以使用触发器使日期部分保持最新:

CREATE TRIGGER ins_tablename BEFORE INSERT ON tablename
FOR EACH ROW SET NEW.dateColumn = CAST(NEW.timestampColumn AS DATE);

CREATE TRIGGER upd_tablename BEFORE UPDATE ON tablename
FOR EACH ROW SET NEW.dateColumn = CAST(NEW.timestampColumn AS DATE);

(参见 §18.3 "Using Triggers" in the MySQL 5.6 Reference Manual 。)

关于Mysql - CAST 的唯一约束(TIMESTAMP as DATE),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14027783/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com