页面表单后台数据库一般怎么命名

页面表单后台数据库一般怎么命名,第1张

在许多信息管理系统项目中,建立大型规范的逻辑数据库是重中之重,系统的功能以及数据处理优化都跟数据库的设计有很大关系,如果设计妥当,开发者还能减少重复开发。那数据库怎么设计才能让开发者更好的理解和阅读数据库逻辑规则呢? 这里我们着重讲数据库命名规则

表和视图命名原则

系统信息表:TS_

基本编码表:TB_

决策数据表:TD_

业务数据表:不同的业务以不同的缩写(2-3个字符)开始,如‘TCRM_’;如是辅助编码表则在代表业务的缩写后加A_,如‘TCRM_A_’。

关联数据表:TRE__表A_表B

视图:在表命名的基础上加前缀改为V_

后缀:主-明细结构的表,主表为_M;明细表为_L

单词首写字母要大写,多个单词间不用任何连接符号如:TCRM_UserType

注意:尽量写好列“描述”

参照经验数据库结构设计命名规则:http://jingyan.baidu.com/article/0f5fb099c3c2406d8334ea0d.html

在数据库中创建对象时,管理员也要对其进行取名。现在谈谈取名的一些技巧。 一、表名大小写的控制 一般情况下Oracle数据库中的表名或者列名是不区分大小写的。在创建表或者列的时候,即使管理员采用了小写的名字,数据库在将其保存到数据字典之前,会先将其转换为大写,再将他们保存到数据字典中。这也就是为什么我们取名使用小写的子母取名,但是下次查看表的名字的时候,却变成了大写。 虽然说Oracle数据库中表与列等数据库对象对于大小写是不敏感的,但是如果数据库管理员确实有需要要让数据库系统对表的名字区分大小写,这也是可以做到的。通常情况下,如果把名字使用双引号括起来,则在Oracle数据字典中就会成为区分大小写的名字。不过笔者这里要提醒各位数据库管理员,虽然说从技术上可以让数据库系统强制取分大小写,但是在实际工作中,包括在内的绝大部分数据库管理员可能都不建议这么做。因为如果有混合的大小写存在,那么在引用这些表或者列名称的时候就需要特别的小心。因为即使用户或者数据库管理员有着过目不忘的本领,也很难准确的记住这些名称的大小写歌时。如果数据库管理员硬要这么做的话,那么很可能是自寻烦恼。在查询时或者其他作业时,要严格区分大小写那是一件很头疼的事情。为此,对于这个大小写的控制,笔者建议数据库管理员要谨慎使用。除非有充分的理由,否则的话,不要轻易使用这个双引号来控制大小写。 这个双引号不仅可以用来控制大小写,还有一个比较特殊的作用,就是用引用一些特殊的字符。如在建立表格的时候,需要设置一个名牌号的字段。有些数据库管理员习惯使用num#类似的名称。这不会违反数据库的取名规则。不过在处理的时候会比较麻烦。如利用create语句建立表格的时候,需要给这个字段名称加上双引号。否则的话,执行这条语句的时候,数据库会拒绝执行并向用户提示错误信息。类似的特殊符号还包括一个$美元符号。他们在建立表格的时候,在语句中都需要使用双引号。不过字段建立好之后,在引用这些对象的时候,不需要使用双引号了。同理,虽然Oracle数据库支持这些特殊符号,但是笔者不鼓励数据库管理员在表或者列的取名中采取这些特殊的符号。这有可能给后续的引用带来不必要的麻烦。 二、牢记取名空间 在Oracle数据库中,跟其他的数据库不同,有一个叫做取名空间的概念。在同一个取名空间中,其名字不可以重复。如表与视图就共享同一个取名空间,为此就要求不仅表的名字不能够相同,而且表的名字与视图的名字也不能够相同。因为他们处于同一个取名空间。类似的,表与函数也是同处于一个表空间,为此他们也不能够同名。不过表与索引、表与约束等等却属于不同的取名空间。也就是说,表的名字可以与约束的名字相同。所以说,数据库管理员在给表等对象取名的时候,一定要了解哪些对象共享同一个名称空间。如果在同一个名称空间内的,即使对象不同(如视图与表),但是他们仍然不能够取相同的名字。 为了避免同一个取名空间内重名的现象,笔者建立在取名的时候最好能够根据对象的不同加上对象的固有前缀。如大部分的数据库管理员,在给表取名的时候,一般不会表名前面加上表对象的前缀。但是在定义函数或者视图对象的时候,则会加上前缀。如在函数前面可能会加上FN的前缀,而在视图前面可能会加上vi的前缀。如此的话,在同一个取名空间内也不用担心对象重名的问题。不过无论怎么说,这个取名空间的概念数据库管理员必须牢记。即使在实际的工作中,可以通过前缀等手段轻易的避免这个陷阱,但是在Oracle数据库管理员的认证考试中,这个取名空间也是一个必要的知识点。所以无论从实际的工作还是认证考试的需要,对于这个取名空间管理员都必须要有一个清晰的认识。 三、在表、索引、约束、列之间设置密切的联系 在创建表的同时,可以给表中的某些列添加索引、约束等等。如在员工信息表中,会设置员工编号唯一性约束。在创建约束的时候,也需要对约束进行取名。虽然说也约束与表、列不属于同一个取名空间,所以在取名的时候基本上没有限制。但是为了后续使用的方便,笔者对约束的取名还有一个小小的建议。简单的说,就是给一个与表直接有关的其他对象具有该表的名字是一种好的做法。如现在有一张用户表名字叫做ad_user(在表名前面一般不加对象名,但是可以根据应用软件的模块设计加上模块的前缀),这种表中有一个字段叫做叫做vlaue,用来存储员工的编号。在表设计的时候,需要给这个字段加一个索引。那么这个索引的名字就可以取名为IDX_USER_VALUE(也就是索引前缀+表名+字段名的形式)。这么做有什么好处呢?一是可以确保相关对象的名字不会重复。因为表的名字不会重复,所以将表的名字与列的名字一起组成某个对象的名字,那么其重复的几率可以说基本上没有。二是方便管理员阅读、理解、维护等等。一看到索引或者约束对象的名字时,就可以看到这个是索引或者约束是用在哪个表的那个字段上的。而且也可以知道这个约束是唯一性约束还是检查约束索引时主键索引还是外键索引。给数据库管理员一目了然的感觉。这对于后续的维护、升级、调整、引用等等都提供了方便。 虽然说Oracle数据库中表与列等数据库对象对于大小写是不敏感的,但是如果数据库管理员确实有需要要让数据库系统对表的名字区分大小写,这也是可以做到的。通常情况下,如果把名字使用双引号括起来,则在Oracle数据字典中就会成为区分大小写的名字。不过笔者这里要提醒各位数据库管理员,虽然说从技术上可以让数据库系统强制取分大小写,但是在实际工作中,包括在内的绝大部分数据库管理员可能都不建议这么做。因为如果有混合的大小写存在,那么在引用这些表或者列名称的时候就需要特别的小心。因为即使用户或者数据库管理员有着过目不忘的本领,也很难准确的记住这些名称的大小写歌时。如果数据库管理员硬要这么做的话,那么很可能是自寻烦恼。在查询时或者其他作业时,要严格区分大小写那是一件很头疼的事情。为此,对于这个大小写的控制,笔者建议数据库管理员要谨慎使用。除非有充分的理由,否则的话,不要轻易使用这个双引号来控制大小写。

