数据库命名规范小结

 更新时间:2009年03月21日 00:17:38   作者:  
数据库命名规范,在实际的数据库开发中,需要注意。

数据库命名规范

1 目的

规范数据库各种对象的命名规则。

2 数据库命名原则

2.1 数据文件

如果数据库采用文件系统,而不是裸设备,约定下列命名规则:

1)数据文件以表空间名为开始,以.dbf为结尾,全部采用小写英文字母加数字命名。如该表空间有多个数据文件,则从第2个数据文件开始,在表空间名后加_。

例:对system表空间的数据文件:system.dbf,system_2.dbf

2)对oracle数据库的控制文件,用control.ctl来表示。如control01.ctl,control02.ctl。

3)对oracle数据库的日志文件,在线日志文件用redo<组名><文件序列名>.dbf来表示。其中组名和文件序列名均用2位数字来表示。如第一组的两个文件表示位redo0101.dbf和redo0102.dbf。归档日志用arch_%t_%s.arc来表示。其中%t和%s均为oracle约定的变量。

2.2 表空间

2.2.1 数据库系统表空间

数据库系统表空间包括system表空间,临时表空间,回滚段的表空间。约定下列命名规则:

1)system表空间由数据库直接限定,不能进行修改。

2)临时表空间用temp来表示。如果有多个临时表空间,从第2个临时表空间开始,在temp后面加来表示。

3)回滚段表空间用undotbs来表示。如果有多个回滚段表空间,从第2个回滚段表空间开始,在undotbs后面加来表示。

2.2.2 数据库的用户表空间

数据库的用户表空间用ts_<表空间名>来表示。其中,表空间名分为:

1)数据空间:对于用户的缺省表空间,用default来表示。对于其他的表空间,根据存放在表空间上的表的类别来表示。如放代码的表,用code来表示。放客户资料的表,用customer来表示。尽量用一个表空间来存放该类的表。如果某表特别大,可考虑单独使用一个表空间。

2)索引空间:在相应的数据表空间的名字前加ind_。如对用户缺省表空间的索引空间,用ts_ind_default来表示。对代码表的索引表空间,用ts_ind_code来表示。

2.3

数据库表的命名采用如下规则:

1)表名用T_开头,表名长度不能超过30个字符,表名中含有单词全部采用单数形式,单词要大写。

2)多个单词间用下划线(_)进行连接。若库中有多个系统,表名采用系统名称+单词或多个单词,系统名是开发系统的缩写,如VNET。

3)表中含有的单词建议用完整的单词。如果导致表名长度超过30个字符,则从最后一个单词开始,依次向前采用该单词的缩写。(如果没有约定的缩写,则采用该单词前4个字母来表示)。

数据库表的字段命名采用如下规则:

1)数据库字段名全部采用小写英文单词,单词之间用”_”隔开。字段长度不能超过30个字符。

2)如果该字段是代码,则在单词后加_id。

3)如果该字段表示的是时间,则使用_time为后缀。

2.4 视图

数据库视图的命名采用如下规则:

1)视图名用V_开头,视图名长度不能超过30个字符。视图名用大写的英文单词来表示。

2)视图由几个表产生就用下划线(_)连接几个表的名,如果表过多可以将表名适当简化,但一定要列出所有表名。

2.5 序列

数据库序列的命名采用如下规则:

序列名用seq_开头,后面跟使用该序列的字段名。如果有几个字段用同一个序列,用下划线(_)连接几个字段的名称。如果不同表中相同的字段名需要使用不同的序列,则在字段名后加表的特征,用下划线(_)连接。序列名长度不能超过30个字符。序列名用小写的英文单词来表示。

2.6 存储过程

存储过程的命名采用如下规则:

存储过程名用Pr_开头,存储过程名长度不能超过30个字符。存储过程名用小写的英文单词来表示。

2.7 函数

函数的命名采用如下规则:

函数名用Fu_开头,函数名长度不能超过30个字符。函数名用小写的英文单词来表示。

2.8 触发器

触发器的命名采用如下规则:

触发器名用Tr_开头,触发器名长度不能超过30个字符。触发器名用小写的英文单词来表示。

2.9 主键

主键的命名采用如下规则:

主键名用pk_开头,后面跟该主键所在的表名。主键名长度不能超过30个字符。如果过长,可对表名进行缩写。缩写规则同表名的缩写规则。主键名用小写的英文单词来表示。

