�ҹ�������ԧ����ѹ�� (Relational Database) ���ç���ҧ�ҹ�����ŷ������ö��˹���������ѹ���������㴡�� ��������繵�ͧ��˹����������������͡Ẻ�ҹ������ �������¹�ç���ҧ����� �ҹ�������红�����������ʹ�����ͺਤ ���¡��� Table Show 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 โดยจะมีลักษณะเป็นหัวข้อกับข้อมูลในแต่ละหัวข้อ วิวัฒนาการของ databaseDatabase ถูกพัฒนาขึ้นมาตั้งแต่ปี 1960 เริ่มต้นจาก hierarchical และ network databases จนมาถึงปี 1980 มีการนำเอา object-oriented-databases (OODBMS) มาใช้งาน ซึ่งเป็นพื่นฐานของระบบ relation database ที่ใช้กันอยู่ในปัจจุบันนี้ ในอีกมุมหนึง เราสามารถจัดแบ่งประเภทของ database ตามรูปแบบของชนิดข้อมูลได้ เช่น ตัวเลข,ตัวอักษร หรือ รูปภาพ บางครั้งก็อาจจะแบ่งตามความนิยมของ relational database เช่น distributed database, cloud database หรือ NoSQL database. Relational databaseRelational database ถูกคิดค้นขึ้นโดย E.F. Codd (IBM)ในปี 1970 เริ่มต้นสร้างขึ้นมาจากกลุ่มของ table ที่มีข้อมูลภายในโดยแบ่งออกเป็นตามประเภทที่ตั้งไว้ แต่ละ table จะมีอย่างน้อย 1 ชนิดของแต่ละ column และแต่ละ row จะมีข้อมูลตามที่ชนิดที่ colmuns ได้กำหนดไว้ Standard Query Language (SQL) เป็นมาตราฐานที่ผู้ใช้งาน และ ระบบอื่นๆ ไว้เชื่อมต่อกับ relational database ซึ่งง่ายต่อการเพิ่มข้อมูลเข้าไป โดยไม่กระทบต่อโปรแกรมอื่นที่ใช้งานร่วมกันอยู่ Distributed databaseDistributed database เป็น ฐานข้อมูลที่ถูกเก็บกระจายออกไปหลายๆที่ โดยอาศัยกระบวนการแจกจ่าย และ สำรองข้อมูล ผ่านทางระบบ network ซึ่งมีอยู่ด้วยกัน 2 แบบคือ homogeneous - ระบบทั้งหมดทุกที่ต้องเป็น OS และ database ชนิดเดียวกัน heterogeneous - ระบบที่งหมดจะเหมือนหรือต่างกันก็ได้ในแต่ละที่
Cloud databaseCloud database เป็นฐานข้อมูลแบบใหม่ ที่ถูกปรับปรุงและสร้างขึ้นบนระบบ virtualized แบบเดียวกับ hybrid cloud, public cloud หรือ private cloud โดยเราสามารถขยายขนาดเพิ่มขึ้น หรือ ปรับแต่ง resource ได้ตลอดเวลา ขึ้นอยู่กับความต้องการของผู้ใช้งาน NoSQL databaseNoSQL 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 ที่เป็นที่นิยมกันในระดับองกรค์ Relational Database Management System มีอะไรบ้างRDBMS ที่นิยมในตลาดที่เรารู้จักกัน ได้แก่ Oracle, Microsoft SQL Server, MySQL, PostgreSQL, IBM DB2, Microsoft Access, SQLite และ MariaDB โดยแต่ละเจ้ามีความสามารถในการกำหนด Constraints ได้แตกต่างกันไปครับ
Database ทําอะไรได้บ้างDatabase (ฐานข้อมูล) คือ กลุ่มข้อมูลขนาดใหญ่ที่ถูกเก็บรวบรวมไว้ที่ใดที่หนึ่ง โดยเป็นข้อมูลที่มีความสัมพันธ์กัน ซึ่งถูกจัดเก็บอย่างเป็นระบบ โดยมีซอฟต์แวร์เข้ามาควบคุมกระบวนการใช้งาน การทำงาน หรือการประมวลผล ทำให้ผู้ใช้สามารถใช้ข้อมูลได้อย่างมีประสิทธิภาพ
Nosql (NonNoSQL จึงหมายถึง “ระบบฐานข้อมูลที่ไม่ใช่ Relational Database” ฐานข้อมูลนี้ได้ถูกคิดค้นขึ้นมาเพื่อแก้ปัญหาหลักๆ 2 อย่างที่มีใน RDBMS คือ 1) เพิ่มความสามารถในการจัดเก็บ unstructured data (หรือข้อมูลที่มีรูปแบบไม่แน่นอน) และ 2) เพิ่มความสามารถในการขยายระบบในรูปแบบแนวนอน (Horizontal Scalability) เพื่อรองรับปริมาณข้อมูลที่ ...
Null หมายถึงอะไรใน Relational DatabaseNull เป็นศัพท์เฉพาะใน Relational Database หมายถึง ไม่ทราบค่า ข้อมูลที่รู้แน่ชัด เราสามารถก าหนดให้ค่าของคอลัมน์ใดๆ เป็น Null ได้ (ถ้าเป็นไปได้ควรใส่ให้ครบจะดีที่สุด ) ยกเว้นคอลัมน์ที่เป็น Primary Keyเพราะจะไม่สามารถน า Primary Key มาใช้เข้าถึง ข้อมูลในแต่ละแถวได้
|