RECOMMEND
RECOMMEND
RECOMMEND
RECOMMEND
RECOMMEND
RECOMMEND
RECOMMEND
RECOMMEND
RECOMMEND
RECOMMEND
SELECTED ENTRIES
RECENT COMMENTS
RECENT TRACKBACK
CATEGORIES
ARCHIVES
MOBILE
qrcode
LINKS
PROFILE
OTHERS

08
--
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
--
>>
<<
--

bose999's memo

<< ITSS活用セミナー | main | マジカを勉強する >>
DrawerCaseのDB設計 2006/08/30現在
0
    DrawerCaseのDB設計における主Keyは全てサロゲートキー(代理キー)で
    意味の無い一意のIntegerにします。DBの自動インクリメントにして、
    主Keyの新規生成はHibernateに任せます。
    
    そして、主Keyにできるフィールドにはunique制約をつけて一意になる事は
    DB側でも守ります。もちろん複合主Keyにするような部分は複合の
    unique制約をつけます。という事で、DBに複合主Keyは作らないようにします。
    
    理由はHibernateで作るDAOをシンプルにする為が一番大きいですが、
    主Keyに意味を持たせなくてもレコードが一意であればいい。
    特定できて、たどり着ければ良い。と考えてそうしています。
    これは私のDB設計の考え方になります。
    
    というように私の安直な説明で納得できない方は
    はぶあきひろさんの下記のブログを参照してみてください。
    
    私が説明するよりも何百倍もよく、なぜ複合主Keyは
    作らないかをちょうど昨日書いていらっしゃいます。勉強になります。
    ココまで深くは私は考えてませんでした。。。orz
    
    http://d.hatena.ne.jp/habuakihiro/20060829
    
    DrawerCaseの現行のDB設計とDB作成のSQLが欲しい方は個別に連絡下さい。
    まだ、仮組みでお恥ずかしい部分満載なのでLGPLとは言えココには載せません。
    言い訳つきでDB設計とDB作成のSQLを送ります。。。orz
    
    | ModuleWorks | 09:10 | comments(0) | trackbacks(0) | - | - |









    http://bose.techie.jp/trackback/418887