数据库设计规范

本文介绍了数据库设计的原则,包括规范化与反规范化、数据表分类、字段和键设计以及索引设计。强调了主键和外键的重要性和索引选择性。完整性设计中提到了主键、外键约束和触发器的使用。命名规范涵盖表、字段、键等对象的命名规则。安全性设计涉及用户权限管理和角色分配。最后讨论了SQL语句编写、建模管理方法和其他设计技巧,以确保数据库高效、稳定和易维护。
摘要由CSDN通过智能技术生成

数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。

一、数据库设计的原则

 表设计原则
1
(1)规范化与反规范化

规范化的优点是减少了数据冗余,节约了存储空间,相应逻辑和物理的I/O次数减少,同时加快了增、删、改的速度。但是一个完全规范化的设计并不总能生成最优的性能,因为对数据库查询通常需要更多的连接操作,从而影响到查询的速度,而且范式越高性能就会越差。出于性能和方便管理的考虑,原则上表设计应满足第三范式。有时为了提高某些查询或应用的性能而可以破坏规范规则,即反规范化。

数据应当按两种类别进行组织:频繁访问的数据和频繁修改的数据。对于频繁访问但是不频繁修改的数据,内部设计应当物理不规范化。对于频繁修改但并不频繁访问的数据,内部设计应当物理规范化。比较复杂的方法是将规范化的表作为逻辑数据库设计的基础,然后再根据整个应用系统的需要,物理地非规范化数据。

(2)数据表分类说明

根据应用的实际需要和特点,可以将数据表进行如下分类:
1
l 基本数据表:描述业务实体的基本信息。例如,人员基本信息、单位基本信息等。

l 标准编码表:描述属性的列表值。例如,职称、民族、状态等。

l 业务数据表:记录业务发生的过程和结果。例如,人员调动登记、变更通知单等。

l 系统信息表:存放与系统操作、业务控制有关的参数。例如,用户信息、权限、用户配置信息等。

l 统计数据表:存放业务数据统计值。例如,通知单统计、人员类别统计等。

l 临时处理表:存放业务处理过程中的中间结果。

l 其他类型表:存放应用层的日志、消息记录等。

 字段设计原则
1
(1)一般来说,应该使用能正确存储和表示数据的最小类型。如果不确定需要什么数据类型,则选择不会超出范围的最小类型。

(2)选择更简单的数据类型。例如,比较整数的代价小于比较字符,因为字符集和排序规则使字符比较更复杂。

(3)尽可能把字段定义为 NOT NULL。对于字段能否NULL,应该在SQL建表脚本中明确指明,不应使用缺省。

(4)一个表中的字段不要太多,理论上不要超过80个。

(5)数据库中所有布尔型中数值0表示为假;数值1表示为真

(6)当字段定义为字符串类型时使用VARCHAR2而不用NVARCHAR

(7)字段尽可能有默认值,字符型的默认值为一个空字符值串,数字型的默认值为数值0。

 键设计原则
1
(1)为关联字段创建外键。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值