gpt4 book ai didi

mysql - 向表添加主键是否会检查默认列?

转载 作者:行者123 更新时间:2023-11-29 23:20:17 25 4
gpt4 key购买 nike

我尝试在表中添加主键并将其设置为具有默认值且不为空且不唯一的列。MySQL 接受该列作为主键...我想知道这是错误的,因为如果用户输入 2 个具有默认值的记录,他将无法这样做。这是 SQL 应该将列检查为非默认值的问题还是这是设计者最终的问题,默认列不应成为主键。 ..?

最佳答案

我没有完全理解这个问题。您已将一列声明为具有以下特征的主键:

  • 不为空
  • 默认值

主键具有以下特征:

  • 不为空
  • 独特

这些特性并非互不兼容。唯一的问题是默认值只能在列中分配一次。第二次尝试插入具有默认值的行时,您将违反唯一性约束。

换句话说,MySQL(我认为其他数据库也是如此)允许您声明这一点,即使这看起来不是一个好主意。

关于mysql - 向表添加主键是否会检查默认列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27378837/

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