数据库开发有什么规范
好酷屋教程网小编为您收集和整理了数据库开发有什么规范的相关教程:作为java程序员对数据库有或多或少的了解,基本使用大家都会,一些关键性的细节可能在平时的开发过程中没有注意到,导致写出来的SQL查不出数据,或查询速度特别忙、超时等情况,以下是工作中常用oracle
作为java程序员对数据库有或多或少的了解,基本使用大家都会,一些关键性的细节可能在平时的开发过程中没有注意到,导致写出来的SQL查不出数据,或查询速度特别忙、超时等情况,以下是工作中常用oracle数据库的一些总结: 一、oracle数据库开发规范 1、所有的名称用英文 要用简单明了的英文单词或简明的英文缩写,不要用拼音,特别是拼音缩写。目的很明确,主要是让人容易明白这个对象是做什么用的。
2、一律大写,特别是表名 有些数据库,表的命名乃至其他数据对象的命名是大小写敏感的,为了避免不必要的麻烦,并且尊重通常的习惯,建议一律采用大写(Mysql数据库和表名在 Windows 中是大小写不敏感的 ,而在大多数类型的 Unix 系统中是大小写敏感的)。 对于SQL语句,如无特殊要求,也一律使用大写。 3、表的命名 ①.基础表统一采用"<模块名>_<应用名>"构成 ②.备份表,COMMENT部分必须说明具体意义,命名格式:原表名_YYYYMMDD ③.历史表(应用已经删除)需要保留,去掉模块名(CARD_,PAYMENT_)更改为HIST_。 ④.表命名全大写,在存储过程或应用程序中使用时,全大写。 ⑤.自用表同一采用格式"T_DB_<应用名>"。 4、属性(列或字段) ①.采用有意义的英文单词,如果单词过长,可采用缩写代替(或单词组合,单词过长可缩写)。列名尽可能简短、精要(单词过长的情况可简写),尽量控制在20个字符以内。 ②.所有列名必须有COMMENT,并注明有限取值列所有取值的含义。如state 取值为0,1 需标明0和1的含义。 ③.对于不同表相同内容的属性字段的命名,必须统一命名,数据类型和精度定义也需统一。 ④.除非必要,否则尽量不加冗余列。所谓冗余列,是指能通过其他列计算出来的列,或者是与某列表达同一含义的列,或者是从其他表复制过来的列等等。冗余列需要应用程序来维护一致性,相关列的值改变的时候,冗余列也需要随之修改,而这一规则未必所有人都知道,就有可能因此发生不一致的情况。除非是应用的特殊需要,或者是为了优化某些逻辑很复杂的查询等操作,可以适当考虑加冗余列。 ⑤.除非必要,否则尽量不使用LONG, TEXT, BLOB, CLOB, NCLOB, LONG, LONG RAW这一类的数据类型,而是使用其他可以替代的数据类型;优先使用varchar2类型替代CHAR类型,除非列宽有严格的要求而且得到应用严格支持。 ⑥.字段的类型及精度在设计以及后面进行开发时,需要与应用的设计、开发人员商讨,以得到双方认可的类型及宽度。 ⑦.表增加数据创建时间和更新时间。 ⑧.状态等相同或者相近表示某种状态的字段统一使用varchar2,长度由开发和DBA协商拟定,成功(开启,生效等)为01,失败(关闭失效等)为02,无状态为03,其他为预留各开发人员自定。 ⑨.金额字段或者涉及到钱的字段设置为非空,默认值为0,以避免NULL的问题。 5、主键/外键 ①.表主(外)键命名格式:"PK(FK)_<应用名>_主(外)键标识",如:"PK_CARD_USER_INFO_ID"等。 ②.每个表,都必须要有主键。主键是每行数据的唯一标识,保证主键不可随意更新修改,特别在不知道是否需要主键的时候,加上主键会为你的程序以及将来查找数据中的错误等等,提供一定的帮助。 ③.特别提醒,不同的表主键的命名严禁使用相同的命名,避免混乱。 6、索引 ①.创建表时必须指定主键名称,主键索引名称包括表名缩写_列名缩写和一个PK_前缀,如:"PK_CARD_USER_INFO_CARDID"等。 ②.唯一键索引名称包括表名缩写_列名缩写和一个UNK_前缀,如:"UNK_TRAN_NORMAL_0101_TRANUUID"等。 ③.外键列的索引名称包括子表名缩写_父表名缩写_列名缩写和一个FKN_前缀。 ④.对于不用于约束的索引包括表名缩写_列名缩写和一个IDX_前缀,如:"INX_TRAN_NORMAL_0101_EQPID"等。 ⑤.某些基于函数的索引包括表名缩写_列名缩写和一个FCN_前缀。 ⑥.对于复合索引,需要添加的列名称以数字进行替代,数字按着列出现顺序排序。如:"INX_TRAN_SETTLE_0101_46_18"等。 注意: ①.根据实际业务需要经过讨论后建立索引,避免建无用索引。 ②.索引必须建在索引表空间。 ③.避免数据库索引抑制,即创建索引但是查询仍走全表扫描。 7、触发器 ①.INSERT型触发器统一命名:"TR_INSERT_<应用名>"。 ②.UPDATE型触发器统一命名:"TR_UPDATE_<应用名>"。 ③.DELETE型触发器统一命名:"TR_DELETE_<应用名>"。 8、视图 视图统一命名:"V_<应用名>"。 9、序列 ①.序列统一命名为:"SEQ_<应用名>_<列名>"组成。 ②.若线上环境为RAC(oracle集群),如果使用cache,请慎重考虑业务问题。若需要保证缓存相对连续,创建序列是需要加order。 10、同义词 同义词命名与其基础对象的名称一致,但要去除其用户前缀或含有远程数据库链接的后缀。同义词安全性考虑,使用数据用户隔离,需要使用link用户创建,link用户允许读取表,不允许做任何修改。 11、存储过程 ①.存储过程统一命名为:"PROC_存储过程功能标识(缩写)"。 ②.所有存储过程参数入参格式必须为:IN_<参数名> IN 数据类型 --字段备注说明。 ③.所有存储过程参数出参格式必须为:OUT_<参数名> OUT 数据类型 --字段备注说明。 12、函数 ①.函数统一命名为:"FUN_函数功能标识"。 ②.注释方面请参照存储过程。 13、包 包统一命名为:"PKG_包标识"。 14、数据库新建表对象需要的元素 ①.表空间。 ②.表名及表备注。 ③.字段名、字段类型、是否可空、默认值以及字段comment(注意:列出所有有限取值列取值的含义)。 ④.主键、外键和唯一约束。 ⑤.查询时经常用到的列以及查询方式。 ⑥.表的查询频率以及数据量。
以上就是好酷屋教程网小编为您收集和整理的数据库开发,标签,简介相关内容,如果对您有帮助,请帮忙分享这篇文章^_^
本文来源: https://www.haoku5.com/shenghuo/64467122340904795a01c3c5.html
相关推荐
热门专题
喝酒后喝咖啡好吗
历来有美酒加咖啡的说法,美酒加咖啡听上去意境很美好,很多人也有这个习惯,在喝完酒后,来一杯香浓醇厚的咖啡解酒提神,喝酒后喝咖啡好吗?喝酒后喝咖啡不好美酒加咖啡不仅对身体没有好处,起不到醒酒提神的作用,白糖为什么能溶解鱼刺 用什么可以溶解鱼刺
鱼是生活中常见的常见的食物,很多人都喜欢吃吧,吃鱼的时候稍不注意就被鱼刺卡住了怎么办呢?听说用白糖可以帮助溶解鱼刺,这是为什么呢?白糖为什么能溶解鱼刺白糖没有溶解鱼刺的作用。白糖是生活中常见的食物,很葫芦岛财政局每月拨款时间几号
葫芦岛财政局每月拨款时间为15号。通过查询官方网站显示,财政局每月15号左右对事业单位拔款。具体消息可关注官方网站,获得第一手权威信息。财政局负责地方的财政工作,贯彻执行财务制度,按照政策组织财政收入全新胜达怎么下载酷狗
全新胜达可通过U盘、SD卡等设备里下好音乐,插入车上的相应接口,直接进行下载安装即可。建议使用系统自带的播放器,另外安装可能会出现不兼容的情况。全新胜达是北京现代旗下的高端中型豪华SUV,配备2.0T腐竹不能和什么一起吃
腐竹由于味道鲜美,营养丰富受到很多人的喜爱,所以也出现了各种腐竹的吃法,但是腐竹一旦没有搭配吃好就会拉肚子,那么腐竹不能和什么一起吃呢?腐竹不能和什么一起吃1、蜂蜜腐竹跟蜂蜜一起搭配,会造成腹泻,有损广州行间网络科技有限公司(关于广州行间网络科技有限公司介绍)
导读大家好,小升来为大家解答以上的问题。广州行间网络科技有限公司,关于广州行间网络科技有限公司介绍这个很多人还不知道,现在让我们一起来看...大家好,小升来为大家解答以上的问题。广州行间网络科技有限公如何将多个类目放在一个海报里
用DW软件或者用PS软件做成切片连接,即可将多个类目放在一个海报里。海报这一名称,最早起源于上海,是一种宣传方式。旧时,海报是用于戏剧、电影等演出,活动的招帖。上海的人通常把职业性的戏剧演出称为海,而白糖和鸡蛋能一起吃吗 白糖和鸡蛋一起吃有什么危害
鸡蛋是生活中很常见的食物,白糖是生活中常见的调味品,白糖和鸡蛋能一起吃吗?下面一起来看看吧!白糖和鸡蛋能一起吃吗建议不要。糖水荷包蛋是很多人日常喜欢吃的食物,夏天到了,不少人会选择白糖作为首选糖类,但金纹石有没有蜡质光泽
金纹石有蜡质光泽,金纹石主要是黑底(也有褐色底)以金黄色图纹为特征的图纹石,金纹石是奇石界的后起之秀,金纹石一般都质地坚硬,其水冲度高,石体光洁平滑细腻,部分玉化程度高。莫氏硬度在5到8度,金色纹路和女生去塔尔寺禁忌
1、在寺院里,不能用手摸佛经、佛像、法器等,更不能跨越;转经轮时,一定是从左向右;不要乱摸藏族人的头和帽子。2、塔尔寺内很多经院殿堂有禁止拍照的告示牌。3、最好不要穿裙子。4、塔尔寺是藏传佛教,普通人