ช่วยตรวจสอบ db diagram ให้หน่อยครับ

ตอบกระทู้

รูปแสดงอารมณ์
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
รูปแสดงอารมณ์อื่นๆ

BBCode เปิด
[img] เปิด
[url] เปิด
[Smile icon] เปิด

กระทู้แนะนำ
   

มุมมองที่ขยายได้ กระทู้แนะนำ: ช่วยตรวจสอบ db diagram ให้หน่อยครับ

Re: ช่วยตรวจสอบ db diagram ให้หน่อยครับ

โดย touleg » 31/03/2011 10:18 pm

ต้องดูที่ความสัมพันธ์ครับ
พนักงาน ทุกคนสร้าง Course เองได้
- ถ้าจะเก็บว่าพนักงานคนไหนเป็นคนเปิด Course ให้เก็บ ID พนักงาน(FK) ที่ตาราง Course
- ถ้าไม่ก็ไม่ต้องมี ID พนักงานใน Course

Course จะแบ่งออกเป็นหลายหัวข้อ
- หมายความว่า1 Topic มีได้แค่ Course เดียว แต่ 1 Course มีได้หลายหัวข้อ ความสัมพันธ์เป็นแบบ 1 ต่อ N เพราะฉะนั้นจะต้องเอา CourseID ไปเป็น FK ของ Topic

Topic
- ถ้า Topic 1 หัวข้อมีการประเมินแค่อย่างเดียว ครั้งเดียว ก็ไม่จำเป็นต้องมี TopicScore ให้เอา Attribute ของ TopicScore ไปใส่รวมกับ Topic เลย
- ถ้า Topic 1 หัวข้อประเมินได้จากพนักงานหลายคน ให้เอา ID ของพนักงานไปเป็น FK ของ TopScore และเอา TopicID ของ Topic ไปเป็น FK ของ TopicScore ด้วย จะเห็นว่า TopicScore เป็น WeekEntity ถ้าไม่มี Topic ก็ไม่มีตารางนี้ เวลาทำให้เอา TopicID มาเป็น Primarykey ของ TopicScore และเพื่อให้มันไม่ซ้ำกันของคีย์เพราะหัวข้อหนึงประเมินได้จากพนักงานหลายคน จึงต้องเอา ID ของพนักงานมาเป็น Primarykey คู่กับ TopicID ด้วย

Course Score
- ส่วนนี้ไม่ได้ถูกประเมินจากพนักงาน ไม่ต้องมี FK จาก Employee
- ถ้า Course Score มีแค่ 1 ครั้งของ Course 1 ID ก็เอาไปรวมไว้ที่ตาราง Course เลย ไม่ต้องมีตาราง Course Score
- คะแนนรวมของ Course ความจริงแล้วมาจากคะแนนรวมของ Topic ใช่ไหม ถ้าใช้ก็ไม่จำเป็นต้องเก็บก็ได้เพราะมันเป็น Transaction ไม่ใช่ Master File คือเป็นค่าที่เปลี่ยนแปลงได้ที่เกิดจากการการทำการเปลี่ยนแปลงหรือการคำนวณต่างๆ แต่จะเก็บก็ได้แล้วแต่

Re: ช่วยตรวจสอบ db diagram ให้หน่อยครับ

โดย sleepinlove » 28/03/2011 8:05 am

mysql client command line ครับ

Re: ช่วยตรวจสอบ db diagram ให้หน่อยครับ

โดย imsn » 25/03/2011 8:41 pm

ใช้ engine ตัวไหนครับ

ช่วยตรวจสอบ db diagram ให้หน่อยครับ

โดย sleepinlove » 25/03/2011 3:36 pm

พอดีผมจะเขียน web app ครับ แต่ว่ากลัวว่า db diagram จะผิดครับ
พอดีืที่เรียนมาอาจารย์เค้าบอกว่าเวลาเขียน อย่าให้เกิด loop
แต่ผมเขียนยังไงก็ติด loop
ก็เลยอยากให้พี่ๆช่วยแนะนำหน่อยนะครับว่าควรจะทำยังไงดี
รูปภาพ

ถามอีกอย่างนะครับ
ตอนนี้ผมใช้ตัว sql comman line client อยู่ครับ
อยากทราบว่า จะเขียนให้แต่ละ table ติดต่อกันยังไงครับ
เพราะตอนเรียน จะต้องเขียน references หรือว่า ต้องใช้ phpmyAdmin
ในการเชื่้อมต่อครับครับ

ข้างบน