タグ

databaseとdesignに関するoinumeのブックマーク (4)

  • 【テーブル正規化】候補キーから第3正規化までをマスターする - Qiita

    はじめに 今週末はデータベーススペシャリスト試験ですね。 DBの正規化について、毎回忘れて勉強し直すのでまとめておこうと思います。 試験でも実務でも第3正規化まで出来れば大概OKですね。 下記順序で進めるのがポイントです。 非正規形 第1正規形にする 候補キーを探す ←ここがミソ! 主キーを探す ←ここもミソ! 第2正規形にする 第3正規形にする Qiitaなので記事テーブルを例に考えてみましょう。 記事テーブル(記事ID, 記事タイトル, カテゴリID, カテゴリ名, カテゴリ内での表示順, 作成者ユーザID, コメント番号, コメント文, コメント投稿者ユーザID) 参考:2017年度春期試験の午後Ⅰ 電子会議投稿(電子会議番号, 議題, 分野番号, 分野名, 表示順, 作成者ユーザID, 投稿番号, 投稿文, 投稿者ユーザID) 非正規形 人間の目でパッと見てわかりやすいのが非正

    【テーブル正規化】候補キーから第3正規化までをマスターする - Qiita
    oinume
    oinume 2020/07/11
    Qiitaの記事という身近な例だったのでわかりやすい
  • みんなRailsのSTIを誤解してないか!? - Qiita

    な、なるほど...!? いや、みんなちょっと誤解してるんじゃないか? よーし、お父さん、みんながSTIを使いたくなるようにちょっと頑張っちゃうぞ! STIとは STIは、単一の継承階層に所属するクラス群を、ただひとつのテーブルを使って永続化する手法です。 PofEAA Railsのドキュメントを漁ると、次のような記述が見つかります。 http://api.rubyonrails.org/classes/ActiveRecord/Inheritance.html Note, all the attributes for all the cases are kept in the same table. Read more: www.martinfowler.com/eaaCatalog/singleTableInheritance.html このリンク先は、リファクタリングで有名なMarti

    みんなRailsのSTIを誤解してないか!? - Qiita
  • OTN Japan - 今だからデータ・アクセスを真剣に考える! 第1回

    システムを構築する上で必須となるデータベースアクセスの機能、皆さんはどのように実装しているでしょうか?JDBCで記述/EJB Entity Bean(BMP/CMP)を利用/データアクセスフレームワークを利用、等様々な実装方法を選択されているかと思います。 この連載では、様々な観点からデータアクセスに関わる事項を取り上げ、皆ささんがデータベースアクセスについて、少し考えてみる場になればと思っています。まず今回のデータアクセスことはじめ(前編/後編)では、これから様々なデータベースアクセスに関する事項を扱っていく上でのベースとなる知識を取り上げます。 現在、Javaプログラミング言語を用いてエンタープライズシステムを開発する場合、要件変更への設計・実装の変更の容易性、JDBC、EJB Entity Beanなどのデータアクセス要素技術とのマッピングの容易性、等々の理由により、システム全体を論

  • OTN Japan - 今だからデータ・アクセスを真剣に考える! 第2回

    前回の「データベースことはじめ(前編)」では、システムの論理的な階層の中でドメイン層をどの様に実装するかということで、PoEAAのアーキテクチャパターンを元に見てみました。今回は、パーシステンス層のアーキテクチャパターン+αを見ていきます。 まずパーシステンス層を見る前に、今回の話題とは直接ではないですが、間接的に関わってくる層のサービス層に関して少し触れておきたいと思います。サービス層は、ドメイン層配下のビジネスロジックをユーザインタフェース層やアプリケーション層から利用するためのインタフェースとして機能します。一般的にトランザクションロジックやセキュリティロジック、ドメインロジックのワークフロー等のドメインロジックとは直接関係ないロジックを含むのみで、大きなドメインロジックを含むことは好ましくないとされる層です。 では、パーシステンス層です。ここまで、役割的には、データアクセスの実装を

  • 1