Upgrade to Pro — share decks privately, control downloads, hide ads and more …

超入門!テーブル設計をデータモデリングから考えよう

 超入門!テーブル設計をデータモデリングから考えよう

基本から学ぶ テーブル設計 超入門!
〜データモデリングとテーブル設計の基本を学ぼう〜
https://modeling-how-to-learn.connpass.com/event/242944/
にてお話した際のプレゼン資料です。

入門者に向けて、テーブルを設計する上でモデリングすると良いよという話をしました。(熟練者は、そうだよねーっておさらいするか、そこは別の考え方があるんじゃないなどを呟いて貰えればといった内容です)

モデリングして設計する際に、色々なモデルがあります。その中で、データモデルは静的な要素が強いモデルなので、モデリング全般を考えた際に、入門者にとって捉えやすいのではと考えています。
テーブルを設計する上で、データモデリングをしてデータモデルを作ることで、より良いテーブル構造を考えやすくなります。

#テーブル設計 #モデリング #データモデル #RDRA #概念モデル #論理モデル #物理モデル #ドメインモデル

Avatar for KentaroTakasaki

KentaroTakasaki

March 30, 2022
Tweet

More Decks by KentaroTakasaki

Other Decks in Programming

Transcript

  1. σʔλϕʔε ॲཧ ாථ ۀ຿ ը໘ ॲཧ ॲཧ σʔλ ʲͳͥɺσʔλ͔Βߟ͑Δ͔ʁʳ ը໘΍ாථɺॲཧ͸ɺ

    ސ٬ͷཁ๬มԽ΍ۀ຿มԽͰ ٕज़มԽͰมΘΓ΍͍͕͢ɺ σʔλ͸มΘΓʹ͍͘ͷͰ த৺ʹͳΓ΍͍͢
  2. γεςϜ σʔλ ϕʔε ֓೦ Ϟσϧ ཁ݅ ఆٛ ઃܭ ࣮૷ 3%3"ͷྖҬ

    ࿦ཧ Ϟσϧ ܨ͕Δ ෺ཧ Ϟσϧ ʲংͰ΍ͬͨͷ͸ɺ͜͜ͷϨϕϧʳ υϝΠϯϞσϧ
  3. !" #$ $%&'( )* +,)* -./ 0)$% &'1 -.)* 0)

    23 4567 ʲϏδωείϯςΩετਤͰߟ͑ͯΈΔʳ ઌఔͷʮച্Λొ࿥͢Δʯͱ͍͏΋ͷ͸ɺൢചۀ຿ͷҰͭͩͬͨ ྫ͑͹ɺ঎඼͸ൢചۀ຿͚ͩͰͳ͘ɺ࢓ೖۀ຿ʹ΋བྷΜͰ͍Δ
  4. !" #$ $%&'8 )* +,)* -./ 0)$% &'1 -.)* 0)

    23 4567 ʲಉࣾ͘͡һ΋ߟ͑ͯΈΔʳ ઌఔͷʮച্Λొ࿥͢Δʯͱ͍͏΋ͷ͸ɺൢചۀ຿ͷҰͭͩͬͨ ࣾһʹؔ͢Δ؅ཧΛ͍ͯ͠Δͷ͸ɺࣾһ؅ཧۀ຿ʹ΋བྷΜͰ͍Δ
  5. ʲ֓೦Ϟσϧɺ࿦ཧϞσϧɺ෺ཧϞσϧʳ γεςϜ σʔλ ϕʔε ֓೦ Ϟσϧ υϝΠϯϞσϧ ࿦ཧ Ϟσϧ ෺ཧ

    Ϟσϧ σʔλϞσϧΛߟ͑Δͱ͖ʹɺͭͷϞσϧͷཻ౓͕͋Δ ֓೦Ϟσϧɹɿɹந৅౓͕Ұ൪ߴ͍၆ᛌͨ͠Ϟσϧ ࿦ཧϞσϧɹɿɹ֤߲໨ͱͯ͠Ͳ͏͍ͬͨ෺͕͋Δ͔·ͰΛߟ͑ͨϞσϧ ෺ཧϞσϧɹɿɹσʔλϕʔεಛੑͳͲ΋౿·࣮͑ࡍʹγεςϜʹ࡞Δ ɹɹɹɹɹɹɹɹϨϕϧͷϞσϧ
  6. ʲ֓೦Ϟσϧɺ࿦ཧϞσϧɺ෺ཧϞσϧʳ $% 23 ,9 ,9:; O  O  

    O ,9<=>? $%>?@@ABCD ച্ 23>? 23E( FG ঎඼ ,9<=>?( :;H 23>?@@ABCD( IJ ച্໌ࡉ $%>? $%KE ࣾһ  O O   O ֓೦Ϟσϧ ࿦ཧϞσϧ ෺ཧϞσϧ Ϩϕϧ
  7. $% 23 ,9 ,9:; O  O   O

    ,9<=>? $%>?@@ABCD ച্ 23>? 23E( FG ঎඼ ,9<=>?( :;H 23>?@@ABCD( IJ ച্໌ࡉ $%>? $%KE ࣾһ  O O   O ֓೦Ϟσϧ ࿦ཧϞσϧ ෺ཧϞσϧ Ϩϕϧ ʲ֓೦Ϟσϧ΋େࣄʳ ͜ΜͳβοΫϦͨ͠΋ͷ͕ ඞཁͳͷ͔ͱ͍͏ࢥ͍΋ ग़ͯ͘Δ͕ɺࢥ͍ͬͯΔΑΓ΋ ਓʑͷؒͰೝࣝ͸ҧ͍ͬͯΔ
  8. ʲ۩ମతʹߟ͑Δࡍʹଟॏ౓͔ΒσʔλΛʳ ,9<=>? $%>?@@ABCD ച্ 23>? 23E( FG ঎඼ ,9<=>?( :;H

    23>?@@ABCD( IJ ച্໌ࡉ $%>? $%KE ࣾһ  O O   O ͲΜͳσʔλ͕Ͱ͖͕͋Δ͔Λߟ͑ͯɺ ଟॏ౓Λҙࣝͯ͠σʔλΠϝʔδΛ ݻΊ͍ͯ͘ͱ۩ମతͳσʔλߏ଄͕ ݟ͑ͯ͘Δ ·ͨɺ࣮ࡍʹදܭࢉͳͲͰɺ σʔλΛ࡞ͬͯݟΔ͜ͱͰ ۩ମԽ͞Εաෆ଍΍͓͔͠ͳߏ଄Λ νΣοΫ͢Δ͜ͱ͕Ͱ͖Δ ࣾһ͸ɺച্ʹରͯ͠ ͔ͳΒͣ̍ͭ͋Δ ࣾһ͸ɺച্ʹରͯ͠ ͔ͳΒͣ̍ͭ͋Δ
  9. 2

  10. ʲσʔλϞσϧ͸ɺσʔλͷߏ଄ʳ γεςϜ σʔλ ϕʔε ֓೦ Ϟσϧ υϝΠϯϞσϧ ࿦ཧ Ϟσϧ ෺ཧ

    Ϟσϧ ݟ͖ͯͨ࿦ཧϞσϧ΍෺ཧϞσϧ͸ɺσʔλΛத৺ͱͨ͠σʔλߏ଄ ͋͘·Ͱ΋ɺσʔλͷߏ଄Λݱͨ͠΋ͷͱͳΔɻ σʔλʹ͸ɺϏδωεͷϧʔϧ΍ϩδοΫɺঢ়ଶͷมߋϧʔϧͱ͍ͬͨ ॲཧ΍ۀ຿ϑϩʔͳͲͷϓϩηε͸දݱ͞Ε͍ͯͳ͍ɻ
  11. ʲϏδωεϧʔϧ͸ɺυϝΠϯϞσϧͰʳ γεςϜ σʔλ ϕʔε ֓೦ Ϟσϧ υϝΠϯϞσϧ 3%3"ͷྖҬ ࿦ཧ Ϟσϧ

    ܨ͕Δ ෺ཧ Ϟσϧ Ϗδωεͷϧʔϧ΍ϩδοΫɺঢ়ଶͷมߋϧʔϧͱ͍ͬͨॲཧ΍ ۀ຿ϑϩʔͳͲͷϓϩηεΛҙࣝͯ͠ϞσϧԽ͢Δͷ͕υϝΠϯϞσϧ 3%3"Ͱ·ͱΊΔͱɺ όϦΤʔγϣϯɾ৚݅ਤʹϏδωεϧʔϧ΍ϩδοΫɺ ঢ়ଶϞσϧਤʹঢ়ଶͷมߋϧʔϧͳͲͷॲཧͷݯઘ͕ू·ͬͯ͘ΔͷͰɺ ͦΕΛυϝΠϯϞσϧ΁൓ө͍ͯ͘͠
  12. ʲσʔλϞσϧ͸੩తͳͷͰ෼͔Γ΍͍͢ʳ ,9<=>? $%>?@@ABCD ച্ 23>? 23E( FG ঎඼ ,9<=>?( :;H

    23>?@@ABCD( IJ ച্໌ࡉ $%>? $%KE ࣾһ  O O   O ࿦ཧϞσϧ ෺ཧϞσϧ Ϩϕϧ σʔλϞσϧ͸ɺ͋Δ࣌఺Ͱͷஅ໘ͱͳΔσʔλΛ؅ཧ͢Δ෺ͳͷͰ ੩తͳͷͰ෼͔Γ΍͍͢ɻ ࠓ೔ݟ͖ͯͨ௨Γ۩ମతΠϝʔδ΋࣋ͪ΍͍͢ɻ ͳͷͰɺϞσϦϯάΛษڧ࢝͠ΊΔࡍʹऔֻ͔ͬΓͱͯ͠Φεεϝʂ