Step 3: Create Relationships among Tables
A database consisting of independent and unrelated tables serves little purpose (you may consider to use a spreadsheet instead). The power of relational database lies in the relationship that can be defined between tables. The most crucial aspect in designing a relational database is to identify the relationships among tables. The types of relationship include:
one-to-many
many-to-many
one-to-one
One-to-Many
In a "class roster" database, a teacher may teach zero or more classes, while a class is taught by one (and only one) teacher. In a "company" database, a manager manages zero or more employees, while an employee is managed by one (and only one) manager. In a "product sales" database, a customer may place many orders; while an order is placed by one particular customer. This kind of relationship is known as one-to-many.
One-to-many relationship cannot be represented in a single table. For example, in a "class roster" database, we may begin with a table called Teachers, which stores information about teachers (such as name, office, phone and email). To store the classes taught by each teacher, we could create columns class1, class2, class3, but faces a problem immediately on how many columns to create. On the other hand, if we begin with a table called Classes, which stores information about a class (courseCode, dayOfWeek, timeStart and timeEnd); we could create additional columns to store information about the (one) teacher (such as name, office, phone and email). However, since a teacher may teach many classes, its data would be duplicated in many rows in table Classes.
To support a one-to-many relationship, we need to design two tables: a table Classes to store information about the classes with classID as the primary key; and a table Teachers to store information about teachers with teacherID as the primary key. We can then create the one-to-many relationship by storing the primary key of the table Teacher (i.e., teacherID) (the "one"-end or the parent table) in the table classes (the "many"-end or the child table), as illustrated below.
ขั้นตอนที่ 3:
การสร้างความสัมพันธ์ระหว่างตารางฐานข้อมูลประกอบด้วยตารางที่เป็นอิสระและไม่เกี่ยวข้องกับจุดมุ่งหมายเล็กๆ น้อย ๆ (ที่คุณอาจพิจารณาที่จะใช้สเปรดชีทแทน) พลังของฐานข้อมูลเชิงสัมพันธ์อยู่ในความสัมพันธ์ที่สามารถกำหนดระหว่างตาราง ด้านที่สำคัญที่สุดในการออกแบบฐานข้อมูลเชิงสัมพันธ์คือการระบุความสัมพันธ์ระหว่างตาราง ประเภทของความสัมพันธ์รวมถึง: หนึ่งไปยังหลายหลายต่อหลายแบบหนึ่งต่อหนึ่งOne-to-หลายคนใน "บัญชีรายชื่อระดับ" ฐานข้อมูลครูอาจสอนศูนย์หรือมากกว่าการเรียนในขณะที่การเรียนการสอนโดยหนึ่ง (และมีเพียงหนึ่ง) ครู ในฐานข้อมูลว่า "บริษัท " ผู้จัดการบริหารจัดการศูนย์หรือมากกว่าพนักงานในขณะที่พนักงานมีการจัดการโดยหนึ่ง (และมีเพียงหนึ่ง) ผู้จัดการ ใน "ยอดขายผลิตภัณฑ์" ฐานข้อมูลลูกค้าอาจวางคำสั่งซื้อจำนวนมาก; ในขณะที่คำสั่งจะถูกวางไว้โดยลูกค้าหนึ่งโดยเฉพาะ ชนิดของความสัมพันธ์นี้เป็นที่รู้จักกันว่าเป็นหนึ่งต่อหลาย. หนึ่งต่อหลายความสัมพันธ์ไม่สามารถแสดงในตารางเดียว ยกตัวอย่างเช่นในฐานข้อมูล "บัญชีรายชื่อระดับ" เราอาจเริ่มต้นด้วยตารางที่เรียกว่าครูที่เก็บข้อมูลเกี่ยวกับครูผู้สอน (เช่นชื่อสำนักงานโทรศัพท์และอีเมล) ในการจัดเก็บการเรียนการสอนโดยครูแต่ละครั้งเราสามารถสร้างคอลัมน์ Class1, Class2, Class3 แต่ใบหน้าเป็นปัญหาทันทีในจำนวนคอลัมน์ที่จะสร้าง ในทางกลับกันถ้าเราเริ่มต้นด้วยตารางที่เรียกว่าการเรียนการสอนซึ่งเก็บข้อมูลเกี่ยวกับการเรียน (courseCode, วันในสัปดาห์, timeStart และ timeEnd); เราสามารถสร้างคอลัมน์เพิ่มเติมในการจัดเก็บข้อมูลเกี่ยวกับ (หนึ่ง) ครู (เช่นชื่อ, สำนักงาน, โทรศัพท์และอีเมล์) . แต่เนื่องจากครูอาจสอนวิชาจำนวนมากข้อมูลจะถูกทำซ้ำในแถวจำนวนมากในชั้นเรียนตารางเพื่อสนับสนุนความสัมพันธ์แบบหนึ่งต่อหลายคนที่เราต้องออกแบบสองตาราง: ระดับชั้นตารางเพื่อเก็บข้อมูลเกี่ยวกับการเรียนที่มี classid เป็นคีย์หลัก; และครูผู้สอนในตารางเพื่อเก็บข้อมูลเกี่ยวกับครูที่มี teacherID เป็นคีย์หลัก จากนั้นเราจะสามารถสร้างความสัมพันธ์แบบหนึ่งต่อหลายคนโดยการจัดเก็บคีย์หลักของตารางครู (เช่น teacherID) (ที่ "หนึ่ง" -End หรือตารางแม่) ในตารางเรียน (ที่ "หลายคน" -End หรือ ตารางเด็ก) ดังแสดงด้านล่าง
การแปล กรุณารอสักครู่..

