670 likes | 820 Views
http://course.eau.ac.th. ระบบฐานข้อมูลสำหรับเภสัชศาสตร์. อาจารย์อารียา ศรีประเสริฐ สาขาวิชาเทคโนโลยีสารสนเทศธุรกิจ คณะเทคโนโลยีสารสนเทศ khunareeya@hotmail.com. หัวข้อที่ศึกษา. 1 ความรู้เบื้องต้นเกี่ยวกับข้อมูล 2 ระบบแฟ้มข้อมูลและระบบฐานข้อมูล 3 ความหมายและหน่วยต่าง ๆ ในฐานข้อมูล
E N D
ระบบฐานข้อมูลสำหรับเภสัชศาสตร์ระบบฐานข้อมูลสำหรับเภสัชศาสตร์ อาจารย์อารียา ศรีประเสริฐ สาขาวิชาเทคโนโลยีสารสนเทศธุรกิจ คณะเทคโนโลยีสารสนเทศ khunareeya@hotmail.com
หัวข้อที่ศึกษา 1ความรู้เบื้องต้นเกี่ยวกับข้อมูล 2 ระบบแฟ้มข้อมูลและระบบฐานข้อมูล 3 ความหมายและหน่วยต่าง ๆ ในฐานข้อมูล 4 ประเภทของฐานข้อมูล 5การพัฒนาฐานข้อมูล 6 การสร้างฐานข้อมูลสำหรับเภสัชศาสตร์
1 ความรู้เบื้องต้นเกี่ยวกับข้อมูล • ข้อมูล (data) : ข้อเท็จจริงเกี่ยวกับเหตุการณ์ต่างๆ • สารสนเทศ (Information): ข้อมูลเชิงสรุปที่ได้หลังจากกระบวนประมวลผล เช่น การคำนวณ การจัดกลุ่ม การเรียงลำดับ หรือสรุปผล เพื่อสร้างเป็นรายงานสรุป หรือจัดให้อยู่ในรูปแบบที่เหมาะสมต่อการนำเสนอสำหรับผู้บริหารขององค์กร Processing Data Information
Information Data รายการยาที่ขายได้ ประจำเดือนกรกฎาคม 2551 Amoxicillin 500 mg 25000 เม็ด Penicillin 250 mg 5000 เม็ด CPM 15800 เม็ด Acipised 8000 เม็ด Hadol 0.5 mg 9500 เม็ด ยาที่ขายดีที่สุด ............................................................. Processing จำนวนยาที่ขายได้ รวม .................................
2 ระบบแฟ้มข้อมูลและระบบฐานข้อมูล โครงสร้างแฟ้มข้อมูล • Bit = หน่วยข้อมูลพื้นฐานที่เก็บในหน่วยความจำในคอมพิวเตอร์ • Byte= จำนวนบิต 8 บิต ที่ใช้แทนตัวอักษร (/สัญลักษณ์) 1 ตัว • เขตข้อมูล (Field)= กลุ่มของตัวอักษรที่รวมกันขึ้นมาเป็นกลุ่มคำที่มีความหมาย • ระเบียน (Record)= เขตข้อมูลหลายเขตมารวมกันเป็นข้อมูลที่มีความหมาย • แฟ้มข้อมูล (File)= ระเบียนแต่ละระเบียนของข้อมูลชนิดเดียวกันมารวมกัน • ฐานข้อมูล (Database) = แฟ้มข้อมูลหลายแฟ้มรวมกัน และพจนานุกรมฐานข้อมูล (Data Dictionary)/เมต้าดาต้า (Metadata) • พจนานุกรมฐานข้อมูล= อธิบายลักษณะของข้อมูลที่อยู่ในฐานข้อมูลรวมทั้งความสัมพันธ์ระหว่างข้อมูล Bit Byte Field Record File Database
เขตข้อมูล (Field) แฟ้มข้อมูล ระเบียน (Record) แฟ้มข้อมูลพนักงาน
การจัดเก็บข้อมูลในระบบแฟ้มข้อมูล (File-Based System) Sales department Accounting department Personnel department โปรแกรม B โปรแกรม C โปรแกรม A Account Employees Customer Salesman Inventory Sales Duplicate data salesman is an employee การจัดเก็บข้อมูลที่ซ้ำซ้อนกัน (Redundancy)
Salesman Employees
ระบบฐานข้อมูล ฐานข้อมูล = การเก็บรวบรวมข้อมูลที่มีความสัมพันธ์กัน ไว้ในที่เดียวกัน ข้อจำกัดของการประมวลผลแบบแฟ้มข้อมูล ระบบประมวลผลแบบฐานข้อมูล
ระบบฐานข้อมูล (Database System) Personnel department Sales department โปรแกรม C โปรแกรม A โปรแกรม B DBMS Employees Customers Sales Inventory Account
ระบบการจัดการฐานข้อมูล(Database Management System : DBMS) DBMS คือโปรแกรมที่ถูกสร้างขึ้นมาเพื่อทำหน้าที่ การสร้างฐานข้อมูล การจัดการฐานข้อมูล การป้องกันความขัดแย้งของข้อมูล การป้องกันและแก้ไขความเสียหายของข้อมูล การใช้ข้อมูลร่วมกันของโปรแรกมประยุกต์ การกำหนดสิทธิ์ในการเข้าใช้งานฐานข้อมูล
3ความหมายและหน่วยต่าง ๆ ในฐานข้อมูล
1) เอนทิตี (entity) • เอนติตี้ (Entity) = สิ่งที่เราสนใจและต้องการที่จะจัดเก็บข้อมูลนั้นไว้ในฐานข้อมูล ตัวอย่างเอนทิตี • เอนทิตีที่เป็นบุคคล : พนักงาน ลูกค้า นักศึกษา เป็นต้น • เอนทิตีที่เป็นวัตถุ : สินค้า เครื่องจักร ใบสั่งซื้อ ใบลงทะเบียน เป็นต้น • เอนทิตีที่เป็นเหตุการณ์ : การซื้อสินค้า การลงทะเบียนเรียน เป็นต้น • การตั้งชื่อเอนทิตีจะใช้คำนาม ลูกค้า
สถานที่ติดต่อ เพศ อาชีพ ชื่อ-สกุล รายได้ รหัสลูกค้า 2) แอตทริบิวต์ • แอตทริบิวต์ หมายถึงรายละเอียดต่างๆ ที่เป็นส่วนประกอบของเอนทิตี • การตั้งชื่อแอตทริบิวต์จะใช้คำนาม ลูกค้า
แอททริบิวท์ที่เป็นตัวชี้เฉพาะสมาชิกของเอนติตีแอททริบิวท์ที่เป็นตัวชี้เฉพาะสมาชิกของเอนติตี Identifier(ตัวชี้เฉพาะ) คือ แอททริบิวท์หรือกลุ่มของแอทริบิวท์ของเอนติตีใดๆ ที่ทำหน้าที่ชี้เฉพาะถึงสมาชิกตัวใดตัวหนึ่งของเอนติตี
3) ความสัมพันธ์ (Relationship) • ความสัมพันธ์ (Relationship) หมายถึง ความสัมพันธ์ที่เกิดขึ้นระหว่าง 2 เอนทิตี • ชื่อของความสัมพันธ์จะเป็นสิ่งที่ระบุว่า 2 เอนทิตี มีความสัมพันธ์กันอย่างไร การตั้งชื่อต้องใช้คำกริยา • ความสัมพันธ์มี 3 ชนิด คือ • ความสัมพันธ์แบบหนึ่งต่อหนึ่ง (one to one relationship 1:1) • ความสัมพันธ์แบบหนึ่งต่อกลุ่ม (one to many relationship 1:1) • ความสัมพันธ์แบบกลุ่มต่อกลุ่ม (one to many relationship 1:1)
ความสัมพันธ์ที่ระเบียนเพียง 1 ระเบียนในเอนทิตี A มีความสัมพันธ์กับระเบียนเพียง 1 ระเบียนในเอนทิตี B และในทางกลับกันระเบียนเพียง 1 ระเบียนในเอนทิตี B ก็จะมีความสัมพันธ์กับระเบียนเพียง 1 ระเบียนในเอนทิตี A 1) ความสัมพันธ์แบบหนึ่งต่อหนึ่ง (One-to-One Relationship) เอนทิตี B อาจารย์ เอนทิตี A ห้องพัก
รหัสห้องพัก อาคาร รหัสอาจารย์ ชื่อ มี อาจารย์ ห้องพัก ที่อยู่ ความสัมพันธ์แบบหนึ่งต่อหนึ่ง (One-to-One Relationship) 1 1
2) ความสัมพันธ์แบบหนึ่งต่อกลุ่ม (One-to-Many Relationship) ความสัมพันธ์ที่ระเบียนเพียง 1 ระเบียนในเอนทิตี A มีความสัมพันธ์กับระเบียนหลายระเบียนในเอนติตี้ B และในทางกลับกันระเบียนหลายระเบียนในเอนติตี B ก็จะมีความสัมพันธ์กับระเบียนเพียง 1 ระเบียนในเอนติตี้ A เอนทิตี B เอนทิตี A พนักงาน แผนก
ชื่อพนักงาน รหัสพนักงาน รหัสแผนก ชื่อแผนก มี พนักงาน แผนก ความสัมพันธ์แบบหนึ่งต่อกลุ่ม (One-to-Many Relationship) 1 N
3) ความสัมพันธ์แบบกลุ่มต่อกลุ่ม (Many-to-Many Relationship) ความสัมพันธ์ทีแต่ละระเบียนในเอนติตี้ A จะมีความสัมพันธ์กับระเบียนหลายระเบียนในเอนติตี้ B และในทางกลับกันระเบียนหลายระเบียนในเอนติตี B ก็จะมีความสัมพันธ์กับระเบียนหลายระเบียนในเอนติตี้ A นักศึกษา รายวิชา
ชื่อนักศึกษา ชื่อนักศึกษา รหัสวิชา รหัสวิชา ชื่อวิชา ชื่อวิชา รหัสนักศึกษา รหัสนักศึกษา ลงทะเบียน รายวิชา รายวิชา นักศึกษา นักศึกษา การลงทะเบียน 1 N 1 N ความสัมพันธ์แบบกลุ่มต่อกลุ่ม (Many-to-Many Relationship) M N
ประเภทของโครงสร้างฐานข้อมูลประเภทของโครงสร้างฐานข้อมูล โครงสร้างฐานข้อมูลแบ่งออกได้เป็น 3 ประเภท • ฐานข้อมูลลำดับขั้น (Hierarchical Database) • ฐานข้อมูลแบบเครือข่าย (Network Database) • ฐานข้อมูลแบบเชิงสัมพันธ์ (Relational Database)
1) ฐานข้อมูลลำดับขั้น (Hierarchical Database) • ฐานข้อมูลที่มีความสัมพันธ์ของข้อมูลเป็นแบบหนึ่งต่อหนึ่ง หรือหนึ่งต่อกลุ่ม (ไม่มีแบบกลุ่มต่อกลุ่ม) • โครงสร้างฐานข้อมูล = โครงสร้างแบบต้นไม้ (Tree Structure)มีลักษณะสำคัญคือระเบียนที่อยู่แถวบนจะเป้นระเบียนพ่อแม่ (parent record) ระเบียนในแถวถัดมาเป็นระเบียนลูก (child record)
ระเบียนพนักงานขาย 1 N ระเบียนลูกค้า ระเบียนสินค้า รูปทื่ 2.11 ก แสดงโครงสร้างฐานข้อมูลแบบลำดับขั้น
ระเบียนพนักงานขาย ระเบียนลูกค้า ระเบียนสินค้า รูปทื่ 2.11 ข แสดงตัวอย่างข้อมูลในฐานข้อมูลแบบลำดับเครือข่าย
2) ฐานข้อมูลแบบเครือข่าย (Network Database) • ฐานข้อมูลที่มีความสัมพันธ์ของข้อมูลเป็นแบบใดก็ได้ ได้แก่แบบหนึ่งต่อหนึ่ง แบบหนึ่งต่อกลุ่ม และแบบกลุ่มต่อกลุ่ม
ระเบียนร้านผู้ผลิตสินค้าระเบียนร้านผู้ผลิตสินค้า M ระเบียนสินค้า (ทีซื้อมาจากผู้ผลิต) N N 1 ระเบียนที่เก็บสินค้า รูปทื่ 2.12 ก แสดงโครงสร้างฐานข้อมูลแบบเครือข่าย
ระเบียนผู้ผลิตสินค้า ระเบียนสินค้า (ทีซื้อมาจากผู้ผลิต) ระเบียนที่เก็บสินค้า รูปทื่ 2.11 ข แสดงตัวอย่างข้อมูลในฐานข้อมูลแบบลำดับชั้น
3) ฐานข้อมูลแบบเชิงสัมพันธ์ (Relational Database) • ฐานข้อมูลที่มีการเก็บข้อมูลในรูปของตาราง (table) ซึ่งภายในจะแบ่งเป็นแถว (Row) และคอลัมน์ (Column) แอททริบิวท์ (คอลัมน์,เขตข้อมูลหรือฟิลด์) ทัพเพิล(แถว,ระเบียนหรือเรคคอร์ด) รีเลชัน (ตาราง,แฟ้มข้อมูลหรือไฟล์)
ตัวอย่างข้อมูลฐานข้อมูลเชิงสัมพันธ์ระบบทะเบียนยาตัวอย่างข้อมูลฐานข้อมูลเชิงสัมพันธ์ระบบทะเบียนยา ฐานข้อมูลยา ประกอบด้วยกลุ่มของเอนติตี้ที่มีความสัมพันธ์กัน โดยข้อมูล แต่ละเอนติตี้จะจัดเก็บในรูปของตาราง
ยา ประเภทยา
การพัฒนาฐานข้อมูล 1) การออกแบบฐานข้อมูลด้วย Entity-Relationship Diagram 2) การแปลงโมเดลข้อมูลแบบ E-R เป็นโมเดลฐานข้อมูลเชิงสัมพันธ์ 3) การออกแบบไฟล์ (File Design) 4) การพัฒนาฐานข้อมูลด้วย MS ACCESS
1) การออกแบบฐานข้อมูลด้วย Entity-Relationship Diagram
การออกแบบฐานข้อมูลด้วยEntity Relationship Diagram (E-R Diagram) • การวิเคราะห์หาเอนติตี • การหาความสัมพันธ์ระหว่างเอนติตีหลักเพื่อหาเอนติตีอื่นที่เกี่ยวข้อง • การหาแอททริบิวท์และกำหนดแอททริบิวท์ที่เป็นตัวชี้เฉพาะสมาชิกของเอนติตี
โรงพยาบาลแห่งหนึ่ง แห่งหนึ่ง ต้องการพัฒนาฐานข้อมูลยาขึ้น เพื่อใช้เก็บข้อมูลต่างๆ ที่เกี่ยวกับการรักษา เพื่อนำมาใช้เป็นข้อมูลประกอบการบริหารการทำงานของโรงพยาบาล โดยมีข้อกำหนดซึ่งได้มาจากการหาความต้องการของผู้ใช้ (User Requirement) ดังนี้ • การเก็บข้อมูลยาจะประกอบด้วย รหัสยา ชื่อยา หน่วย ราคา โดยยาแต่ละรายการจะจัดอยู่ใน 1 ประเภทยา และแต่ละประเภทยามียาได้หลายรายการและข้อมูลประเภทยาจะประกอบด้วย รหัสประเภท ประเภทยา
ประเภท รหัสประเภท รหัสยา ชื่อยา N มี 1 ประเภทยา ยา E-R Model ระบบทะเบียนยา หน่วย ราคา
2) การแปลงโมเดลข้อมูลแบบ E-R เป็นโมเดลฐานข้อมูลเชิงสัมพันธ์
การแปลงโมเดลข้อมูลแบบ E-R เป็นโมเดลฐานข้อมูลเชิงสัมพันธ์ • การแปลงเอนติตีปกติและแอททริบิวท์ของเอนติตีปกติ • การแปลงความสัมพันธ์ระหว่างเอนติตี
แสดงการแปลงรีเลชันปกติและแอททริบิวท์แบบธรรมดา วิธีการ : สร้างรีเลชัน 1 รีเลชัน โดยจะนำ Simple Attribute มาเป็น Attribute ของรีเลชัน นำ Identifier มาเป็น PK ของรีเลชัน
การแปลงความสัมพันธ์ระหว่างเอนติตี • ประเภทความสัมพันธ์แบบหนึ่ง-ต่อ-หนึ่ง • ประเภทความสัมพันธ์แบบหนึ่ง-ต่อ-กลุ่ม • ประเภทความสัมพันธ์แบบ กลุ่ม-ต่อ-กลุ่ม
ประเภทความสัมพันธ์แบบหนึ่ง-ต่อ-หนึ่งประเภทความสัมพันธ์แบบหนึ่ง-ต่อ-หนึ่ง
แสดงการแปลงเอนติตีปกติและแอททริบิวท์ของเอนติตีเป็นรีเลชันแสดงการแปลงเอนติตีปกติและแอททริบิวท์ของเอนติตีเป็นรีเลชัน วิธีการ : สร้างรีเลชัน 2 รีเลชัน โดยจะนำเฉพาะ Attribute ย่อย (Simple Attribute) มาเป็น Attribute ของรีเลชัน นำ Identifier มาเป็น PK ของรีเลชัน
ประเภทความสัมพันธ์แบบหนึ่ง-ต่อ-หนึ่งระหว่างสองเอนติตีประเภทความสัมพันธ์แบบหนึ่ง-ต่อ-หนึ่งระหว่างสองเอนติตี
ประเภทความสัมพันธ์แบบหนึ่ง-ต่อ-หนึ่งระหว่างสองเอนติตีประเภทความสัมพันธ์แบบหนึ่ง-ต่อ-หนึ่งระหว่างสองเอนติตี