Please enable JavaScript.
Coggle requires JavaScript to display documents.
การออกแบบโครงสร้างธานข้อมลด้วย ER-MODEL - Coggle Diagram
การออกแบบโครงสร้างธานข้อมลด้วย ER-MODEL
แนวคิดเกี่ยวกับโมเดลแบบ E-R
โมเคลแบบ E-R ถูกเสนอขึ้นมาโดย Peter Chen องค์ประกอบของโมเคลก็คล้ายคลึงกับโมเคลเชิงสัมพันธ์ คือประกอบด้วย entity ,attribute และความสัมพันธ์ โดยเราจะแสดงสิ่ง ต่าง ๆ เหล่านี้ในเชิง กราฟิก คือ เขียนชื่อ entity ในกรอบสี่เหลี่ยมและแสดงความสัมพันธ์ระหว่าง entiy ในกรอบรูปข้างหลามตัดนอกจากนี้ ยังมีเส้นลากระหว่าง entity และความสัมพันธ์โดยจะระบุชนิดของความสัมพันธ์ว่าเป็นหนึ่งต่อหนึ่ง หนึ่งต่อกลุ่ม หรือกลุ่มต่อกลุ่ม
โมเดลแบบ E-R หรือโมเดลแบบ Entity-Relationship นับเป็นอีกโมเดลหนึ่งที่มีความนิยมไม้แพ้ โมเดลเชิงสัมพันธ์ ซึ่งถ้ำจะว่ากันไปแล้ว หลักการของโมเดลทั้ง 2 ก็เหมือนกัน เพียงแต่โมเดลแบบ E-R จะแสดงความสัมพันธ์ในรูปแบบของกราฟิก
เอนทิตี้ ในการสร้างโมเดลแบบ E-R จะต้องกำหนดว่าในระบบที่ออกแบบนั้นๆ จะ ประกอบด้วยเอนทิลื้อะไรบ้าง เช่น ในระบบฐานข้อมูลงานทะเบียนนักศึกษา จะประกอบด้วยเอนทิตี้ นักศึกษา เอนทิตี้การลงทะเบียน เอนทิตี้วิชาและเอนทิตี้อาจารย์เป็นต้น
2.คุณลักษณะของเอนทิตี้ (Attribute)เป็นการกำหนดแอททริบิวต์ต่างๆ ในแต่ละเอนทิตี้นั่นเอง นอกจากนี้ยังอาจประกอบด้วยรายละเอียดเช่นแอททริบิวต์ใดเป็นดีย์หรือเป็นข้อมูลที่แปลค่ามา เป็นต้น
ความสัมพันธ์ระหว่างเอนทิตื้ เป็นกรระบุว่าเอนทิตี้ต่าง ๆ มีความสัมพันธ์อย่างไรลักษณะความสัมพันธ์อาจเป็นแบบหนึ่งต่อหนึ่งหนึ่งต่อกลุ่มหรือแบบกลุ่มต่อกลุ่มโดยคำนึงถึงการที่ข้อมูลทุกข้อมูลหรือเพียงบางข้อมูลของเอนทิตี้หนึ่งมีความสัมพันธ์กับข้อมูลของอีเอนทิตี้หนึ่ง
การออกแบบฐานข้อมูลโดยใช้โมเดลแบบ E-R
ขั้นตอนในการออกแบบฐานข้อมูลโดยใช้โมดลแบบ E-R ประกอบตัวอย่างไปตามลำดับ ได้แก่
ขั้นตอนที่ 1 กำหนดเอนทิตี้
เป็นการกำหนดเอบทิตี้ที่ควรจะมีอยู่ในฐาบข้อมูลหนึ่งโดยพิจารณาด้วยว่า เอนทิตี้ใดเป็น ประเภทเอนทิดื้อ่อนแอ ตัวอย่างเช่น ในฐานข้อมูลของมหาวิทยาลัยแห่งหนึ่ง ประกอบค้วยเอนทิตี้ ดังนี้
เอนทิตี้อาจารย์ เป็นเอนทิตี้แสดงรายละเอียดของอาจารย์แต่ละคน
2.เอนทิติ์คณะวิชา เป็นเอนทิดี้แสดงรายละเอียดของกณะวิชา
เอนทิตี้รายวิชา เป็นเอนทิตี้แสดงรายละเอียดวิชาที่เปิดสอนในคณะวิชานั้น ๆ
ขั้นตอนที่ 2 กำหนดความสัมพันธ์
เป็นการกำหนดประเภทของความสัมพันธ์ระหว่าเอนที่ตี้ว่ามีความสัมพันธ์กันอย่างไร ตัวอย่างเช่นจากเอนทิตี้ที่กำหนดในขั้นตอนที่ 1 จะสร้างความสัมพันธ์ระหว่างเอนทิตี้ได้ดังนี้แสดงความสัมพันธ์แบบ 1:N ระหว่างเอนทิตี้คณะวิชากับอาจารย์โดยข้อมูลเอนทิดื้อาจารย์มีความสัมพันธ์กับคณะวิชา เป็นแบบ Total Participation
SQL : Structured Query Language
SQL หรือ Structured Qucry Language เป็นภายาที่จัดว่าเป็นภายามาตรฐานสำหรับระบบจัดการ ฐานข้อมูลเชิงสัมพันธ์ ซึ่งมีการใช้งานค่อนข้างมาก ความเป็นมานั่นที่ถูกพัฒนาขึ้นมาใช้งานครั้งแรกที่ ห้องปฎิบัติการวิจัยของ IBM (IBM's San Jose Rescach Laboratory) ที่รัฐแคริฟอเนีย ในช่วงต้นของ ค.ศ. 1970 โดยเป็นส่วนหนึ่งของระบบอาร์ (System R Projcct) ซึ่งในการพัฒนาครั้งนั่นใช้ชื่อว่า "Scque!" และ ต่อมาได้เปลี่ยนเป็น Structured Query Language
ในการใช้งานระบบจัดการฐานข้อมูลส่วนใหญ่จะสนับสนุนการใช้งานร่วมกับภาษา SQL นี้ แต่ ระบบจัดการฐานข้อมูลบางระบบได้มีการพัฒนากำหนดคำสั่งต่งๆเพิ่ม ติม จึงทำให้เกิดความแตกต่างกัน จนในปี ค.ศ. 1986 สถาบันกำหนดมาตรฐานหรือที่เรียกกันว่า ANSI (American National Standards Institute) ได้มีการกำหนด SQL-Standard ขึ้นมา สำหรับภายา SQL ถือได้ว่าเป็นภายามาตรฐานสำหรับระบบจัดการฐานข้อมูลเชิงสัมพันธ์ซึ่งจะ มีประกอบด้วยคำสั่งหลายส่วนเช่น
การกำหนดโครงสร้างข้อมูล (DDL : Data Difinition Language) ซึ่งจะประกอบด้วยกำสั่งที่ใช้ กำหนดโครงสร้างตาราง ลบตาราง สร้างแฟ้มดัชนี และแก้ไขโครงสร้างตาราง
คำสั่งในการเรียกใช้และประมวลผลข้อมูล (DML : Data Manipulation Language) ประกอบด้วยคำสั่งที่ใช้ในการเพิ่ม ลบ แก้ไข และเรียกใช้ข้อมูลในฐานข้อมูล
กำหนดวิว (View Dcfinition) เป็นคำสั่งที่ใช้ในการกำหนดวิว
กำหนดสิทธิ (Autorization) เป็นคำสั่งที่ใช้กำหนดและเบิกถอนสิทธิในการใช้งานข้อมูลในฐานข้อมูล
ความคงสภาพ (Intcgrity) เป็นคำสั่งที่ใช้ในการกำหนดกฎความคงสภาพต่าง
ควบคุมรายการเปลี่ยนแปลง (Transaction contro1) เป็นคำสั่งที่ใช้กำหนดเกี่ยวกับจุดเริ่มต้นและสิ้นสุดรายการเปลี่ยนแปลง
รายละเอียดที่จะกล่าวถึงในบทนี้จะเป็นการกำหนดโครงสร้าง และการเรียกใช้งานข้อมูลรวมถึงการกำหนดวิวต่างๆส่วนรายละเอียดในเรื่องอื่นจะกล่าวถึงใบบทที่มีการพูดถึงเรื่องดังกล่าว
การกำหนดโครงสร้าง (Data definition)
คำสั่งเข้าสู่ฐานข้อมูล MYSQL
Start>run>cmd
Cdi > ed appserv >ed mysql >ed bin
mysql -u root -p
password:1234
mysql> show databases;
create database dbregis;
1 more item...
วิว (View)
การสร้างวิว
รูปแบบคำสั่ง
create view view name as select
Column 1, ,Column N
from tabel1.. .table N
where Condition;
โดยที่
view_name คือ ชื่อวิวที่ทำการสร้างขึ้นมาใช้งาน
Column คือชื่อคอลัมน์ที่ต้องการนำข้อมูลมาแสดงในวิวที่สร้างขึ้น
table คือชื่อตารางที่ต้องการนำข้อมูลมาแสดงในวิวที่สร้างขึ้น
Condition คือเงื่อนไขในการนำข้อมูลมาแสดง
ตัวอย่างการสร้างวิว
การการสร้างวิวจากตาราง fact และ teach
create view teachview as select
tcode,tname,factname
from fact , teach
where fact.factcode=teach.factcode;
การลบตารางและวิวออกจากฐานข้อมูล
รูปแบบคำสั่ง
drop table table_name;
drop view view_name;
แสดงการลบตารางและวิว
drop table ttmp;
drop view teachview;
drop view teachdept;
การปรับโครงสร้างตารา
การเพิ่มคอลัมน์
รูปแบบคำสั่ง
Alter table Add (Column_name datatype,
Column_name datatype,
โดยที่ Column name คือ คอลัมน์ที่ต้องการเพิ่ม
การแก้ไขคอลัมนั่
รูปแบบคำสั่ง
Alter table Modify (Column_name datatype,
Column_name datatype,
โดยที่ Column name คือคอลัมน์ที่ต้องการแก้ไข
สรุป
ในบทนี้ได้กล่าวถึงโครงสร้างเชิงสัมพันธ์ ซึ่งจะนำเสนอโครงสร้างของฐานข้อมูลในรูปของ ตาราง 2 มิติที่ผู้ใช้รียกว่ารีเลชั่น หรือตาราง ในแต่ละตารางประกอบด้วยคอลัมบ์ และแถว ซึ่งแต่ละ คอลัมน์จะเป็นตัวบ่งบอกคุณสมบัติของข้อมูลในรีเลชั่น ส่วนแต่ละแถวจะแสดงถึงข้อมูลที่ปรากฎในรีเลชั่น ในการประมวลผลกับข้อมูลในรีเลชั่นนั่นจะอยู่บนพื้นฐานของพืชคนิต ชิงสัมพันธ์ ประกอบด้วย โอเปอร์เรเตอร์พื้นฐาน คือ Select Project Product Join Union Intersection Difference Divide และในช่วงท้ายได้พูดถึงภายาที่นิยมใช้กับฐานข้อมูลเชิงสัมพันธ์ คือ SQL (Structure Query Language)