DBDesign

日付カラム、インデックスないない問題

とあるフォローイング風景 seaさん「検索SQL速くしたくて悩んでるんですけど」jflute「おお」seaさん「これをどうにか」jflute「この日付カラムにINDEX貼ればおしまいのような」seaさん「INDEXを貼らずに速くできないかなと」jflute「なんで?」(小声でたど…

コードにコメント書くのにDBにコメント書かないの?

Why? ※主にサービス開発におけるDB設計を想定しています。「JavaDoc書きましょう」 「コード上にコメントを書きましょう」 これは、よく言われるし、わりとプログラマーにはだいぶ浸透していることだと思います。もちろん、「どんなコメントを書くのか?の精…

JPOUGに登壇させていただきました。

こちらのイベントです! JPOUG> SET EVENTS 20151017 DBFluteの話で登壇 「おーあーるまっぱー!」 という第一声から始まり、 DBFluteの話で登壇させて頂きました! おそらく、データベースのイベントで、 オープンソースのプロダクト、 しかも、O/Rマッパー…

Togetterに漢がやってきた!

// ClubDB2にふたたび漢がやってきた! http://togetter.com/li/730609 渋谷Javaでのせりーぬを見習って、 Togetterというのを使ってみました。 jfluteは、ネットがその...苦手なんですが... なんかインターネットやってるってかんじっ笑 素晴らしい講演でし…

漢のコンピュータ道さんの熱いお話

行ってきました! ClubDB2で、 「漢のコンピュータ道」で大変有名な奥野さんの講演。 http://nippondanji.blogspot.jp/ ずばりDB設計! とっても勉強になりました。 正規化の勉強で最初はそれなりにやりましたが、 やはり業務ドリブンで感覚的に習得してきた…

UtilとかUtilsとか

これちょっと面白い記事ですね。 // util vs utils | JFRANK http://www.joshuafrankamp.com/blog/util-vs-utils/ 少なくとも自分は Util って感じですね。 (DBFluteの中のクラスの Util は Util) 自分は、あんまりクラスに s は付けません。 単に日本人だか…

論理削除がデータを汚している

ベクトルの違うデータ まあ、それは事実。 ただ、履歴をそのまま残したいということも事実。 いちいち削除履歴テーブルなんて作ってられないのも事実。※ここでの論理削除は、復活する論理削除じゃなく、物理削除の代わりとして履歴のための論理削除を指しま…

ClubDB2で5分だけDBFluteしゃべりました

第146回 達人が語る こんなデータベース設計はヤダ! CLUB DB2にお越し頂きました皆様、 jfluteのライトニングトーク(LT)を お聞き頂きありがとうございます。 「DB設計者にもうれしいDBFlute」 というテーマでで発表させて頂きました。 ああああぁぁぁぁ く…

今思う、ERDツールに欲しいもの

決定打が... ひとむかしまえにくらべて、 ずいぶんとERDツールは発展してきたように思えます。 特にフリーのツール、安価なツールが機能を付け、 業務で利用するのに現実的なレベルになってきたかなと。 ただそれでも、やはり「もうこれでいいでしょ」って …

SQL Azureでは主キーが必須

SQL Azureでは主キーが必要っぽい http://d.hatena.ne.jp/aoki1210/20091230/p1 ちょっと前の記事で恐縮ですが、 これは自分がずっと "DBにこうなって欲しいなぁ" というものの一つで、良いことだと思います。 現実的には、今のDBMSがそのようになっていくこ…

All-in-Oneテーブル区分値について

「All-in-Oneテーブル区分値」とは、 完全にDBFlute用語ですが... 全ての区分値を一つのテーブルに まとめて管理する方式のことを示します。 <(ただの)テーブル区分値> 会員ステータスとか製品ステータスとか、 それぞれの区分値をそれぞれの独立したテー…

「もうDBはこうなってますので」はもったいない

DB設計のアプリ最適な作業 引用記事:「アプリ寄りなDB設計者、インフラ寄りなDB設計者」 ※こちらの記事の内容を前提とします。 「データベース物理設計」と聞くと、 どんなことを想像しますでしょうか? 大抵の人は、 データ型などを決定し論理モデルから物…

アプリ寄りなDB設計者、インフラ寄りなDB設計者

まず、色々な話をする前に、大きな前提として、 「アプリ寄りなDB設計者、インフラ寄りなDB設計者」 という分析をここで書きたいと思います。 DB設計者のバックグラウンド 一言で「DB設計者」と言っても、もともとはどんな仕事をやっていたのか結構バラバラ…

DBFlute: AdditionalForeignKey

DBFluteは、DB上のFK制約の情報を元に ConditionBeanでJOINできる関連を決定します。 FK制約が全く付与されていないDBでは、 別途「FK情報」をDBFluteに教えてあげる必要があります。 それが「AdditionalForeignKey」です。 {DBFluteクライアント}/dfprop/ad…