Your SlideShare is downloading. ×
Lesson 1 intro2_db
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Lesson 1 intro2_db

958
views

Published on

Introduction to Database.

Introduction to Database.

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
958
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

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