我想更新表格中的状态列,但邮件的日期列也会更新。如何仅在没有日期字段的情况下更新状态列?
数据类型:
Status => Varchar
messgae_date => Timestamp
查询:
"UPDATE mytable SET status='1' WHERE status='0'"
感谢之前......
答案 0 :(得分:0)
请编辑您的问题并发布整个DDL语句以创建表格。我相信它会变得明显。
你的帖子说message_date是一个时间戳。这是MySql和MariaDb中的一种特殊数据类型,它可以在插入时或在行中的任何其他数据发生更改时自动更新。
自动更新列会自动更新为当前列 更改行中任何其他列的值时的时间戳 从它的当前价值。如果是,则自动更新的列保持不变 所有其他列都设置为其当前值。防止 其他列更改时自动更新的列更新, 明确地将其设置为当前值。更新自动更新 列甚至当其他列不更改时,显式将其设置为 它应具有的值(例如,将其设置为CURRENT_TIMESTAMP)。
再次,请发表表DDL声明。 message_date列可能看起来像这样。
`message_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP