2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

SQLアンチパターン:ID リクワイアド(とりあえず ID)

Posted at

SQLアンチパターンを読み始めたので、1つ1つ書いてのメモです

目的

  • 主キーの規約を確立する
  • このパターンは経験がないかも
  • Articles ArticleTags Tags という関係のテーブルは作ったことがあるけれど、ArticleTags にユニーク制約いれたかな...

アンチパターン

  • 全てのテーブルにid列を用いる
  • 重複行を許可してしまう
  • USING を使用する
  • この関数知らなかった...
  • 複合キーは使いにくい

用いてもいいパターン

  • 一部のオブジェクトリレーショナルマッピング(ORM)フレームワークは、開発をシンプルにするため に、設定より規約(convention over configuration)の原則
  • Railsとか

解決策

  • わかりやすい列名にしよう
  • 「SQL Programming Style」という本があるらしい
  • 規約に縛られない

まとめ

  • 規約は、役立つと思える場合のみ従いましょう。

感想

  • Rails を使って開発していると id カラムありきで考えてしまうけれど、役立っているのか?について考えておかないとダメ

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?