文章详情页
数据库设计 - MySQL数据库主键问题
浏览:245日期:2022-06-15 15:33:26
问题描述
前几天在项目组里,总监建议把所有数据表的主键设为字符串类型(UUID),由应用程序维护数据表的主键,问下这个主要是出于什么方面的考虑呢???P.S. 我们用的MySQL数据库,存储引擎用的InnoDB,看了很多DBA的文章建议是说InnoDB类型的表最好是使用自增主键...
问题解答
回答1:UUID生成主键避免了主键重复,程序易维护,@wangcw解释的蛮好,至于劣势,经验所限,暂且没遇上
回答2:就我理解,使用UUID优势,重复性低,方便自动生成,不用考虑主键重复插入失败问题;不建议使用UUID原因:数据量达到一定值后索引维护很不方便,数据库性能大打折扣,对分片条理性也有一定影响。
回答3:使用UUID的话,得通过应用去维护主键,这样的话不是很繁琐么...
相关文章:
1. node.js - npm run dev报错2. javascript - 如何将一个长为365的数组对象按月份切割成12组?3. css3 - 扩展本地项目中阿里的iconfont字体库,添加图标字体4. 无法为JSP编译类:无法解析类型java.util.Map $ Entry。从所需的.class文件间接引用它5. PC 手机兼容的 编辑器6. html - angularJS中switch切换开关按钮不能操作7. mysql - 仅仅只是把单引号与反斜杠转义不用prepare statement能否避免sql注入?8. 求救一下,用新版的phpstudy,数据库过段时间会消失是什么情况?9. node.js - npm安装模块时,在cmd上显示的是一条白线,白线前面是一天反斜线转圈圈,然后就出现npm ERR错误了,求帮助,谢谢10. css3不包括
排行榜

网公网安备