关于SqlServer数据库中自增型ID的优势及不足的分析
来源:互联网 发布:知乎大神侵权 编辑:程序博客网 时间:2024/06/14 02:39
以前一直接触的是Oracle数据库,各种表单的主键只是字符串。换新公司后,新公司用的SqlServer数据库,其中涉及的自增型主键字段着实让我头疼了一段时间。通过在sqlServer中设计各种表单的过程中,对自增型字段的应用有了自己的体会。
优势:自增型字段简单,存储量也不大,进行数据表单的join操作性能也高,对于通过人工构建的树型结构用于存储父节点,确实方便了不少。在做的工程造价管理系统中,构件的成本需要由清单--定额---人材机这样的一个父子关系组成,设计的表单存储的父节点是自增型父节点,这样统一了父节点的数据格式。
劣势:自增型字段是数据库自己生成的字段,存在极大的不稳定性,对于基础数据是绝对不可以用自增型字段的。同样用工程造价管理系统为例,在造价管理系统中有构件树,这是整个系统中造价的基础数据,如果用自增型字段做主键,一旦树有所删除和修改操作,那么ID会跟随一起变化,与这个数据有关联的其他业务数据就一同不可用,造成数据混乱,这是所有设计数据库人员最不想看到的结果。
还有一个大问题就是数据库迁移,这时所有的自增型ID也会变化,当然sqlServer应该有相应的技术进行弥补,但是自增型ID的使用还是慎重考虑啊!!!!!
阅读全文
0 0
- 关于SqlServer数据库中自增型ID的优势及不足的分析
- SQLServer事务获取表中自增ID的方法
- 关于sqlServer数据库中利用SSMS(SQL Server Management Studio)设置自增字段属性及自增字段的影响
- 关于数据库自增ID数据写入问题的解决
- 关于数据库id的重新排序自增
- ORACLE数据库中ID自增的设置
- 分析DB2数据库的优势
- Ajax的优势和不足
- Android 的优势与不足
- Ajax的优势与不足
- mysql 数据库自增id 的总结
- mysql 数据库自增id 的总结
- mysql 数据库自增id 的总结
- 为取出的每个数组中增加一个自增的id(注意此ID不是数据库中存的自增id字段)
- 关于在Java中链接SQLServer数据库中失败的原因分析
- Sqlserver数据库表重设置自增主键ID号
- 关于数据库主键ID是否自增
- 关于oracle11g数据库不能创建序列的报错问题----实现表id自增问题
- redis中的set集合+相关命令
- js面向对象基础(进阶)
- BZOJ4177: Mike的农场
- windows webrtc编译二:下载源码并编译
- Vue.js 官方文档摘记:Vue 实例
- 关于SqlServer数据库中自增型ID的优势及不足的分析
- javaee加密部署项目通过tomcat使用自定义的classload解密
- opencv3之目标跟踪(单目标、多目标)
- jenkins的使用
- JDK动态代理
- 回归
- itemCF 基于物品的协同过滤
- 数据结构BinaryTree实例(七):二叉树转成双向链表
- Vue2.0实现懒加载