数据库设计与SQL注意点
上周,Mike和我们分享了他在数据库设计方面的部分经验和SQL的一些注意点。
一、数据库设计
1.树形结构数据 :分为邻接模型和 物化路径模型
1.1树形数据,需要解决的问题是:
- 如何将数据高效地以树形的形式展现给用户;
- 通过某个节点找到所有的父节点;
- 获取某个节点的所有的后继节点(包括子节点的子节点)。
1.2业务示例:
文件存放位置,在档案管理中,需要为文件的存放位置建模,文件存在抽屉,然后抽 屉在某个柜子中,柜子在某个房间中。 具体实例请点击下面链接:树形结构数据
2. 历史数据问题:分为
- 存储于单表,无存储未来历史数据的需求
- 存储于多表,无存储未来历史数据的需求
- 有存储未来历史数据的需求
2.1在各种应用软件中,客户总是希望看到自己操作关键业务的历史数据(更或者是将来的历史数据,如本年计划明年的商品价格),并且要跟踪变化来源于哪一个版本。 具体实例请点击下面链接:历史数据问题之单记录变更
二、SQL注意点
1.支持可搜索的SQL
具体实例请点击下面链接:编写支持可搜索的SQL
2.参数化查询——命中执行计划
具体实例请点击下面链接:SQL参数化查询—命中执行计划