数据库设计过程中命名规范很是重要,命名规范合理的设计能够省去开发人员很多时间去区别数据库实体。

数据库物理设计包括:表设计,视图设计,存储过程设计,用户自定义函数设计等等。

1、 表设计命名规范:表使用t开头最好能将表根据属性分类并作好编号。

如:编码表可写为tBM001Something t为表开头,BM为业务类型,001为该类别中的第几个表something是表的名称注释。

2、 视图设计命名规范:视图设计过程中使用v开头,视图命名以制作视图的主表为准或是以视图的实现功能为准。

如:上述tBM001Something 为主表制作的视图 可取名vBM001Something

或者vGetSomeThingInfo等。

3、存储过程命名规范:用户自定义存储过程使用p开头以其实现功能命名,

如:pGetSomethingInfo

4、

存储过程命名规范:用户自定义存储过程使用f开头以其实现功能命名,

如:fGetSomethingInfo

此外在制作视图存储过程用户自定义函数过程中,注意写好注释。

还有

一.实体和属性的命名

1. 常用单词已经进行了缩写,在命名过程当中,根据语义拼凑缩写即可。注意,由于ORCAL数据库会将字段名称统一成大写或者小写中的一种,所以要求加上下划线

举例:

定义的缩写 Sales: Sal 销售;

Order: Ord 订单;

Detail: Dtl 明细;

则销售订单名细表命名为:Sal_Ord_Dtl

2. 如果表或者是字段的名称仅有一个单词,那么建议不使用缩写,而是用完整的单词。

举例:

定义的缩写 Material Ma 物品;

物品表名为:Material, 而不是 Ma.

但是字段物品编码则是:Ma_ID而不是Material_ID

3. 所有的存储值列表的表前面加上前缀Z

目的是将这些值列表类排序在数据库最后。

4. 所有的冗余类的命名(主要是累计表)前面加上前缀X

冗余类是为了提高数据库效率,非规范化数据库的时候加入的字段。或者表

5. 关联类通过用下划线连接两个基本类之后,再加前缀R的方式命名,后面按照字母顺序罗列两个表名或者表名的缩写。

关联表用于保存多对多关系。

如果被关联的表名大于10个字母,必须将原来的表名的进行缩写。如果没有其他原因,建议都使用缩写。

举例:表Object与自身存在多对多的关系,则保存多对多关系的表命名为:R_Object;

表 Depart和Employee存在多对多的关系;则关联表命名为R_Dept_Emp

6. 每一个表都将有一个自动ID作为主健,逻辑上的主健作为第一组候选主健来定义,如果是数据库自动生成的编码,统一命名为:ID如果是自定义的逻辑上的编码则用缩写加“ID”的方法命名。

举例:销售订单的编号字段命名:Sal_Ord_ID;如果还存在一个数据库生成的自动编号,则命名为:ID。

7. 所有的属性加上有关类型的后缀,类型后缀的缩写定义见文件《类型后缀缩写定义》,注意,如果还需要其它的后缀,都放在类型后缀之前。

二.关系的命名

关系的命名基本上按照如有特殊情况,可以灵活处理.

[must/may/can/should][verb/verb+prep][a/many/exatly num][or a/many]的结构命名

三.域的命名

四.触发器的命名

五.有关于默认的几点说明

1. 严格依赖关系的主细表,主表的后缀Main可以不写。

2. 数据类型是文本的字段,类型后缀TX可以不写。

3. 有些类型比较明显的字段,可以不写类型后缀。

4. 非常明显的关系,可以不写。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9947916.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存