• Save
Lesson 1 intro2_db
Upcoming SlideShare
Loading in...5
×
Like this presentation? Why not share!

Like this? Share it with your network

Share
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,313
On Slideshare
1,311
From Embeds
2
Number of Embeds
1

Actions

Shares
Downloads
1
Comments
0
Likes
0

Embeds 2

https://www.docsnode.com 2

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. บทที่ 1 ความรู้พื้นฐานเกี่ยวกับระบบฐานข้อมูล By [email_address]
  • 2.
    • ฐานข้อมูลและระบบจัดการฐานข้อมูล
    • ภาษาที่ใช้จัดการฐานข้อมูล
    • สภาวะแวดล้อมของฐานข้อมูล
    • ประเภทของฐานข้อมูล
    • สถาปัตยกรรมฐานข้อมูล
    • แบบจำลองของฐานข้อมูล
    Subhead
  • 3. ฐานข้อมูล (Database) หมายถึง การเก็บรวบรวมกลุ่มข้อมูลและความสัมพันธ์ระหว่างข้อมูลเหล่านั้นไว้ด้วยกันอย่างเป็นระบบ เพื่อตอบสนองความต้องการในการใช้งานร่วมกันของผู้ใช้หลาย ๆ คน ภายใต้การทำงานของระบบจัดการฐานข้อมูล
  • 4. ระบบจัดการฐานข้อมูล (Database Management System : DBMS) ทำหน้าที่จัดเก็บ จัดการ ตรวจสอบ และควบคุมการใช้งานฐานข้อมูล โดยความต้องการของผู้ใช้อาจกระทำผ่านทางแอพพลิเคชั่นหรือผ่าน SQL โดยตรง แล้วทำการค้นหาข้อมูลภายในฐานข้อมูล จากนั้นจะประสานงานไปยัง OS เพื่อค้นหาตำแหน่งของข้อมูลที่ต้องการในดิสก์ไปแสดงผลทางจอภาพหรือเครื่องพิมพ์
  • 5. วัตถุประสงค์ของ DBMS
    • ช่วยให้การพัฒนาแอพพลิเคชั่นมีความสะดวกรวดเร็ว ถูกต้อง และลดค่าใช้จ่าย
    • ควบคุมดูแลความปลอดภัย (Security Control)
    • ควบคุมความถูกต้อง (Integrity Control)
    • ควบคุมความเป็นอิสระของข้อมูล (Independent Control)
    • ควบคุมการใช้ข้อมูลร่วมกันในช่วงเวลาเดียวกัน (Concurrency Control)
    • สำรองข้อมูลและการฟื้นสภาพ (Backup & Recovery)
  • 6. ตัวอย่างซอฟต์แวร์ DBMS
    • Proprietary DBMS เช่น Microsoft Access, Microsoft SQL Server, Oracle, DB2, Informix, InterBase, Sybase, Progress 4GL เป็นต้น
    • Free DBMS เช่น MySQL, Cloudscape, Firebird, ProgreSQL, SQLife, MaxDB, HSQLDB, Ingres, H2 เป็นต้น
    Subhead
  • 7. ภาษาที่ใช้จัดการฐานข้อมูล
    • ภาษาที่ใช้กำหนดโครงสร้างของวัตถุ (DDL)
    • ภาษาที่ใช้ในการจัดการข้อมูล (DML)
    • ภาษาที่ใช้ในการเลือกใช้ข้อมูล (DQL)
    • ภาษาที่ใช้ในการควบคุมการเข้าถึงข้อมูล (DCL)
    • ภาษาสำหรับผู้บริหารฐานข้อมูล (Administrator Language)
    • ภาษาที่ใช้ควบคุมทรานเซกชัน (Transaction Control)
    Subhead
  • 8. ภาษาที่ใช้กำหนดโครงสร้างของวัตถุ (DDL) ภาษา
    • ทำหน้าที่นิยามหรือกำหนดโครงสร้างของตารางข้อมูล (Table), ดัชนี ( Index) และตารางข้อมูลเสมือนหรือวิว (View) ได้แก่ คำสั่ง
    • CREATE TABLE
    • ALTER TABLE
    • DROP TABLE
    • CREATE INDEX
    • ALTER INDEX
    • DROP INDEX
    • CREATE VIEW
    • DROP VIEW
  • 9. ภาษาที่ใช้ในการจัดการข้อมูล (DML)
    • ทำหน้าที่ในการเพิ่ม แก้ไข และลบข้อมูล ได้แก่ คำสั่ง
    • INSERT
    • UPDATE
    • DELETE
    ภาษา
  • 10. ภาษาที่ใช้ในการเลือกใช้ข้อมูล (DQL) ทำหน้าที่ตรวจสอบและเรียกข้อมูลที่ตรงตามเงื่อนไขตามความต้องการของผู้ใช้ ซึ่งได้แก่ คำสั่ง SELECT ภาษา
  • 11. ภาษาที่ใช้ในการควบคุมการเข้าถึงข้อมูล (DCL) subhead
    • ทำหน้าที่กำหนดและตรวจสอบสิทธิ์การใช้งานออบเจ็กต์ต่าง ๆ ของผู้ใช้ ได้แก่ คำสั่ง
    • ALTER PASSWORD
    • GRANT
    • REVOKE
    • CREATE SYMNONYM
  • 12. ภาษาสำหรับผู้บริหารฐานข้อมูล (Administrator Language)
    • ทำหน้าที่กำหนดว่าจะอนุญาตให้ผู้ใช้สามารถดำเนินการตรวจสอบและวิเคราะห์การทำงานของฐานข้อมูลได้หรือไม่ ได้แก่ คำสั่ง
    • START AUDIT
    • STOP AUDIT
    ภาษา
  • 13. ภาษาที่ใช้ควบคุมทรานเซกชัน (Transaction Control)
    • หน้าที่จัดการเกี่ยวกับรายการเปลี่ยนแปลงที่เกิดขึ้นกับฐานข้อมูล ได้แก่ คำสั่ง
    • COMMIT
    • ROLLBACK
    • SAVEPOINT
    • SET TRANSACTION
    ภาษา
  • 14. สภาวะแวดล้อมของฐานข้อมูล
    • Computer Aided Software Engineering Tools : CASE Tools
    • Repository
    • DBMS
    • Database
    • Application Programs
    • User Interface (UI)
    • Data and Database Administrators
    • End Users)
    Subhead
  • 15. ประเภทของฐานข้อมูล
    • ฐานข้อมูลแบบลำดับชั้น (Hierarchical Database Model)
    • ฐานข้อมูลแบบเครือข่าย (Network Database Model)
    • ฐานข้อมูลเชิงสัมพันธ์ (Relational Database Model)
    • ฐานข้อมูลเชิงวัตถุ (Object-Oriented Database Model)
    • ฐานข้อมูลหลายมิติ ( Multi-Dimensional Database Model)
    Subhead
  • 16. ฐานข้อมูลแบบลำดับชั้น (Hierarchical Database Model) ประเภทของฐานข้อมูล มหาวิทยาลัย วิทยาศาสตร์ แพทยศาสตร์ สังคมศาสตร์ มนุษยศาสตร์ ครุศาสตร์ ฟิสิกส์ ชีววิทยา คอมพิวเตอร์ เคมี ปราณี รักเกียรติ ดำรง องค์กร คณะ สาขาวิชา นักศึกษา
  • 17. ฐานข้อมูลแบบเครือข่าย (Network Database Model) ประเภทของฐานข้อมูล รายวิชา อาจารย์ นักศึกษา วิทยาศาสตร์ สังคมศาสตร์ ภาษาไทย อารี สุชาติ สมปอง ปราณี รักเกียรติ ณรงค์ ดำรง
  • 18. ฐานข้อมูลเชิงสัมพันธ์ (Relational Database Model) ประเภทของฐานข้อมูล
  • 19. ฐานข้อมูลเชิงวัตถุ (Object-Oriented Database Model) ประเภทของฐานข้อมูล
  • 20. ฐานข้อมูลหลายมิติ ( Multi-Dimensional Database Model) Slicing Dicing ประเภทของฐานข้อมูล
  • 21. สถาปัตยกรรมของฐานข้อมูล (Database Architecture)
  • 22. ที่มา (Wikipedia, 2009, http://en.wikipedia.org/wiki/Logical_data_model#Why_Build_Logical_ Data_Model) Subhead Logical Data Model Physical Data Model
    • ข้อมูลที่แสดงให้เห็นประกอบด้วยเอนทิตี้ แอททริบิวต์ และความสัมพันธ์ระหว่างเอนทิตี้
    • ข้อมูลที่แสดงให้เห็นประกอบด้วยเอนทิตี้ แอททริบิวต์ คีย์ ชนิดข้อมูล กฎการตรวจสอบข้อมูล , Triggers, Stored Procedures, Domain และสิทธิการเข้าถึงข้อมูล
    • สามารถกำหนดชื่อแอททริบิวต์ให้เข้าใจและง่ายต่อการใช้งานโดยไม่จำกัดความยาว
    • การกำหนดชื่อแอททริบิวต์ถูกกำจัดโดยระบบจัดการฐานข้อมูล (DBMS)
    • การใช้งานข้อมูลเป็นอิสระไม่ขึ้นกับเทคโนโลยี กล่าวคือไม่ขึ้นกับแพลตฟอร์ม หรือ DBMS
    • ใช้คีย์หลักและดัชนีในการเข้าถึงข้อมูลได้อย่างรวดเร็ว
    • รูปแบบบรรทัดฐานข้อมูล (Normal Form) ใช้ได้ถึงขั้นที่ 4
    • รูปแบบบรรทัดฐานข้อมูลขึ้นอยู่กับพื้นฐานการใช้งานฐานข้อมูล
  • 23. แบบจำลองของฐานข้อมูล (Database Diagram) Chen’s ERD สัญลักษณ์ ความหมาย Entity Weak Entity Relationship Attribute Primary Key Attribute Multi-valued Attribute Composite Attribute Derived Attribute
  • 24. แบบจำลองของฐานข้อมูล (Database Diagram) ERD by Chen STUDENT SEAT fills 1 1 INSTRUCTOR COURSE teaches 1 N STUDENT COURSE takes N N PROFESSOR SECTION teaches 1 N COURSE SECTION has N N
  • 25. แบบจำลองของฐานข้อมูล (Database Diagram) ERD by Chen SEAT 1 se_no se_pos teaches N fills s_id s_name s_addr STUDENT 1 takes N N has COURSE c_number c_name N INSTRUCTOR i_faculty i_name i_no 1 teaches PROFRESSOR p_faculty p_name p_id 1 SECTION s_number N N
  • 26. แบบจำลองของฐานข้อมูล (Database Diagram) ERD by Crow’s Foot สัญลักษณ์ ความหมาย Entity Zero or More 1 or More 1 and Only 1 (Exactly 1) Zero or 1
    • Key Attribute
    • Attribute 1
    • Attribute 2
    • . . .
    ENTITY NAME
  • 27. แบบจำลองของฐานข้อมูล (Database Diagram) ERD by Crow’s Foot
  • 28. แบบจำลองของฐานข้อมูล (Database Diagram) ERD by Crow’s Foot
  • 29. การแปลงเค้าร่างแนวคิดเป็นเค้าร่างภายใน (Mapping)
    • กรณีที่เอนทีตี้ A มีความสัมพันธ์แบบหนึ่งต่อหนึ่ง (1 : 1) กับเอนทีตี้ B ให้นำคีย์หลักของเอนทีตี้ A ไปทำหน้าที่เป็นคีย์นอกของเอนทีตี้ B
    • กรณีที่เอนทีตี้ A มีความสัมพันธ์แบบหนึ่งต่อกลุ่ม (1 : N) กับเอนทีตี้ B ให้นำคีย์หลักของเอนทีตี้ A ไปทำหน้าที่เป็นคีย์นอกของเอนทีตี้ B
    • กรณีที่เอนทีตี้ A มีความสัมพันธ์แบบกลุ่มตอกลุ่ม (N : N) กับเอนทีตี้ B ให้สร้างตารางเพิ่มขึ้นมาใหม่โดยนำคีย์หลักของทั้งเอนทิตี้ A และ B มาทำหน้าที่เป็นคีย์นอกของตารางใหม่นี้ รวมถึงแอททริบิวต์ใหม่ที่เกิดจากความสัมพันธ์ของเอนทิตี้ทั้งสองนี้
  • 30. การแปลงเค้าร่างแนวคิดเป็นเค้าร่างภายใน (Mapping) TABLE_NAME ( pk_field , field 1, field 2, …, field n, [ fk_field ] ) STUDENT ( s_id , s_name, s_addr) SEAT ( se_no , se_pos , s_id ) INSTRUCTOR ( i_no , i_name, i_faculty ) COURSE ( c_number , s_name, i_no ) PROFESSOR ( p_id , p_name, p_faculty ) SECTION ( s_number , p_id ) STUDENT_TAKES_COURSE ( s_id , c_number ) COURSE_HAS_SECTION ( c_number , s_number ) Thanks
  • 31. Thank you for your attention Q & A
  • 32. Question & Answer