开发者社区> 问答> 正文

MySQL建表语句中 数字类型的默认值写为 default '0' 和 default 0 有啥区别

已解决

本问题来自阿里云开发者社区的【11大垂直技术领域开发者社群】。 https://developer.aliyun.com/article/706511 点击链接欢迎加入感兴趣的技术领域群。

如:

`cateid` BIGINT UNSIGNED NOT NULL DEFAULT '0',

这个字符串0是啥意思?为什么不用数字0?劳烦各位给解答一下,谢谢~

展开
收起
茶什i 2019-08-19 15:38:26 9850 0
2 条回答
写回答
取消 提交回答
  • 采纳回答

    数据库会给你做隐式转换的。你的cateid这个字段类型是BIGINT,但是'0'会隐式转换成0的,所以数据库内部就会给你处理了

    2019-08-21 15:35:58
    赞同 展开评论 打赏
  • 字符串和数字本身是有区别的。这个和数据库关系不大,更多的是和业务定义相关。

    2019-08-20 20:09:39
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
PolarDB MySQL引擎重磅功能及产品能力盛大发布 立即下载
阿里云企业级自治数据库 RDS 详解 立即下载
阿里云MySQL云数据库产品体系介绍 立即下载

相关镜像