หน่วยท่ี 5 เร่ือง Data Definition Language บทที่ 5 Data Definition Languageระบบฐานข้อมูล รหัสวชิ า 3204-2004
สาระสาคญัเม่อื เราได้ออกแบบ และทาการ Normalization ตารางฐานข้อมูลเรียบร้อยแล้วเราจะต้องมาเรียนร้กู บั ภาษา SQL (Structure Query Language)ซ่ึงเป็นภาษาในการจดั การฐานข้อมูลเชิงสมั พันธ์ และภาษา SQLน้ีกไ็ ด้แบ่งออกเป็นหลายประเภท เน้ือหาในบทน้ีจะกล่าวถึงประเภทของภาษา SQL ในการนิยามโครงสร้างของข้อมูล น่ันกค็ ือ Data Definition Languageหรือเรียกส้นั ๆ ว่า DDLจดประสงคท์ วั่ ไป1.เพ่ือให้ทราบถงึ ความหมายของภาษา SQL ประเภท Data Definition Language2.เพ่ือให้ทราบถงึ คาส่งั ในการสร้างฐานข้อมูล และตารางฐานข้อมูล3.เพ่ือทราบถงึ คาส่งั ในการแก้ไขโครงสร้างตารางฐานข้อมูล
จุดประสงคเ์ ชิงพฤติกรรม1.สามารถเขยี นคาส่งั ในการสร้างฐานข้อมูล และตารางฐานข้อมูลได้2.สามารถเขยี นคาส่งั ในการแข้ไขโครงสร้างตารางข้อมูลได้3.สามารถเขยี นคาส่งั ในการลบฐานข้อมูล
เน้ ือหาสาระ1. ความหมายของ Data Definition Language2. การใช้งานคาส่งั CREATE3. การใช้งานคาส่งั ALTER4. การใช้งานคาส่งั DROP
ความหมายของ Data Definition Language Data Definition Language คอื ภาษาท่ใี ช้นิยามโครงสร้างข้อมูลประกอบด้วยคาส่งั ในการสร้างฐานข้อมูล การแก้ไขฐานข้อมูล การลบฐานข้อมูล การสร้างตารางฐานข้อมูล การแก้ไขตารางฐานข้อมูล การลบตารางฐานข้อมูล โดยมีคาส่งั ดงั ต่อไปน้ี•คาส่งั CREATE ใช้สาหรับสร้างฐานข้อมูล และตารางฐานข้อมูล•คาส่งั ALTER ใช้สาหรับแก้ไขโครงสร้างของตารางฐานข้อมูล•คาส่งั DROP ใช้สาหรับลบฐานข้อมูล และตารางฐานข้อมูล
ก่อนท่เี ราจะเรียนรู้คาส่งั ต่างๆ จะขอยกสรุปตารางท่ผี ่านการออกแบบมาแล้วจานวน 5ตาราง และจะใช้ตารางเหล่าน้ีเป็นตัวอย่าง ในการอธบิ ายคาส่งั ต่างๆของ SQL ตารางท้งั 5 ตารางมรี ายละเอยี ด ดังน้ีตารางที่ 1 ชื่อ Department เก็บขอ้ มูลรายละเอียดของพนกั งานในบริษทัช่ือฟิ ลด์ ขนิดช้อมูล (ความยาว) ความหมายdepartmentID INT รหสั แผนก กำหนดเป็น Primary keyName VARCHAR(80) ชื่อแผนก
ตารางที่ 2 ชื่อ Employee เก็บขอ้ มูลรายละเอียดของพนกั งานแต่ละคน ช่ือฟิ ลด์ ชนิดข้อมูล(ความยาว) ความหมายemployeeID INT รหสั พนกั งำน กำหนดเป็น primaryName VARCHAR(80) keyJob VARCHAR(30)Salary ชื่อพนกั งำนdeparmentID INT INT ตำแหน่งงำนของพนกั งำน เงินเดือนของพนกั งำน รหสั แผนก กำหนดเป็น FOREIGN KEY เชื่อมไปยงั ฟิ ลด์ deparmentID ของตำรำง Department
ตารางที่ 3 ชื่อ EmployeeSkills เก็บขอ้ มูลความชานาญของพนกั งานช่ือฟิ ลด์ ชนิดข้อมูล ความหมาย รหสั พนกั งาน กาหนดเป็นemployeeID INT Primary KeySkill VARCHAR(15)
ตารางที่ 4 ชือ่ Client เก็บขอ้ มูลรายละเอียดบริษทั ของลูกคา้ ชื่อฟิ ลด์ ชนดิ ขอ้ มูล(ความยาว) ความหมายcleintID INT รหัสลูกค้า กาหนดเป็นName PRIMARY KEYAddresscontactPerson VARCHAR(40) ช่ือบริษัทของลูกค้าcontactNumber VARCHAR(40) ท่อี ยู่บริษัท VARCHAR(40) ช่ือของลูกค้าท่เี ป็นตวั แทน บริษัท VARCHAR(40) หมายเลขโทรศัพทข์ องลกู ค้า ตัวแทน
และในการสร้างตารางฐานข้อมลู สงิ่ ท่ีจะต้องเข้าใจคือ เรื่องของชนิดข้อมลู (Data Types) ซง่ึ เป็นการกาหนดคา่ ขนิดข้อมลู ท่ีจะจดั เก็บลงในฟิลด์ตา่ งๆ ท่ีเราสร้างขนึ ้ โดยชนิดข้อมลู ท่ีใช้บอ่ ย มีดงั ตอ่ ไปนี ้ชนดิ ขอ้ มูล รายละเอียดCHAR(size) เกบ็ ข้อมูลในรูปแบบข้อความโดยมคี วามหมายท่กี บั ขนาดในวงเลบ็VARCHAR(size) เกบ็ ข้อมู,โดยรปู แบบข้อความ โดยมีความยาวตามขนาด ในวงเลบ็INT (size) เกบ็ ข้อมูลตวั เลขจานวนเตม็FLOAT(size,d) เกบ็ ข้อมูลตัวเลขทศนิยมDATE เกบ็ ข้อมูลวันท่ี
การใชค้ าสงั่ CREATEคาส่งั CREATE เป็นคาส่งั ท่ใี ช้ในการสร้างฐานข้อมูลและตารางฐานข้อมูลการใช้คาส่งั CREATE DATABASE สาหรับสร้างฐานข้อมูล รูปแบบคาสงั่ Create Database ช่ือฐานข้อมูลการใช้คาส่งั CREATE DATABASE สาหรับสร้างตารางฐานข้อมูล รูปแบบคาสงั่ Create Table ช่ือตาราง
การกาหนด Constraints เบ้อื งต้นให้กบั ตารางการกาหนดฟิ ลดใ์ ห้เป็น PRIMARY KEYCREATE TABLE ช่ือตาราง(ช่ือฟิ ลด์ท่1ี ชนิดข้อมูล,ช่ือฟิ ลด์ท่2ี ชนดิ ข้อมูล,ช่ือฟิ ลด์ท่3ี ชนดิ ข้อมูล,….PRIMARY KEY (ช่ือฟิ ลด์ท่เี ป็น PRIMARY KEY))
การกาหนดฟิ ลดใ์ ห้เป็น FOREIGN KEYCREATE TABLE ช่ือตาราง(ช่ือฟิ ลด์ท่1ี ชนดิ ข้อมูล,ช่ือฟิ ลดท์ ่2ี ชนิดข้อมูล,ช่ือฟิ ลด์ท่3ี ชนิดข้อมูล,….FOREIGN KEY(ช่ือฟิ ลดท์ ่ตี ้องการให้เป็น FOREIGN KEY))
NOT NULLCREATE TABLE ช่ือตาราง(ช่ือฟิ ลด์ท่1ี ชนดิ ข้อมูล NOT NULL,ช่ือฟิ ลดท์ ่2ี ชนดิ ข้อมูล NOT NULL,ช่ือฟิ ลด์ท่3ี ชนิดข้อมูล NOT NULL,….)
ตัวอย่าง คาส่งั สร้างตารางช่ือ EmployeeCREATE TABLE Employee(employeeID INT,Name VARCHAR(80)Job VARCHAR(30)Salary INT,departmentID INT,PRIMARY KEY (employeeID)FOREIGN KEY(departmentID)REFERENCESDepartment(departemntID))
ตวั อย่าง คาส่งั สร้างตารางช่ือ EmployeeSkillCREATE TABLE EmployeeSkill(employeeID INT,Skill VARCHAR(15)RRIMARY KEY (employeeID,skill)
ตวั อย่าง คาส่งั สร้างตารางช่ือ AssignmentCREATE TABLE Assignment(clientID INT,employeeID INT,Workdate Date,Hours FLOAT,PRIMARY KEY (clientID, employeeID, workdate))
การใช้คาส่งั ALTER เป็นคาส่งั เพ่ือแก้ไขโครงสร้างของตารางคาสงั่ ALTER TABLE เพอื่ เพมิ่ ฟิ ลดใ์ หก้ บั ตาราง รูปแบบคาสงั่ ALTER TABLE ช่ือตาราง ADD ช่ือฟิ ลด์ ชนดิ ข้อมูลคาสงั่ ALTER TABLE เพอื่ ลบฟิ ลดใ์ หก้ บั ตารางรูปแบบคาสงั่ ALTER TABLE ช่ือตาราง DROP COLUMN ช่ือฟิ ลด์
คาสงั่ ALTER TABLE เพอื่ เพมิ่ PRIMARY KEY ใหก้ บั ตาราง รูปแบบคาสงั่ ALTER TABLE ช่ือตาราง ADD PRIMARY KEY (ช่ือฟิ ลด์)คาสงั่ ALTER TABLE เพอื่ ลบฟิ ลดใ์ หก้ บั ตารางรูปแบบคาสงั่ ALTER TABLE ช่ือตาราง ADD FOREIGN KEY (ช่ือฟิ ลด์ FOREIGN KEY) REFERENCES ช่ือตารางท่เี ช่ือมความสมั พันธ์ (ฟิ ลด์ตารางท่เี ช่ือมความสมั พันธ)์
การใช้คาส่งั DROP เป็นคาส่งั สาหรับการจัดการลบฐานข้อมูลและตารางฐานข้อมูล คาสงั่ DROP DATABASE ใชส้ าหรบั ลบฐานขอ้ มูล รูปแบบคาสงั่ DROP DATABASE ช่ือฐานข้อมูล คาสงั่ DROP TABLE ใชส้ าหรบั ลบตาราง รูปแบบคาสงั่ DROP TABLE ช่ือตาราง
สรุปData Definition Language คือ ภาษาท่ใี ช้นิยามโครงสร้างข้อมูลประกอบไปด้วยคาส่งั CREATEใช้สาหรับสร้างฐานข้อมูล และตารางฐานข้อมูล คาส่งั ALTER ใช้สาหรับแก้ไขโครงสร้างของตารางฐานข้อมูลและคาส่งั DROP ใช้สาหรับลบฐานข้อมูล และตารางข้อมูล
Search
Read the Text Version
- 1 - 21
Pages: