SQL Antipattens ch1 Introduction

RDBSQL勉強メモ

出典: 


Introduction

  • 著者Bill Karwinは人生最初のSQLの仕事を拒否した

    • SQLのサブセットを作る話
    • 「SELECT文だけでいいよ」
    • RDBMS全部開発するようなもの
  • 1992からSQLについて多くの仕事をするように

    • メーリングリストやニュースグループで何千もの質問に回答するように

      • 同じ質問がしょっちゅうある
      • 同じ過ちを何度も繰り返されているということ

Who This Book Is For

  • 初心者ベテラン問わず
  • 他のコードを見て参考にする時、良い例と悪い例を見分けるために
  • 知っているアンチパターンについては新たな視座を得られるかもしれない
  • 知らないアンチパターンもあるかもしれない
  • 熟練したDBAにもソフトウェア開発者の視点をもたらす

What’s in This Book

  • アンチパターンとは

    • ある問題の解決のためのもの
    • だが、別の問題を生ずるもの
  • どのようにして踏んでしまうか

    • 独立して思いつく
    • 学校の教えや文献から
  • 本書で扱うアンチパターン

    • テクサポやトレーニングセッションで話したもの
    • インターネットフォーラムで回答したもの
    • 著者自身が踏んだもの

      • 自分でしくじったものを夜なべで直すことは最高の教師

Parts of This Book

  • 4つの章立て

    • Logical Database Design Antipatterns

      • 論理設計
    • Physical Database Design Antipatterns

      • SQLのDDL絡むもの
    • Query Antipatterns

      • DML
    • Application Development Antipatterns
  • パターンにはユーモラス・喚情的なタイトルをつけた
  • 多くはリレーショナルモデル理論を誤解していることに起因する

Anatomy of an Antipattern

  • 各アンチパターンの構成

    • Objective

      • アンチパターンが解決しようとしている問題

        • 別の問題を生ずるんですけど
    • The Antipattern

      • アンチパターンをアンチパターンたらしめているゆえん
    • How to Recognize the Antipattern

      • アンチパターンが使われているのを発見するための手がかり
    • Legitimate Uses of the Antipattern

      • アンチパターンを承知のうえで有効活用できる局面
    • Solution

      • よりよい解法

What’s Not in This Book

  • SQLの基礎
  • パフォーマンス
  • SQL標準でないもの

    • ベンダ拡張については明記する
  • ORM
  • DBAの仕事
  • RDB以外のDB

英語

  • turn off

    • 興味を失わせる、しらけさせる
  • paint oneself into a corner

    • 自分の落ち度で困った状況に陥る
  • blunder

    • 失敗
  • evocative

    • 喚情的な
  • colloquially

    • 口語的に
    • 文中では、「SQL」を「シークウェル」と発音することについて言っている