1 / 24

Structure Query Language (SQL)

Structure Query Language (SQL). SQL. Structure Query Language หรือ SQL หรือ ภาษาซีเควล เป็นภาษาพื้นฐานสำหรับการจัดการบริหารข้อมูลสำหรับระบบฐานข้อมูลเชิงสัมพันธ์

hilda-horne
Télécharger la présentation

Structure Query Language (SQL)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Structure Query Language (SQL)

  2. SQL Structure Query Language หรือSQLหรือ ภาษาซีเควล • เป็นภาษาพื้นฐานสำหรับการจัดการบริหารข้อมูลสำหรับระบบฐานข้อมูลเชิงสัมพันธ์ • วัตถุประสงค์เพื่อใช้สร้างฐานข้อมูลและโครงสร้างรีเลชัน สนับสนุนการจัดการข้อมูลพื้นฐาน ได้แก่ การเพิ่ม ปรับปรุง และลบข้อมูล และสนับสนุนการคิวรีข้อมูล • จัดเป็นภาษารุ่นที่ 4 (Fourth Generation language) • คุณสมบัติสำคัญคือ เรียนรู้ใช้งานได้ง่าย นำไปใช้ได้อย่างมีประสิทธิภาพ มีลักษณะเป็นภาษาธรรมชาติใกล้เคียงกับภาษามนุษย์ • สามารถใช้ได้กับเครื่องคอมพิวเตอร์ทุกแพลตฟอร์ม

  3. SQL ประเภทการใช้งานของภาษาซีเควล (1) การใช้งานแบบโต้ตอบ (Interactive SQL) ผู้ใช้สามารถพิมพ์ประโยคคำสั่งในภาษาซีเควลผ่านทางจอภาพ และคำสั่งจะถูกนำไปปฏิบัติทันที มักให้สิทธิแก่ผู้ใช้ที่มีหน้าที่โดยตรงเท่านั้น (2) การใช้งานแบบฝังตัวในโปรแกรม (Embedded SQL) หมายถึงการสอดแทรกประโยคคำสั่งภาษาซีเควลไว้ในภาษาระดับสูงเพื่อปฏิบัติการกับฐานข้อมูล ภาษาระดับสูงที่สนับสนุนวิธีการนี้ ได้แก่ ภาษาซี ภาษาโคบอล ภาษาปาสคาล เป็นต้น (3) การใช้งานแบบโปรแกรม (Batch SQL) หมายถึงการเขียนโปรแกรมด้วยคำสั่งในภาษาซีเควล ที่สามารถทำงานและให้ผลลัพธ์แบบเบ็ดเสร็จ เช่น การพิมพ์รายงานประจำวัน การพิมพ์รายงานประจำเดือน เป็นต้น

  4. Part IVกฎของความคงสภาพ

  5. กฎของความคงสภาพ (Integrity rule) กฎความคงสภาพของเอนติตี้(Entity integrity rule) กฎความคงสภาพของการอ้างอิง(Referential integrity rule)

  6. “คีย์หลักจะไม่อนุญาตให้มีค่าว่าง”“คีย์หลักจะไม่อนุญาตให้มีค่าว่าง” Entity integrity rule

  7. Referential integrity rule ถ้ามีรีเลชั่น R2 ซึ่งมี Fk เป็นคีย์นอกที่อ้างอิงถึงคีย์หลัก Pk ในรีเลชั่น R1สำหรับทุกๆ ค่าของFkใน R2 จะต้อง มีค่าเท่ากับค่า Pk ในแถวใดแถวหนึ่งในรีเลชั่น R1 หรือไม่ก็ต้องมีค่า attributeในFk เป็นค่าว่าง

  8. มุงหลังคา ไม่ใช่ ข้อมูลที่มีในตารางประเภทความชำนาญ รูปแสดงรีเลชันที่ผิดกฎความคงสภาพของการอ้างอิง

  9. ปัญหา ถ้ามีใครไปแก้ไขหรือลบข้อมูลซึ่งมีผลไปกระทบกับกฎ Integrity จะรับมืออย่างไร • วิธีแก้ไขที่เป็นไปได้ 2 ทาง คือ... • ตั้งระบบให้ไม่ยอมรับการเปลี่ยนแปลงดังกล่าว หรือไม่ก็ • อนุญาตให้เปลี่ยนแปลงได้ โดยระบบจะทำการปรับแต่ง ข้อมูลที่เกี่ยวข้องให้ยังคงเป็นไปตามกฎทั้ง 2 อยู่

  10. ตารางตัวอย่างแสดงการกำหนดตารางตัวอย่างแสดงการกำหนด สถานการณ์ต่าง ๆ เพื่อให้เป็นไป ตามreferential integrity

  11. สถานการณ์ที่เป็นไปได้ 3 ทาง • กระทำแบบเป็นทอดๆ (cascade) • ยอมแบบมีเงื่อนไข (restricted) • เปลี่ยนเป็นค่าว่าง (nullify)

  12. CASCADES รูปแสดงการกำหนดให้ตรวจสอบกฎความคงสภาพของการอ้างอิงและ การกำหนดสถานการณ์แบบ CASCADES

  13. Part V การออกแบบฐานข้อมูล

  14. Entity-Relational Model • ผังเอ็นติตี้-รีเลชันชิพ (ERD: Entity-Relational Diagram) • Peter Chen (1976)มาตรฐาน ANSI ปี 1988 • ERDแสดงเอ็นติตี้ และความสัมพันธ์ระหว่างกันของเอ็นติตี้ที่ประกอบกันเป็นฐานข้อมูล • ใช้เป็นเครื่องมือสื่อสารระหว่างผู้ออกแบบฐานข้อมูลและผู้ใช้ฐานข้อมูล

  15. องค์ประกอบของ ERD • เอ็นติตี้ (Entity) • แอทตริบิวท์ (Attribute) • ความสัมพันธ์ (Relationship)

  16. เอ็นติตี้ (Entity) • สิ่งต่าง ๆ ที่มีเอกลักษณ์สามารถชี้เฉพาะเจาะจงได้ เป็นสิ่งที่สามารถนำไปเก็บในฐานข้อมูลได้ อาจเป็นสิ่งที่เป็นรูปธรรม หรือนามธรรมก็ได้ เช่น บุคคล สัตว์ สิ่งของ สถานที่ ความคิด เหตุการณ์ เป็นต้น • บุคคล พนักงาน นักศึกษา นักฟุตบอล แพทย์ • สิ่งของ สินค้า รถยนต์ หนังสือ • สถานที่ สนามบิน ร้านอาหาร โกดังสินค้า • ความคิด หลักสูตร แผนประกันชีวิต • เหตุการณ์ การแข่งขันฟุตบอล ข่าว การรักษาโรค

  17. แอทตริบิวท์ (Attribute) • คุณสมบัติ ลักษณะหรือรายละเอียดของเอ็นติตี้ พนักงาน วันเดือนปีเกิด ชื่อ - นามสกุล ที่อยู่ ส่วนสูง ประวัติการศึกษา น้ำหนัก หมายเลขบัตรประจำตัวประชาชน กรุ๊ปเลือด

  18. ร้านอาหาร สาขา จำนวนบริกร ที่ตั้ง ผู้จัดการร้าน เบอร์โทรศัพท์ จำนวนโต๊ะ

  19. นักศึกษา กับ แผนการเรียน ความสัมพันธ์ คือ ลงทะเบียน ลูกค้า กับ สินค้า ความสัมพันธ์ คือ สั่งซื้อ อาจารย์ กับ คณะ ความสัมพันธ์ คือ สังกัด ความสัมพันธ์ (Relationship) • ความสัมพันธ์ระหว่างเอ็นติตี้ในฐานข้อมูล

  20. ความสัมพันธ์ (Relationship) • ความสัมพันธ์แบบหนึ่งต่อหนึ่ง (One to One) • สามี – ภรรยา • ผู้นำประเทศ – ประเทศ • ความสัมพันธ์แบบหนึ่งต่อกลุ่ม (One to Many) • แม่ – ลูก • อาจารย์ที่ปรึกษา - นักศึกษา • ความสัมพันธ์แบบกลุ่มต่อกลุ่ม (Many to Many) • ลูกค้า – สินค้า • รายวิชา - นักศึกษา

  21. ชื่อสินค้า ชื่อพนักงาน รหัสสินค้า M N ขายสินค้า พนักงานขาย สินค้า รหัสพนักงาน จำนวนคงเหลือ ที่อยู่ ราคา เบอร์โทร โกดังที่เก็บ ส่วนประกอบของ ER Diagram 1. Entity ใช้สัญลักษณ์ 2. Attribute ใช้สัญลักษณ์ 3. Relationship ใช้สัญลักษณ์

  22. ขั้นตอนการแทนความสัมพันธ์ของข้อมูลด้วย ER Diagram • กำหนด Entityที่จำเป็น • กำหนดความสัมพันธ์ระหว่าง Entity • กำหนด Attributeของ Entity • พิจารณา Attributeที่ขึ้นกับRelationship • เลือก Primary key (Identifier) ... เปลี่ยน ER Diagramเป็น Table

  23. การแปลงความสัมพันธ์ E-R ให้อยู่ในรูปตารางในฐานข้อมูลเชิงสัมพันธ์ • แต่ละเอ็นติตี้จะถูกแปลงเป็นตาราง ชื่อเอ็นติตี้จะเป็น ชื่อตาราง • แต่ละแอทตริบิวต์จะกลายเป็นคอลัมน์ของตาราง • มีแอทตริบิวต์หนึ่งทำหน้าที่เป็นคีย์หลักของตาราง

  24. การแปลงความสัมพันธ์ แยกได้ 3 ลักษณะ ตามความสัมพันธ์ • แบบหนึ่งต่อหนึ่ง • คีย์หลักของตารางหนึ่งจะกลายเป็นคีย์นอกของอีกตารางหนึ่ง • แบบหนึ่งต่อกลุ่ม • คีย์หลักของเอ็นติตี้ด้าน One เป็นคีย์นอกของเอ็นติตี้ด้าน Many • แบบกลุ่มต่อกลุ่ม • สร้างตารางใหม่ขึ้นมา โดยมีคีย์หลักจากเอ็นติตี้ทั้งสองมาทำหน้าที่ร่วมกันในตารางใหม่ ตารางใหม่นี้จะถูกเรียกว่า Junction Table (ตารางเชื่อมต่อ) ทำการเชื่อมเอ็นติตี้ที่มีความสัมพันธ์แบบกลุ่มต่อกลุ่ม

More Related