2.10 外键

外键的命名采用如下规则:

外键名用fk_开头,后面跟该外键所在的表名和对应的主表名(不含t_)。子表名和父表名自己用下划线(_)分隔。外键名长度不能超过30个字符。如果过长,可对表名进行缩写。缩写规则同表名的缩写规则。外键名用小写的英文单词来表示。

2.11 索引

索引的命名采用如下规则:

1)索引名用小写的英文字母和数字表示。索引名的长度不能超过30个字符。

2)主键对应的索引和主键同名。

3)每类索引都用_结束。

4)唯一性索引用uni_开头,后面跟表名。一般性索引用ind_开头,后面跟表名。

5)如果索引长度过长,可对表名进行缩写。缩写规则同表名的缩写规则。

相关文章

  • Hive数据导出详解

    Hive数据导出详解

    hive是一个依赖Hadoop集群的数据处理平台,我们不仅需要对数据进行筛选处理,更需要进行导出,供我们多次重复使用,本文主要介绍了hive如何导出数据,感兴趣的小伙伴欢迎阅读
    2023-04-04
  • 主键与聚集索引

    主键与聚集索引

    表通常具有包含唯一标识表中每一行的值的一列或一组列。这样的一列或多列称为表的主键 (PK),用于强制表的实体完整性。在创建或修改表时,您可以通过定义 PRIMARY KEY 约束来创建主键。
    2009-07-07
  • Linux下开启和配置OpenGauss数据库远程连接的教程详解

    Linux下开启和配置OpenGauss数据库远程连接的教程详解

    openGauss是一款开源关系型数据库管理系统,采用木兰宽松许可证v2发行,本文主要为大家介绍了Linux系统中如何开启和配置OpenGauss数据库的远程连接,需要的小伙伴可以参考下
    2023-12-12
  • Python使用RethinkDB总结

    Python使用RethinkDB总结

    最近一个项目要用到文档数据库,顺便关注了一下 NoSQL 方面的消息。当前几个比较流行的文档数据库引擎有 MongoDB, CouchDB, OrientDB 等,朋友推荐的是 MongoDB 和 RethinkDB
    2014-03-03
  • 新推出的金融版eXtremeDB 6.0功能改进预览

    新推出的金融版eXtremeDB 6.0功能改进预览

    这篇文章主要介绍了新推出的金融版eXtremeDB 6.0功能改进预览,如运用SQL, Python实现的基于矢量的统计功能、分布式的查询处理、市场数据压缩等内容,需要的朋友可以参考下
    2014-10-10
  • 如何让Birt报表脚本数据源变得既简单又强大

    如何让Birt报表脚本数据源变得既简单又强大

    这篇文章主要介绍了如何让Birt报表脚本数据源变得既简单又强大,需要的朋友可以参考下
    2018-11-11
  • openGauss数据库在CentOS上的安装实践记录

    openGauss数据库在CentOS上的安装实践记录

    这篇文章主要介绍了openGauss数据库在CentOS上的安装实践,本文是基于华为云ECS+CentOS 7的openGauss数据库安装实践,需要的朋友可以参考下
    2022-07-07
  • 达梦数据库DISQL连接数据库与执行SQL、脚本的方法图文详解

    达梦数据库DISQL连接数据库与执行SQL、脚本的方法图文详解

    DIsql是DM数据库的一个命令行客户端工具,跟Oracle数据库的sqlplus工具一样,用来与 DM 数据库服务器进行交互,这篇文章主要给大家介绍了关于达梦数据库DISQL连接数据库与执行SQL、脚本的方法,需要的朋友可以参考下
    2024-09-09
  • 详解Flink同步Kafka数据到ClickHouse分布式表

    详解Flink同步Kafka数据到ClickHouse分布式表

    这篇文章主要为大家介绍了Flink同步Kafka数据到ClickHouse分布式表实现详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • 开源数据库设计神器chiner的安装及初体验介绍

    开源数据库设计神器chiner的安装及初体验介绍

    最近在造轮子,从 0 到 1 的那种,就差前台的界面了,大家可以耐心耐心耐心期待一下。其中需要设计一些数据库表,可以通过 Navicat 这种图形化管理工具直接开搞,也可以通过一些数据库设计工具来搞,比如说 PowerDesigner,更专业一点
    2022-02-02

最新评论