我正在设计一个消息系统。
在我存储消息的表中,message_id
列是自动递增的。
我还有另一列 message_reference_id
。
我希望它的默认值为 message_id
。
如何设置?
最佳答案
您不能将默认值设置为另一列中的值。相反,如果您的列不是 NULL,您可以将其更改为可为空并将默认值设置为 NULL。然后当你选择它时,使用这个:
SELECT IFNULL(message_reference_id, message_id) AS message_reference_id
FROM your_table
您甚至可以将其放入 View 中。
或者您可以创建一个 trigger更新插入时的值。
关于mysql,将列 "id"(自动递增)的值设置为列B的默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7358571/