SQL - แนวคิด RDBMS
RDBMS คืออะไร?
RDBMS ย่อมาจาก Rร่าเริง Database Mการจัดการ System. RDBMS เป็นพื้นฐานสำหรับ SQL และสำหรับระบบฐานข้อมูลสมัยใหม่ทั้งหมดเช่น MS SQL Server, IBM DB2, Oracle, MySQL และ Microsoft Access
ระบบการจัดการฐานข้อมูลเชิงสัมพันธ์ (RDBMS) คือระบบการจัดการฐานข้อมูล (DBMS) ที่ใช้โมเดลเชิงสัมพันธ์ตามที่ EF Codd แนะนำ
ตารางคืออะไร?
ข้อมูลใน RDBMS ถูกเก็บไว้ในวัตถุฐานข้อมูลซึ่งเรียกว่า tables. ตารางนี้เป็นชุดข้อมูลที่เกี่ยวข้องและประกอบด้วยคอลัมน์และแถวจำนวนมาก
โปรดจำไว้ว่าตารางเป็นรูปแบบการจัดเก็บข้อมูลที่ใช้กันทั่วไปและง่ายที่สุดในฐานข้อมูลเชิงสัมพันธ์ โปรแกรมต่อไปนี้เป็นตัวอย่างของตาราง CUSTOMERS -
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
ฟิลด์คืออะไร?
ทุกตารางแบ่งออกเป็นเอนทิตีขนาดเล็กที่เรียกว่าเขตข้อมูล ฟิลด์ในตาราง CUSTOMERS ประกอบด้วย ID, NAME, AGE, ADDRESS และ SALARY
เขตข้อมูลคือคอลัมน์ในตารางที่ออกแบบมาเพื่อรักษาข้อมูลเฉพาะเกี่ยวกับทุกระเบียนในตาราง
ระเบียนหรือแถวคืออะไร?
ระเบียนเรียกอีกอย่างว่าเป็นแถวของข้อมูลคือแต่ละรายการที่มีอยู่ในตาราง ตัวอย่างเช่นมี 7 ระเบียนในตาราง CUSTOMERS ด้านบน ต่อไปนี้เป็นข้อมูลแถวเดียวหรือบันทึกในตารางลูกค้า -
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
+----+----------+-----+-----------+----------+
ระเบียนคือเอนทิตีแนวนอนในตาราง
คอลัมน์คืออะไร?
คอลัมน์คือเอนทิตีแนวตั้งในตารางที่มีข้อมูลทั้งหมดที่เกี่ยวข้องกับฟิลด์เฉพาะในตาราง
ตัวอย่างเช่นคอลัมน์ในตาราง CUSTOMERS คือ ADDRESS ซึ่งแสดงถึงคำอธิบายสถานที่ตั้งและจะเป็นดังที่แสดงด้านล่าง -
+-----------+
| ADDRESS |
+-----------+
| Ahmedabad |
| Delhi |
| Kota |
| Mumbai |
| Bhopal |
| MP |
| Indore |
+----+------+
ค่า NULL คืออะไร?
ค่า NULL ในตารางคือค่าในเขตข้อมูลที่ดูเหมือนจะว่างเปล่าซึ่งหมายความว่าเขตข้อมูลที่มีค่า NULL เป็นเขตข้อมูลที่ไม่มีค่า
เป็นสิ่งสำคัญมากที่ต้องเข้าใจว่าค่า NULL แตกต่างจากค่าศูนย์หรือเขตข้อมูลที่มีช่องว่าง ฟิลด์ที่มีค่า NULL คือฟิลด์ที่เว้นว่างไว้ระหว่างการสร้างเรกคอร์ด
ข้อ จำกัด ของ SQL
ข้อ จำกัด คือกฎที่บังคับใช้กับคอลัมน์ข้อมูลบนตาราง สิ่งเหล่านี้ใช้เพื่อ จำกัด ประเภทของข้อมูลที่สามารถเข้าไปในตารางได้ สิ่งนี้ทำให้มั่นใจได้ถึงความถูกต้องและความน่าเชื่อถือของข้อมูลในฐานข้อมูล
ข้อ จำกัด อาจเป็นระดับคอลัมน์หรือระดับตารางก็ได้ ข้อ จำกัด ระดับคอลัมน์จะใช้กับคอลัมน์เดียวเท่านั้นในขณะที่ข้อ จำกัด ระดับตารางจะใช้กับทั้งตาราง
ต่อไปนี้เป็นข้อ จำกัด ที่ใช้บ่อยที่สุดใน SQL -
NOT NULL Constraint - ตรวจสอบให้แน่ใจว่าคอลัมน์ต้องไม่มีค่า NULL
DEFAULT Constraint - ระบุค่าเริ่มต้นสำหรับคอลัมน์เมื่อไม่มีการระบุ
UNIQUE Constraint - ตรวจสอบให้แน่ใจว่าค่าทั้งหมดในคอลัมน์แตกต่างกัน
คีย์หลัก - ระบุแต่ละแถว / ระเบียนในตารางฐานข้อมูลโดยไม่ซ้ำกัน
คีย์ต่างประเทศ - ระบุแถว / ระเบียนโดยไม่ซ้ำกันในตารางฐานข้อมูลอื่น
CHECK Constraint - ข้อ จำกัด CHECK ช่วยให้มั่นใจได้ว่าค่าทั้งหมดในคอลัมน์เป็นไปตามเงื่อนไขบางประการ
INDEX - ใช้เพื่อสร้างและดึงข้อมูลจากฐานข้อมูลอย่างรวดเร็ว
ความสมบูรณ์ของข้อมูล
ประเภทความสมบูรณ์ของข้อมูลต่อไปนี้มีอยู่ในแต่ละ RDBMS -
Entity Integrity − ไม่มีแถวที่ซ้ำกันในตาราง
Domain Integrity − บังคับใช้รายการที่ถูกต้องสำหรับคอลัมน์ที่กำหนดโดย จำกัด ประเภทรูปแบบหรือช่วงของค่า
Referential integrity − ไม่สามารถลบแถวซึ่งใช้โดยระเบียนอื่น
User-Defined Integrity − บังคับใช้กฎทางธุรกิจเฉพาะบางประการที่ไม่เข้าข่ายเอนทิตีโดเมนหรือความสมบูรณ์ของการอ้างอิง
การปรับมาตรฐานฐานข้อมูล
การทำให้เป็นมาตรฐานฐานข้อมูลเป็นกระบวนการจัดระเบียบข้อมูลในฐานข้อมูลอย่างมีประสิทธิภาพ มีสองเหตุผลของกระบวนการนอร์มัลไลเซชันนี้ -
การขจัดข้อมูลที่ซ้ำซ้อนตัวอย่างเช่นการจัดเก็บข้อมูลเดียวกันในตารางมากกว่าหนึ่งตาราง
การตรวจสอบให้แน่ใจว่าการอ้างอิงข้อมูลมีความสมเหตุสมผล
เหตุผลทั้งสองนี้เป็นเป้าหมายที่คุ้มค่าเนื่องจากลดจำนวนพื้นที่ที่ฐานข้อมูลใช้และทำให้มั่นใจได้ว่าข้อมูลจะถูกจัดเก็บอย่างมีเหตุผล Normalization ประกอบด้วยชุดแนวทางที่ช่วยแนะนำคุณในการสร้างโครงสร้างฐานข้อมูลที่ดี
แนวทางการปรับมาตรฐานแบ่งออกเป็นรูปแบบปกติ คิดว่ารูปแบบเป็นรูปแบบหรือวิธีการวางโครงสร้างฐานข้อมูล จุดมุ่งหมายของรูปแบบปกติคือการจัดโครงสร้างฐานข้อมูลเพื่อให้เป็นไปตามกฎของรูปแบบปกติแรกจากนั้นรูปแบบปกติที่สองและสุดท้ายรูปแบบปกติที่สาม
เป็นทางเลือกของคุณที่จะนำไปต่อยอดและไปที่รูปแบบปกติที่สี่รูปแบบปกติที่ห้าและอื่น ๆ แต่โดยทั่วไปรูปแบบปกติที่สามนั้นมากเกินพอ
- รูปแบบปกติแรก (1NF)
- รูปแบบปกติที่สอง (2NF)
- รูปแบบปกติที่สาม (3NF)