ขั้นตอนที่ 3 : สร้างความสัมพันธ์ระหว่างตาราง
ฐานข้อมูลประกอบด้วยตารางอิสระไม่เกี่ยวข้องและทำหน้าที่เล็ก ๆน้อย ๆ ( ที่คุณอาจจะพิจารณาการใช้สเปรดชีทแทน ) พลังของฐานข้อมูลเชิงสัมพันธ์อยู่ในที่สามารถกำหนดความสัมพันธ์ระหว่างตาราง กว้างยาวสำคัญที่สุดในการออกแบบฐานข้อมูลเชิงสัมพันธ์คือการระบุความสัมพันธ์ระหว่างตารางประเภทของความสัมพันธ์รวมถึง :
หนึ่งหลาย มากมายหลายแบบ
คนมากมายใน " บัญชีรายชื่อคลาสฐานข้อมูล ครูอาจสอนศูนย์หรือมากกว่าชั้น ในขณะที่ชั้นกำลังสอนโดยหนึ่ง ( และคนเดียว ) ครู ใน " ฐานข้อมูลบริษัท " ผู้จัดการจัดการศูนย์หรือมากกว่าพนักงาน ในขณะที่พนักงาน บริหารงานโดยหนึ่ง ( และคนเดียว ) ผู้จัดการ ในฐานข้อมูลการขาย " ผลิตภัณฑ์ลูกค้าอาจสั่งซื้อมาก ในขณะที่วางใบสั่ง โดยเฉพาะลูกค้า ความสัมพันธ์แบบนี้เป็นที่รู้จักกันเป็นหนึ่งใน มากมาย ที่ไม่สามารถความสัมพันธ์หลาย
แสดงในโต๊ะเดียว ตัวอย่างเช่นใน " บัญชีรายชื่อคลาสฐานข้อมูล เราอาจเริ่มต้นด้วยตารางเรียกว่าครู ซึ่งเก็บข้อมูลเกี่ยวกับครู ( เช่นชื่อ , สำนักงาน , โทรศัพท์และอีเมล์ )เก็บคลาสที่สอนโดยครูแต่ละคน เราสามารถสร้างคอลัมน์ class1 class2 class3 , , , แต่ใบหน้าปัญหาทันทีเมื่อกี่คอลัมน์ที่จะสร้าง ในทางกลับกัน ถ้าเราเริ่มต้นด้วยตารางเรียกว่าชั้นเรียนซึ่งเก็บข้อมูลเกี่ยวกับชั้นเรียน ( coursecode dayofweek timestart , และ , timeend ) ; เราสามารถสร้างคอลัมน์เพิ่มเติมเพื่อเก็บข้อมูลเกี่ยวกับ ( 1 ) อาจารย์ ( เช่นชื่อ ,สำนักงาน , โทรศัพท์และอีเมล์ ) อย่างไรก็ตาม เนื่องจากครูอาจสอนชั้นเรียนหลาย ๆในแถวของข้อมูลจะเป็นในชั้นเรียนหลายโต๊ะ
สนับสนุนหนึ่งความสัมพันธ์มากมาย เราต้องออกแบบตารางสองตาราง : โต๊ะเรียนเพื่อเก็บข้อมูลเกี่ยวกับวิชากับ classid เป็นคีย์หลัก และตารางเพื่อเก็บข้อมูลเกี่ยวกับครูกับครู teacherid เป็นคีย์หลักเราสามารถสร้างหนึ่งความสัมพันธ์มากมาย โดยจัดเก็บคีย์หลักของตาราง ( เช่น ครู teacherid ) ( " หนึ่ง " - จบ หรือผู้ปกครองของเด็ก โต๊ะในโต๊ะเรียน ( " มาก " - จบหรือตารางเด็ก ) ดังภาพประกอบด้านล่าง
การแปล กรุณารอสักครู่..
