SQL反模式學習筆記1 開篇

  • 2019 年 10 月 4 日
  • 筆記

什麼是「反模式」

  反模式是一種試圖解決問題的方法,但通常會同時引發別的問題。

反模式分類

  (1)邏輯數據庫設計反模式

在開始編碼之前,需要決定數據庫中存儲什麼信息以及最佳的數據組織方式和內在關聯方式。

這包含了如何設計數據庫的表、字段和關係。

  (2)物理數據庫設計反模式

在確定了需要存儲哪些數據之後,使用你所知的RDBMS關係型數據庫技術特性儘可能高效地實現數據庫管理。

這包含了定義表和索引,以及選擇數據類型。也需要是要SQL的「數據定義語言」,比如Create Table語句。

  (3)查詢反模式

SQL的查詢是使用「數據操作語言」來完成,比如:Insert、Select、Update和Delete語句。

  (4)應用程序開發反模式

SQL應該會用在Java、.Net、C++、Php等語言構建的應用程序中,在應用程序中使用SQL的方式有好有壞。

反模式分解

  (1)目的

這是你可能要去嘗試解決的任務。意圖使用反模式提供解決方案,但通常會以引起更多問題而告終。

  (2)反模式

這一部分表述了通常使用的解決方案的本質,並且展示了那些沒有預知到的後果,正是這些使得這些方案成為反模式。

  (3)如何識別反模式

一些固定的方式會有助於你辨識在項目中使用的反模式。你遇到的特殊障礙,或是你自己和別人說的一些話,

都能使你提前識別出反模式。

  (4)合理使用反模式

規則總有例外。在某些情況下,本來認為是反模式的設計卻可能是合理的,或者說至少是所有的方案中最合理的。

  (5)解決方案

描述了首選的最佳解決方案,他們不僅能夠解決原有的問題,同時也不至於引起由反模式導致的新問題。