�ҹ�������ԧ����ѹ�� (Relational Database) ���ç���ҧ�ҹ�����ŷ������ö��˹���������ѹ���������㴡�� ��������繵�ͧ��˹����������������͡Ẻ�ҹ������ �������¹�ç���ҧ����� �ҹ�������红�����������ʹ�����ͺਤ ���¡��� Table
Table ��Сͺ���� ������� (Column) ����Ǣ����� (Row) �¤�������Сͺ���� ���ͤ������ ������������ ��Фس���ѵ����� (�� ��á�˹��� primary key, ����������) ���红����Ţͧ�������
����ö���º�Ѻ�ҹ������ dBase ��ѧ���
Relational DatabasedBaseTable���������� (Column)��Ŵ��Ǣ����� (Row)�ä����Table ������ҧ���� �weather� �բ�ͤ��������� city, state, high ��� low ���Ǣ������ Table ���
citystatehighlowPhoenixArizona10590TucsonArizona10192FlagstaffArizona8869San DiegoCalifornia7760AlbuquerqueNew Mexico8072
3.1) ทรานซิทีฟดีเพนเดนซี (Transitive Dependency) ทรานซิทีฟดีเพนเดนซี หมายถึง การที่มีฟังก์ชันนัลดีเพนเดนซี ระหว่างแอตทริบิวต์ที่ไม่ได้เป็นส่วนของคีย์ใด ๆ แต่มีแอตทริบิวต์อื่น ๆ มาขึ้นกับแอตทริบิวต์นั้นตัวอย่างเช่น จากตารางในภาพข้างล่าง แอตทริบิวต์ชื่อพนักงานและรหัสตำแหน่งงานจะขึ้นอยู่กับคีย์รหัสพนักงาน ในขณะที่แอตทริบิวต์ค่าแรงต่อชั่วโมของพนักงาน จะขึ้นอยู่กับแอตทริบิวต์รหัสตำแหน่งงานซึ่งไม่ใช่คีย์อีกต่อหนึ่งทำให้มีทรานซิทีฟดีเพนเดนซีเกิดขึ้นในรีเลชันนี้
สวัสดีครับ วันนี้ผมจะมาพูดถึงการใช้ฐานข้อมูลแบบ SQL และแบบไม่ใช่ SQL อย่างแรกเรามาพูดถึง ฐานข้อมูลที่เป็น SQL กันก่อนว่าเป็นยังไง
SQL ย่อมาจาก Structured Query Language คือเป็นภาษาที่สามารถเข้าฐานข้อมูลโดยเป็นภาษาที่เอาไว้จัดการข้อมูลที่อยู่ใน Relational Database Management System (RDBMS) ก็คือไม่ว่าจะ เก็บ ดึง ลบ หรือ อัพเดทข้อมูลอะไรเข้าไปในฐานข้อมูลก็ตาม ข้อมูลที่ถูกเก็บอยู่ในฐานข้อมูลในรูปแบบตารางที่มีลักษณะเป็น column และ row และโครงสร้าง Database ใน SQL ก็จะเป็น Table ทีมี Field และ Record โดยจะมีลักษณะเป็นหัวข้อกับข้อมูลในแต่ละหัวข้อ
วิวัฒนาการของ database
Database ถูกพัฒนาขึ้นมาตั้งแต่ปี 1960 เริ่มต้นจาก hierarchical และ network databases จนมาถึงปี 1980 มีการนำเอา object-oriented-databases (OODBMS) มาใช้งาน ซึ่งเป็นพื่นฐานของระบบ relation database ที่ใช้กันอยู่ในปัจจุบันนี้
ในอีกมุมหนึง เราสามารถจัดแบ่งประเภทของ database ตามรูปแบบของชนิดข้อมูลได้ เช่น ตัวเลข,ตัวอักษร หรือ รูปภาพ บางครั้งก็อาจจะแบ่งตามความนิยมของ relational database เช่น distributed database, cloud database หรือ NoSQL database.
Relational database
Relational database ถูกคิดค้นขึ้นโดย E.F. Codd (IBM)ในปี 1970 เริ่มต้นสร้างขึ้นมาจากกลุ่มของ table ที่มีข้อมูลภายในโดยแบ่งออกเป็นตามประเภทที่ตั้งไว้ แต่ละ table จะมีอย่างน้อย 1 ชนิดของแต่ละ column และแต่ละ row จะมีข้อมูลตามที่ชนิดที่ colmuns ได้กำหนดไว้
Standard Query Language (SQL) เป็นมาตราฐานที่ผู้ใช้งาน และ ระบบอื่นๆ ไว้เชื่อมต่อกับ relational database ซึ่งง่ายต่อการเพิ่มข้อมูลเข้าไป โดยไม่กระทบต่อโปรแกรมอื่นที่ใช้งานร่วมกันอยู่
Distributed database
Distributed database เป็น ฐานข้อมูลที่ถูกเก็บกระจายออกไปหลายๆที่ โดยอาศัยกระบวนการแจกจ่าย และ สำรองข้อมูล ผ่านทางระบบ network ซึ่งมีอยู่ด้วยกัน 2 แบบคือ
homogeneous - ระบบทั้งหมดทุกที่ต้องเป็น OS และ database ชนิดเดียวกัน heterogeneous - ระบบที่งหมดจะเหมือนหรือต่างกันก็ได้ในแต่ละที่
Cloud database
Cloud database เป็นฐานข้อมูลแบบใหม่ ที่ถูกปรับปรุงและสร้างขึ้นบนระบบ virtualized แบบเดียวกับ hybrid cloud, public cloud หรือ private cloud โดยเราสามารถขยายขนาดเพิ่มขึ้น หรือ ปรับแต่ง resource ได้ตลอดเวลา ขึ้นอยู่กับความต้องการของผู้ใช้งาน
NoSQL database
NoSQL database ถูกใช้ในรูปแบบ ที่เป็นการกระจายของข้อมูล จึงมีประสิทธิ์ภาพสูงสำหรับข้อมูลขนาดใหญ่ (big data) เพราะ relational database ไม่ถูกออกมาให้รอบรับข้อมูลขยาดใหญ่ จึงนิยมใช้กับการวิเคราะห์ข้อมูลขนาดใหญ่ที่ไม่ค่อยมีรูปแบบตาายตัว
การ access database
มีด้วยกัน 2 แบบคือ
- Database management system (DBMS) เป็น software ที่ควบคุมและ บริหารข้อมูลภายในฐานข้อมูล - Relational database management system (RDBMS) ถูกพัฒนาขึ้นในปี 1970 เพื่อเข้าถึง ฐานข้อมูลแบบ relational และยังคงได้รับความนิยมจนถึงปัจจุบัน
ปัจจุบันมี production database ให้เราเลือกใช้อยู่มากมาย เช่น Microsoft SQL Server, Oracle Database, IBM DB2 และ MySQL ที่เป็นที่นิยมกันในระดับองกรค์