`

数据库主键方案

阅读更多
1、坚决不可以用某个业务字段做主键,理由就不说了,业务都是有意义的,你能保证它产生的规则不变吗?

2、如果要汇总两个库表,id很多重复,那为什么要把A表的数据导入到B表,为什么程序不能自己到2个表中去查询呢,再说了,数据大了还要拆表呢

3、GUID作为主键,mysql本身并没有这个数据类型,oracle和sql server都有,它的缺点为:1、存储空间比自增型大很多;2、主键在这上面做索引,怎么保证有序,全是毫无意义的一串数字,效率低下,所以mysql本身就弃用了此方案

4、还有一种方案是使用两套主键,一个是数据库自增的主键(pk),另一个就是我们认为的业务“主键”(不是数据库上的pk),根据它去做数据的findById和关联查询,它的实现方案是用自定义的数据库表存储某个表当前的业务“主键”值,然后同步控制读取+1去实现,当然在读取值时,使用了
conn.setTransactionIsolation(Connection. TRANSACTION_SERIALIZABLE );
避免在多个实例并发时的问题,但是这是最高的隔离级别啊,可想而知效率会怎么样;另外,就算在同一个jvm中的synchronized也很要命,这种方案也不是好的选择
分享到:
评论

相关推荐

    sqlserver无主键表的同步方案1

    背景介绍对sqlserver做数据库同步的时候,由于医院服务器和数据库版本的限制,选择了用发布订阅处理数据库同步,但是这个方式只能处理有主键的表,对于无主键的表

    数据库设计培训.pptx

    培训讲师:XXXXXX 2020年6月 数据库设计培训 数据库设计培训全文共37页,当前为第1页。 数据库设计概述 1 数据库设计 2 数据库设计规范 3 目录 数据库设计培训全文共37页,当前为第2页。 数据库设计概述 为什么需要...

    Hibernate 多数据库支持解决方案

    Hibernate多数据库支持解决方案 一、 去掉数据库级的外键关联 二、 如何动态加载.hbm.xml文件 三、 配置文件的加载 四、 大字段处理 五、 hibernate主键生成器(数值型主键操作方法) 六、 Oracle 转换 SQL Server ...

    数据库设计--驿站超市

    数据库课程设计报告--小型超市管理系统,通过此次数据库的课程设计,真正达到了学与用的结合,增强了对...其中包括,插入、删除、修改、查询,牵涉表和表之间的联系,主键与外主键的定义,约束项的设置,使逻辑更严密。

    图书管理系统数据库设计方案.doc

    系统设计 (1)图书管理系统的功能划分如下简图: 三 详细数据库设计方案 图书表Book 用于增加图书信息 "列明 "数据类型 "是否为空 "默认值 "引用 "简单描述 " "ID "Int "否 " " "主键 自增 " "Name "Nvarchar(50) ...

    政务平台数据库设计.doc

    (3)完整性 利用关系型数据库提供的数据完整性约束功能来保证数据的完整性,特别是要合理利 用以下四种约束类型:非空,唯一键,主键,外键。 (4)有效性 物理设计需综合考虑,根据业务规则,确定关联表的数据量...

    数据库优化存储设计方案

    数据库优化存储设计方案本文首先讨论了基于第三范式的数据库表的基本设计,着重论述了建立主键和索引的策略和方案,然后从数据库表的扩展设计和库表对象的放置等角度概述了数据库管理系统的优化方案。

    SQL数据库设计命名规范.pdf

    附录 2 SQL Server 数据库命名与编码规范 一.数据库对象命名基本规范 1. 总体命名规范 名称的长度不超过 32 个字符。 名称采用英文单词、英文单词缩写和数字,单词之间用"_"分隔。 说明:除非用户提供文档化的行业...

    ios-GDatabase--基于ORM的FMDB数据库存储解决方案. 面向模型API. 一句代码存储,读取.对存储模型无需继承BaseObject. 可自定义多主键,使用sqlite 关键字.自定义序列化字段等.极大方便项目中使用..zip

    支持多主键,单一主键,自增主键数据表创建 支持模型黑名单. 可以自定义部分字段不进行数据库存储操作. 支持模型字段自定义序列化. 无需手动创建数据表. 无需考虑数据库字段整添,自动处理数据库升级.免去升级烦恼. ...

    数据库学习基础之名词解释

    现有的网状数据库系统大都是采用DBTG方案的。DBTG系统是典型的三级结构体系:子模式、模式、存储模式。相应的数据定义语言分别称为子模式定义语言SSDDL,模式定义语言SDDL,设备介质控制语言DMCL。另外还有数据操纵...

    《数据库应用软件》课程报告docx.docx

    4)系统数据表:系统用到的数据表结构、表间联系、表的数据约束(主键、外键、自定义约束等)(不少于6个数据表) 5)系统常用查询以及解决方案:系统的重要查询(查询功能、实现此查询的SELECT语句),不少于10个...

    TreeSoft数据库管理系统

    3、通过点击“设计”按钮,将切换到表结构设计页,您可以方便的增加、修改、删除表字段,调整字段顺序,设置主键,设置非空等操作。 4、当你编辑了许多SQL语句后,可点击”SQL保存”按钮,保存自己的劳动成果,通过...

    浅谈数据库设计方法.doc

    浅谈数据库主键设计的原则[J].电脑知识与技术,2011,22(36):12- 16. [2]熊慧芳.数据库主键的设计方法探讨[J].无线互联科技, 2013,32(07):54- 57. [3]张立伟,唐伟.浅谈ABAP程序的优化[J].科技致富向导, ...

    安全数据库系统.pdf

    本地数据库的主键和外键 Table activity:主键为 actID,外键为 optID, Table customer:主键为 cusID Table emp:主键为 empID Table note:主键为 id, 外键为 empID able opertunity:主键为 optID,外键为 cusID,...

    演示怎样在Hibernate中使用复合主键

    如果使用Hibernate开发legacy的数据库应用,对于数据库表中有使用字符串作为主键或者使用复合主键情况,那么对于这些情况的影射档是比较麻烦的。该示例应用演示了两张表ITEM和CATEGORY_ITEM表有主外键关系,并且ITEM...

    实验1答案 - 建立学生数据库.sql

    建立环境实验和数据库/表 实验学时:2学时 实验类型:验证 实验要求:必修 一、实验目的 ...将实验结果反映在实验报告中,并对实验中遇到的问题及解决方案、进行整理、分析总结,提出实验结论或自己的看法。

    Java数据库编程宝典3

    第1部分 介绍数据库、SQL和JDBC 第1章 关系型数据库 1.1 理解关系型数据库管理系统 1.1.1 关系模型 1.1.2 Codd法则 1.1.3 表、行、列和关键字 1.1.4 主键 1.1.5 外键 1.1.6 关系 1.1.7 视图 1.1.6 范式...

    数据库备份设计文档.docx

    类设计 Entity实体类设计 Resources extends BaseEntity 字段名称 字段类型 是否必填 备注 name String 是 权限资源名 Controller接口类设计 重要方法、算法以及难点解决方案描述 数据库备份设计文档全文共14页,...

    数据库课程设计题目1.doc

    1、某商业集团的销售管理系统 数据库中有三个实体集。一是"商店"实体集,属性有商店编号、商店名、地址等;二 是"商品"实体集,属性有商品号、商品名、规格、单价等;三是"职工"实体集,属性有 职工编号、姓名、性别...

    数据库双向同步复制

    双主双写并同步复制可能引发主键冲突,需避免使用数据库自增类主键方案。另外,双向同步潜在可能引发循环同步的问题,需要做回环控制。  如上图所示,复制程序写入时也会产生 binlog,如何识别由复制程序产生...

Global site tag (gtag.js) - Google Analytics