数据库规范

1.基础规范2.命名规范3.表设计规范 4.字段设计规范 5.索引设计规范 6.SQL使用规范1.基础规范1.1 必须使用InnoDB存储引擎支持事务、行级锁、并发性能更好、CPU及内存缓存页优化使得资源利用率更高 1.2 必须使用UTF8或utf8mb4字符集万国码,无需转码,无乱码风险,节省空间1.3 表、字段必须加入中文注释a) 表注释格式:模块|用途|负责人|创建日期,例如:订单表|记录订单信息|张三|2016-09-12b) 格式统一为:用途|负责人|创建日期,如果字段为枚举类型,需要列举枚举范围并说明每个枚举值的含义。|用来分割不同项目,#用来标识数据来源,@用来分割多个枚举,:用来分割枚举名称和值,例如: 记录订单状态@1:待支付@2:已支付@3:订单已关闭|张三|2016-09-12 记录公司id,#取自hollpin_company.company.id|张三|2016-09-121.4 禁止存储大文件或者大照片为何要让数据库做它不擅长的事情?大文件和照片存储在文件系统,数据库里存URI多好2.命名规范2.1 库名、表名、字段名:小写,下划线风格,不超过32个字符,必须见名知意,禁止拼音英文混用2.2 表名使用模块名+下划线+功能别名组成,如supplier_audit,非唯一索引名idx_xxx,唯一索引名uniq_xxx,无特殊需求,索引统一使用normal类型2.3 多表中的语义相同列,保证定义一致3.表设计规范 3.1 表必须有主键,例如自增主键3.2 必须包含create_time和update_time字段记录创建时间和修改时间,datetime类型3.3 禁止使用外键,如果有外键完整性约束,需要应用程序控制外键会导致表与表之间耦合,update与delete操作都会涉及相关联的表,十分影响sql 的性能,甚至会造成死锁。高并发情况下容易造成数据库性能,大数据高并发业务场景数据库使用以性能优先3.4 数据不允许物理删除,统一采用软删除如增加SMALLINT类型del字段,默认值为0正常,-1删除3.5 表设计需审核可由各组leader负责审核4.字段设计规范 4.1 建议不要使用TEXT、BLOB类型会浪费更多的磁盘和内存空间,非必要的大量的大字段查询会淘汰掉热数据,导致内存命中率急剧降低,影响数据库性能4.2 禁止使用小数存储货币使用整数吧,小数容易导致钱对不上4.3 字段长度根据业务实际需要进行设定,禁止预留过长空间5.索引设计规范 5.1 禁止在更新十分频繁、区分度不高的属性上建立索引a)更新会变更B+树,更新频繁的字段建立索引会大大降低数据库性能b)"性别"这种区分度不大的属性,建立索引是没有什么意义的,不能有效过滤数据,性能与全表扫描类似5.2 被索引列必须NOT NULL,并设置default值NULL会影响索引的统计,一般会默认null为一个值,这样这个索引的筛选价值就降低了,影响优化器的判断5.3 索引设计需审核可由各组leader负责审核6.SQL使用规范6.1 禁止使用SELECT *,只获取必要的字段,显示说明列属性a)读取不需要的列会增加CPU、IO、NET消耗b)不能有效的利用覆盖索引c)使用SELECT *容易在增加或者删除字段后出现程序BUG6.2 禁止使用INSERT INTO table VALUES(xxx),必须显示指定列属性容易在增加或者删除字段后出现程序BUG6.3 禁止使用属性隐式转换SELECT uid FROM t_user WHERE phone=13812345678 会导致全表扫描,而不能命中phone索引 6.4 禁止大表使用JOIN查询和子查询会产生临时表,消耗较多内存与CPU,极大影响数据库性能,建议改为N+1查询6.5 应用程序必须捕获SQL异常,并有相应处理6.6 数据更新建议使用二级索引先查询出主键,再根据主键进行数据更新6.7 禁止使用跨库查询
Python网络爬虫与推荐算法新闻推荐平台:网络爬虫:通过Python实现新浪新闻的爬取,可爬取新闻页面上的标题、文本、图片、视频链接(保留排版) 推荐算法:权重衰减+标签推荐+区域推荐+热点推荐.zip项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。
项目描述:建立购物小商城平台. 实现了前台页面系统。 技术描述:通过Spring 主框架来管理Struts2和Hibernate 框架搭建的电商小平台,用MySQL数据库并创建了有用户,订单,商品,商品分类,商品内容,购物车等来存储数据。用到hibernate….zip项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值