数据库对象命名
基本对象命名:
对象名称 | 前缀 | 举例 |
表(Table) | 无 | Student |
字段(Column) | 无 | Title |
视图(View) | v | vActivity |
存储过程(Stored procedure) | pr | prDelOrder |
触发器(Trigger) | tr | trOrder_D |
索引(Index) | ix_ | ix_CustomerID |
主键(Primary key) | pk_ | pk_Admin |
外键(Foreign key) | fk_ | fk_Order_OrderType |
Check 约束(Check Constraint) | ck_ | ck_TableColumn |
Unique 约束 | uq_ | uq_TableColumn |
用户定义数据类型(User-defined data type) | udt | udtPhone |
用户定义函数(User-defined function) | fn | fnDueDate |
有关数据库的设计:
1. 如果要写代码来确保表中的行都是唯一的,就为表添加一个主键。
2. 如果要写代码来确保表中的一个单独的列是唯一的,就为表添加一个约束。
3. 如果要写代码确定表中的列的取值只能属于某个范围,就添加一个 Check 约束。
4. 如果要写代码来连接 父-子 表,就创建一个关系。
5. 如果要写代码来维护“一旦父表中的一行发生变化,连带变更子表中的相关行”,就启 用级联删除和更新。
6. 如果要调用大量的 Join 来进行一个查询,就创建一个视图。
7. 如果要逐条的写数据库操作的语句来完成一个业务规则,就使用存储过程。
所有表示时间的字段,统一以 Date 来作为结尾。
所有表示数目的字段,都应该以 Count 作为结尾。
最好使用单数的形式给表命名:
Customer而非Customers
避免无谓的表格后缀:
Guest而非GuestInfo
多对多关系中连接表的命名:
建议的写法是将两个表的表名 合并(如果表名比较长可做简化),此处如 StudentCourse
相关推荐
饮马天涯 2020-07-05
URML 2020-07-04
chenjiazhu 2020-05-01
踩风火轮的乌龟 2020-04-30
zhengsj 2020-04-15
neverstopforcode 2020-04-14
点滴技术生活 2020-02-24
步行者 2020-02-20
云之飞踢 2020-02-19
airfling 2019-12-20
helencoder 2019-12-11
helencoder 2019-12-07
风之羽翼 2019-11-13
鲁氏汤包王 2019-11-04
LaputaSpring 2012-02-03
张亚京 2019-06-30
gaobudong 2015-08-20