การจัดเก็บข้อมูลแบบตาราง Relational Database
การจัดเก็บข้อมูลแบบตาราง หรือ รีเลชันนัลดาต้าเบส(Relational Database) เป็นการจัดเก็บข้อมูลที่ได้รับนิยมมากที่สุดในโลกแห่งความเป็นจริง(ที่มา) คำว่า รีเลชัน(Relation) เป็นคำนามทางคณิตศาสตร์หมายถึงตาราง(ที่มา) ส่วนคำว่ารีเลชันนัล(Relational) คือ Relation ต่อด้วย-al เป็นคําวิเศษณ์ ใช้ขยายคำว่า ดาต้าเบส(Database) โดยสรุป รีเลชันนัลดาต้าเบสหมายถึงฐานข้อมูลที่มีลักษณะเป็นตาราง ที่ต้องอธิบายคำว่ารีเลชันนัลดาต้าเบสเพราะข้อมูลหลายแหล่งอธิบายในจุดนี้ผิดโดยเข้าใจว่ารีเลชันนัลมาจากรีเลชันชิป(Relationship) แปลว่าความสัมพันธ์ ซึ่งไม่ใช่
องค์ประกอบของตาราง
ตารางประกอบไปด้้วยคอลัมน์(Column)และแถวหรือโรวในภาษาอังกฤษ(Row) แต่ในทางคณิตศาสตร์ แถวจะมีอีกชื่อเรียกว่าทูเปิล (Tuple) ทูเปิลใช้เรียกบางสิ่งที่เหมือนกัน เช่น พิซซ่า ถ้าหันออกเป็น 8 ส่วนเท่ากัน ก็จะเรียกว่า 8 ทูเปิล สรุปองค์ประกอบของตารางและชื่อเรียกเป็นไปตามภาพข้างล่าง
| Column 1 | Column 2 | Column 3 |
|---|---|---|
| Data Row1 or Tuple1 | Data Row1 or Tuple1 | Data Row1 or Tuple1 |
| Data Row2 or Tuple2 | Data Row2 or Tuple2 | Data Row2 or Tuple2 |
การแปลงเอนติตี้เป็นตาราง
การแปลงเอนติตี้ให้กลายเป็นตารางสามารถทำได้ง่ายๆ ดังนี้
เอนติตี้กรุ๊ป แปลงเป็น ตาราง
แอตตริบิ้ว แปลงเป็น คอลัมน์
เอนติตี้ แปลงเป็น แถว
เพื่อให้เห็นภาพ สมมติมีการเก็บข้อมูลคลินิกสุนัข ซึ่งมีการเก็บคนซึ่งเป็นเจ้าของสุนัขและตัวสุนัขเอง ซึ่งมีเอนติตี้กรุ๊ปดังนี้
เอนดิตี้กรุ๊ปคน
ชื่อ อวยชัย สูง 180 เซนติเมตร น้ำหนัก 80 กิโลกรัม
ชื่อ ทิปฟ้า สูง 170 เซนติเมตร น้ำหนัก 55 กิโลกรัม
เอนติตี้กรุ๊ปสุนัข
ชื่อ ชาลี สูง 43 เซนติเมตร น้ำหนัก 20 กิโลกรัม
ชื่อ ข้าวเหนียว สูง 50 เซนติเมตร น้ำหนัก 23 กิโลกรัม
ผลของการแปลง
เนื่องจากมีสองเอนติตี้กรุ๊ป ก็จะแปลงได้สองตาราง
แอตตริบิวต์ ชื่อ สูง น้ำหนัก ก็แปลงเป็น คอลัมน์ ชื่อ สูง น้ำหนัก
และเนื่องจากเอนติตี้กรุ๊ปแต่ละตัวมีเอนติตี้สองตัว ก็จะแปลงเป็นแถวสองแถวในแต่ละตาราง
ผลสุดท้ายจะได้ตารางดังข้างล่าง
ตารางคน(เจ้าของสุนัข)
| ชื่อ | สูง(ซม.) | น้ำหนัก(กก.) |
|---|---|---|
| อวยชัย | 180 | 80 |
| ทิปฟ้า | 170 | 55 |
ตารางสุนัข
| ชื่อ | สูง(ซม.) | น้ำหนัก(กก.) |
|---|---|---|
| ชาลี | 43 | 20 |
| ข้าวเหนียว | 50 | 23 |
