什么是“反模式”

  反模式是一种试图解决问题的方法,但通常会同时引发别的问题。

反模式分类

  (1)逻辑数据库设计反模式

在开始编码之前,需要决定数据库中存储什么信息以及最佳的数据组织方式和内在关联方式。

这包含了如何设计数据库的表、字段和关系。

  (2)物理数据库设计反模式

在确定了需要存储哪些数据之后,使用你所知的RDBMS关系型数据库技术特性尽可能高效地实现数据库管理。

这包含了定义表和索引,以及选择数据类型。也需要是要SQL的“数据定义语言”,比如Create Table语句。

  (3)查询反模式

SQL的查询是使用“数据操作语言”来完成,比如:Insert、Select、Update和Delete语句。

  (4)应用程序开发反模式

SQL应该会用在Java、.Net、C++、Php等语言构建的应用程序中,在应用程序中使用SQL的方式有好有坏。

反模式分解

  (1)目的

这是你可能要去尝试解决的任务。意图使用反模式提供解决方案,但通常会以引起更多问题而告终。

  (2)反模式

这一部分表述了通常使用的解决方案的本质,并且展示了那些没有预知到的后果,正是这些使得这些方案成为反模式。

  (3)如何识别反模式

一些固定的方式会有助于你辨识在项目中使用的反模式。你遇到的特殊障碍,或是你自己和别人说的一些话,

都能使你提前识别出反模式。

  (4)合理使用反模式

规则总有例外。在某些情况下,本来认为是反模式的设计却可能是合理的,或者说至少是所有的方案中最合理的。

  (5)解决方案

描述了首选的最佳解决方案,他们不仅能够解决原有的问题,同时也不至于引起由反模式导致的新问题。

SQL反模式,系列学习汇总

1SQL反模式学习笔记1 开篇

2、SQL反模式学习笔记2 乱穿马路

3、SQL反模式学习笔记3 单纯的树

4、SQL反模式学习笔记4 建立主键规范【需要ID】

5、SQL反模式学习笔记5 外键约束【不用钥匙的入口】

6、SQL反模式学习笔记6 支持可变属性【实体-属性-值】

7、SQL反模式学习笔记7 多态关联

8、SQL反模式学习笔记8 多列属性

9、SQL反模式学习笔记9 元数据分裂

10、SQL反模式学习笔记10 取整错误

11、SQL反模式学习笔记11 限定列的有效值

12、SQL反模式学习笔记12 存储图片或其他多媒体大文件

13、SQL反模式学习笔记13 使用索引

14、SQL反模式学习笔记14 关于Null值的使用

15、SQL反模式学习笔记15 分组

16、SQL反模式学习笔记16 使用随机数排序

17、SQL反模式学习笔记17 全文搜索

18、SQL反模式学习笔记18 减少SQL查询数据,避免使用一条SQL语句解决复杂问题

19、SQL反模式学习笔记19 使用*号,隐式的列

20、SQL反模式学习笔记20 明文密码

21、SQL反模式学习笔记21 SQL注入

22、SQL反模式学习笔记22 伪键洁癖,整理数据

04-08 11:03