タグ

ブックマーク / torazuka.hatenablog.com (4)

  • メモ: 複合主キーを云々いう前に足りなかったこと - 虎塚

    先日、データベース設計で、ナチュラルキーの組合せを使った複合主キーと、その代替となるサロゲートキーのどちらを使うか、という話を書きました。 複合主キーを避けるべき理由 - 虎塚 月末までには、改めて考えを整理するつもりでした。しかし、残念ながら、今の自分の知識ではムリそうです。そこで、考えたことを少しずつ出力することにしました。 この問題について考えるべき(だった)こと 前回の記事に足りなかった観点が3つあります。 データベースの論理設計と物理設計を分ける 複数ある要素の一部にだけ言及していると自覚する すべては程度問題である これらを1つずつ考えてみます。 1. 論理設計と物理設計を分ける まず、データベースの論理設計と物理設計を分けて考える必要がありました。非常に、基的なことですが・・・ 論理設計で、ユニーク制約が必要なキーと、行を一意に特定するキー(候補キー)を特定します。もちろん

    メモ: 複合主キーを云々いう前に足りなかったこと - 虎塚
  • 「祝☆Java 8 Launch」イベントへ行ってきました - 虎塚

    月曜まで4連休でのんびりしていて書くのが遅くなりましたが、金曜日にJJUGのイベントに行ってきました。会場は青山のオラクルさんでした。 Java8をさっそく使っていきたいと思います。今の仕事はC#なので、ちょっとした個人的な作業や、オフラインリアルタイムどう書くで解答を書くのに使うのがメインになりそうですけれども。 http://jjug.doorkeeper.jp/events/9344 当日取ったメモや感想を書いておきます。 祝 Java SE 8 正式リリース(寺田さん) 資料: http://yoshio3.com/2014/03/21/congrats-javase8-launch/ 動画: https://www.youtube.com/watch?v=ssrkw3v9tdM Javaの最新情報へのリファレンスが満載の資料です。 Java 8では、クラスファイルのフォーマットが

    「祝☆Java 8 Launch」イベントへ行ってきました - 虎塚
  • Webアプリケーションのサービスクラスとは何か - 虎塚

    「JSP、サーブレット、サービス、DAO、DTOといった構成のアプリケーションにおけるサービスクラスとは何か」、という問いに自分なりの答えを出すのが、今日の宿題です。 自分の解答 ※注意: 以下の文章は言い切り形式で書いていますが、間違っているかもしれません。 ちょろっと調べたのですが、サービスについてそのものズバリの単一な定義を見つけることはできませんでした。なので、いくつかの観点から理解することを試みます。 モデル、ビュー、コントローラにおける「サービス」 アプリケーションをモデル、ビュー、コントローラに分けて見たとき、サービスはモデルに属します。モデルには、データベースアクセスを行うクラスと、システム固有の処理を行うクラスがあります。 サービスは、後者のシステム固有の処理を行うクラスに当たります。 なお、データベースアクセスを行うクラスは、データを保持するクラスと、データベースアクセ

    Webアプリケーションのサービスクラスとは何か - 虎塚
  • 複合主キーを避けるべき理由 - 虎塚

    データベース設計の話をしていて、「連番の主キーは業務上意味のないデータだから、テーブルに持たせるのはムダだ。複合主キーにするべき」という意見を聞く機会がありました。 脊髄反射で「ないわー」と思ったものの、理由を上手く説明できなかったので、改めて考えてみました。 その結果、次のような結論に至りました。 単一の連番カラムによる主キーと、複合カラムによる主キーとで迷ったら 実装をシンプルにし、業務変更の影響範囲を小さくするために、複合主キーを避ける というわけで、調べたことや考えたことをメモしておきます。# 間違っている部分があれば、教えていただけると嬉しいです。 (2011/07/25 追記)複合主キーとサロゲートキーについては、要件やシステムに依存して多様な判断がありうると思います。にもかかわらず、「避けるべき」というタイトルにしたのは極端でした。申し訳ありません。ご指摘下さった皆さん、あり

    複合主キーを避けるべき理由 - 虎塚
    yukung
    yukung 2011/07/14
    id:imai78さんの意見に一票。所謂「業務知識こそ至高」みたいな人がモデリングすることが多いSIの場合はサロゲートキーは一度も見なかったけど、今は逆に複合主キーを見かけない。条件指定がとてもシンプル。
  • 1