请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于mysql主键ID默认值的问题

图片描述
老师,小节表section的主键ID有个默认值:default ‘’。
主键有两个特点:①非空;②唯一。默认值是default ‘’,空字符串也相当于是个空值了,给主键ID加个默认值空字符串,这不就违背了主键非空的特性了吗?可是执行sql的时候数据库也没有报错。这个问题不太理解,就是主键的默认值可以是空字符串的问题。请老师解答一下。

正在回答

1回答

null和''是不同的,主键不能是null,但可以是'',可以有一条空字符串,如果有两条就报主键冲突了。正常主键应该有具体的字符串值,不应该是''

0 回复 有任何疑惑可以回复我~
  • 提问者 慕工程7058922 #1
    老师,主键ID是空串'',在实际中主键为空串是没有意义的。设计表时为什么要让主键默认''呢?
    回复 有任何疑惑可以回复我~ 2024-06-15 00:16:10
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信