(อาจารย์เกวลี) ล่ามได้ยินไหมคะ โอเคค่ะ อย่างนั้นเดี๋ยววันนี้นะคะ วันนี้เรียนไม่เยอะนะคะ เพราะเดี๋ยวท้าย ๆ ชั่วโมงจะให้ทำงานในห้อง อย่างนั้นสอนเลยนะวั นนี้นะคะ หลัก ๆ จะมีอยู่ 3 เรื่องนะคะ ก็จะมีเกี่ยวกับประจักษ์การพัฒนาระบบนะคะ ตัวย่อก็คือ sdlc นะคะ กับเรามาประยุกต์ใช้งานฐานข้อมูล มันก็จะเป็นการพัฒนาระบบจัดการฐานข้อมูลก็คือ dblc รวมถึงที่เราเรียนเมื่อหลาย ๆ สัปดาห์ก่อนนะคะ แล้วก็จะเอาลูกที่เราเคยวาดไว้นี่นะคะ รูป ER นะคะ แปลงกลับมาในรูปแบบของความสัมพันธ์ หรือว่าตารางจะเป็นในรูปแบบของตารางจะทำอย่างไรนะคะ เดี๋ยววันนี้เราจะมาเรียนกันแค่นี้นะคะ วัฏจักรการพัฒนาระบบ sdlc ภาษาอังกฤษก็คือ Life Cycle นั่นเองจะเป็นการพัฒนาระบบมันจะสิ่งที่เรียกเราได้มาจากระบบสารสนเทศต่างร่วมกันอันนี้พื้นฐานก่อนนะคะ ว่าทำไมเราถึงต้องมาพัฒนาระบบจัดการฐานข้อมูลซึ่งมันจะเป็นระบบที่ปรับปรุงนะคะ มาจากวัฏจักรการพัฒนาระบบนั่นแหละนะคะ โดยการพัฒนาระบบนี่ เราจะมีอยู่ 5 ระยะ นะคะ อันนี้คือเป็นมาตรฐาน สมมติเราเรียนไปนี่ แล้วเราเขียนโปรแกรมขึ้นมาสักงานหนึ่งนี่ หรือเราถูกจ้างให้เขียนโปรแกรมให้ นะคะ หรือเราต้องการจะไปจ้าง หรือเราต้องการจะพัฒนาระบบเองก็ได้นะคะ ขั้นตอนมาตรฐานการพัฒนาระบบมีอยู่ 5 ระยะ ระยะแรก เราต้องวางแผนก่อนว่าเราจะพัฒนาระบบอะไรนะคะ ทำไมต้องทำ มันมีความจำเป็นกับการทำงานของเราไหม หรืออย่างไรนะคะ หลังจากนั้น มาวิเคราะห์ว่า ไอ้ที่เราวางแผนไปนี่ มันครอบคลุมแล้วหรือยังนะคะ กับการทำงานที่เราต้องการ หรือผลลัพธ์ที่เราต้องการนี่ กับที่เราวางแผนไว้นี่มันครบหรือเปล่านะคะ เราก็มาเช็ก หลังจากนั้น พอเราวิเคราะห์ความถูกต้องทุกอย่างแล้วมันครบทุกรายละเอียดที่เราต้องการ เราก็มาออกแบบรายละเอียดของระบบ ว่าระบบนี้มันจะต้องมีส่วนประกอบอะไรบ้าง ใครสามารถงานระบบนี้ได้บ้างนะคะ แต่ละคนใช้งาน ความการเข้าถึงข้อมูลนี่ มากน้อยต่างกันขนาดไหนนะคะ อันนี้เป็นพื้นฐานเบื้องต้น หรือในระบบของเรา ต้องการจะเก็บข้อมูลอะไรบ้างนะคะ ต้องมากรอกรายละเอียด หรือเขียนรายละเอียดทั้งระบบ นะคะ มาดูว่ามันครบหรือยังนะคะ ส่วนนี้ก็จะต้องมีการตรวจสอบว่าสิ่งที่เราวางแผนวิเคราะห์และการออกแบบนี้ สามารถเกิดขึ้นได้จริงไหมนะคะ หลังจากนั้น พอวิเคราะห์แล้วว่ามันสามารถเกิดขึ้นได้ เราก็ไปดำเนินการพัฒนาระบบขึ้นมานะคะ ในช่วงนี้ก็จะเป็นการพัฒนานะคะ แต่บางคนก็คือพัฒนาไปด้วย ทดสอบไปด้วย ว่าระบบนี้ใช้งานได้จริงแล้วเป็นอย่างไร หรือมันมีข้อผิดพลาดตรงไหน ก็ดำเนินการแก้ไข ทั้งสร้างใหม่ไปเรื่อย ๆ แล้วก็ปรุงสิ่งที่ทำไปแล้ว ให้มันสมบูรณ์ที่สุด หลังจากนั้นเราก็จะได้ระบบมา แต่พอได้มาแล้ว มันก็ยังต้องมีในส่วนของการบำรุงรักษา นะค ะ ว่ามันยังทำงานได้ดีไหม มีข้อผิดพลาดในการทำงานหรือเปล่า อาจจะใส่ข้อมูลราคาสินค้าไป แต่ภาษีผิด ภาษีประเทศไทย คือ 7 เปอร์เซ็นต์ แต่บังเอิญว่าเราพิมพ์ผิด เราพิมพ์เป็นเลข 4 อย่างนี้ ผลการคำนวณมันเลยผิด อันนี้ก็ต้องไปแก้ไขนะคะ ในส่วนของการบำรุงรักษา หรือว่าข้อมูลที่เราต้องการจะเพิ่ม อย่างเช่น ปกติเราเก็บแต่เบอร์โทรศัพท์มือถือนะคะ เราอยากได้เบอร์โทรศัพท์บ้านด้วย ก็อยู่ในส่วนของการบำรุงรักษาค่ะ เพราะว่ามันจะเป็นการที่แก้ไขในตัวระบบ ปรับปรุงระบบนั่นเองนะคะ ว่าให้เพิ่มเบอร์โทรศัพท์บ้านเข้าไปด้วยอย่างนี้นะคะ ซึ่งจากวัฏจักรการพัฒนาระบบนี่ เราเลยเอาเป็นตัวตั้งต้น สำหรับการพัฒนาระบบจัดการฐานข้อมูล แต่มันจะมีบางส่วนที่เพิ่มเติมขึ้นมานะคะ คือ ในส่วนของการทดสอบแล้วก็ประเมินผลนะคะ เมื่อกี้ การพัฒนาระบบนี่ เราจะมีอยู่ 5 ขั้นตอน แต่ถ้าเป็นการพัฒนาระบบจัดการฐานข้อมูล หรือพัฒนาฐานข้อมูลนี่ เราจะมีอยู่ 6 ขั้นตอนนะคะ ซึ่งมันก็จะใกล้ ๆ เคียงกันล่ะ นะคะ โดยเริ่มต้นของการสร้างฐานข้อมูลขึ้นมานี่ เราต้องมีการศึกษาเบื้องต้นก่อน ว่า ข้อมูลที่เราต้องการจะเก็บ เราจะเก็บอะไร เก็บไปทำไม เก็บมาจากไหนนะคะ แล้วจะเรียกดูข้อมูลทำอย่างไรนะคะ อันนี้เป็นการศึกษาเบื้องต้นก่อน ว่า เอ๊ะ ที่เราจะทำนี่ มันทำได้ไหม ทำได้จริงหรือเปล่า ข้อมูลคืออะไรนะคะ หลังจากนั้นเราก็เอาสิ่งที่เราศึกษาเบื้องต้นนี่ มาออกแบบฐานข้อมูลเหมือนที่เราวาดไปนั่นแหละค่ะ ที่เราวาดรูป ER ไป ก็คือเริ่มออกแบบแล้ว ว่า เอ๊ะเหมือนตัวอย่างที่อาจารย์ทุกอย่างให้ คือ ร้านหนังสือ 1 ร้าน จะเก็บข้อมูลอะไรบ้าง อันนี้คือเริ่มออกแบบแล้วนะคะ พอออกแบบได้ปุ๊บ ตรวจสอบข้อมูลครบทุกอย่างนะคะ เราก็วจะมาดำเนินการสร้างฐานข้อมูล เพื่อติดตั้งในระบบที่เรามีไว้อยู่แล้วนะคะ หรือถ้ายังไม่ดีสร้างขึ้นมานะคะ เพื่อใช้กับฐานข้อมูลที่เรากำลังจัดทำเช่นเดียวกันนะคะ พอสร้างฐานข้อมูลเสร็จ เอาไปติดตั้งในระบบแล้ว เราก็ต้องมีการทดสอบ แล้วก็ประมวลผลว่าฐานข้อมูลที่เราสร้างมา มันใช้งานได้ดีกับระบบที่มีอยู่หรือไม่นะคะ ถ้ามันไม่ดี มันไม่ดีตรงไหน มีตรงไหนที่แก้ไขหรือเปล่านะคะ หรือไก่ใส่ฐานข้อมูลแล้ว แต่เรียกข้อมูลขึ้นมาไม่ได้ เราก็ต้องแก้ปัญหานะคะ ว่าทำไมมันไม่ได้ เหมือนถ้าใครเคยใช้ Excel เบอร์โทรศัพท์นำหน้าของเราจะเป็นเลข 0 ใช่ไหมคะ แต่เหมือน Excel เหมือนกัน ถ้าเราไม่เปลี่ยนชนิดของข้อมูล เลข 0 เราจะหายไป ทำไม อันนี้ก็เป็นข้อหนึ่ง ที่เราจะต้องกำหนดรูปแบบของข้อมูลฐานข้อมูลของเราด้วยนะคะ ว่าให้คอลัมน์นี้เบอร์โทรศัพท์นะ ไม่ใช่จำนวนเลข จำนวนจริงใด ๆ นะคะ หลังจากนั้นพอเราทดสอบ ประเมินผลเป็นที่พอใจแล้ว เราก็เอาระบบที่ได้ ที่มีการประสานของฐานข้อมูลนี่ เอาไปใช้งานจริง พอใช้งานจริง ทุกระบบที่เกี่ยวกับคอมพิวเตอร์ จะต้องมีการบำรุงรักษา หรือปรับปรุงแก้ไขข้อมูล ใด ๆ ก็ตามก็ต้องมีเหมือนกันนะคะ อันนี้ก็จะคล้าย ๆ กับการพัฒนาระบบนะคะ สำหรับการพัฒนาฐานข้อมูล เดี๋ยวจะอธิบายโดยละเอียด ก็คือในการศึกษาเบื้องต้นนี่ มันก็ อย่างที่อาจารย์บอกตอนแรก ก็ต้องดูว่าผู้ใช้งานต้องการอะไร ฐานข้อมูลเขาอยากได้ เอาเพื่อไปทำอะไร หรือมีปัญหาอะไรเกิดขึ้น เขาถึงต้องการระบบฐานข้อมูลนะคะ หรืออาจจะเกี่ยวกับการเก็บข้อมูลให้เป็นระเบียบนะคะ ซึ่งการศึกษาเบื้องต้นนี่ มันจะเป็นแนวทางในการออกแบบต่อไป อย่างน้อย ที่เราต้องวิเคราะห์ ก็คือในองค์กรเราต้องการเก็บข้อมูลขนาดไหน นะคะ ปัญหาที่เกิดขึ้นในปัจจุบัน หรือข้อจำกัด ก็คือตอนนี้ข้อมูลนี่ เขียนในสมุดตลอดเลย หรือเก็บไว้ในคอมพิวเตอร์เครื่องเดียวนะคะ มันไม่สามารถทำงานร่วมกันได้หลาย ๆ คน จุดมุ่งหมาย คือ ถ้าเรามีระบบฐานข้อมูลที่ดี คนทำงานช่วยกันจะได้เพิ่มขึ้น หรืออาจจะเป็นการเรียกดูข้อมูลได้สะดวกสบายขึ้นนะคะ ขอบเขตของงาน คือ คนที่สามารถเข้ามาดูข้อมูลได้ มีใครบ้าง เป็นต้นนะคะ อันนี้คือการศึกษาเบื้องต้นก่อน แล้วก็มาเช็กดูนะคะ ว่าข้อที่เราวิเคราะห์ไว้นี่ มันครบหรือยัง ถ้าครบแล้วนะคะ ก็มาออกแบบนะคะ ซึ่งรายละเอียดก็จะเอามาจากขั้นตอนของการศึกษาข้อมูลเบื้องต้น นั่นแหละ มาเป็นแนวทางในการออกแบบ 3 ระดับนะคะ ระดับแนวคิด ระดับภายใน ระดับภายนอก ระดับตรรกะ อะไรพวกนี้ ที่เรียนแล้ว ในเบื้องต้น การออกแบบเชิงแนวคิดนี่ เราจะเป็นการพัฒนาแบบจำลองข้อมูลให้ถูกต้อง ต้องมีความละเอียด เข้าใจข้อมูลองค์กรเป็นอย่างดี สมมติว่าถ้าคุณเป็นโปรแกรมเมอร์ คุณก็ต้องรู้ว่าองค์กรของคุณทำอะไรนะคะ ข้อมูลมีอะไรบ้างนะคะ อาจจะเป็นไปฝึกงาน แล้วเขาให้เราออกแบบฐานข้อมูลเกี่ยวกับการจัดการพนักงาน เราก็ต้องรู้ว่า ข้อมูลพนักงาน 1 คน มีอะไรบ้างนะคะ แน่นอน เหมือนที่อาจารย์เคยสอน มีรหัสพนักงาน รหัสบัตรประชาชนใช่ไหมคะ มีชื่อ นามสกุล มีเบอร์โทรศัพท์ มีที่อยู่ปัจจุบัน ที่อยู่ตามทะเบียนบ้าน เรียนจบอะไรมา ตอนนี้ตำแหน่งอะไร เงินเดือนเท่าไหร อันนี้คือข้อมูลเบื้องต้น แต่ถ้าเป็นบริษัทใหญ่ ๆ นี่ เขาก็จะถามข้อมูลละเอียด มาก ว่าที่บ้านทำงานอะไร พ่อไม่อยู่ไหน มีลูกหรือยัง เพราะว่าบางองค์กรมีสวัสดิการให้คนในครอบครัวด้วย อันนี้พวกคุณก็ต้องศึกษาด้วยนะ ถ้าคุณไปทำงานที่ไหน ว่าแต่ละที่ เขาอาจจะไม่ได้เก็บข้อมูลเหมือนกัน อาจจะมีเก็บข้อมูลไม่เยอะ หรืออาจจะเก็บข้อมูลนิดเดียวนะคะ ในฐานข้อมูลอาจจะเก็บรูปภาพพนักงาน รูปภาพต้องเป็นรูปภาพแบบไหน อันนี้ก็คือสิ่งที่เราต้องออกแบบนะคะ ไม่ใช่ว่าอยากทำอะไรก็ทำ ไม่ได้นะคะ ต้องดูความต้องการขององค์กรที่เราไปทำงานให้เขาด้วยนะคะ ตั้งแต่การออกแบบนี่ เราต้องกำหนดชนิดของข้อมูลที่จะเอาเข้ามา ก็คือชนิดข้อมูลของคอลัมน์ของเราจะใส่นะคะ มีความสัมพันธ์เป็นอย่างไรบ้าง ตารางพนักงานจะต้องไปเชื่อมโยงกับตารางเงินเดือนไหม นะคะ ต้องเขียนให้ถูก เพราะตำแหน่งแต่ละตำแหน่ง คนแต่ละคน เงินเดือนไม่เท่ากันนะคะ ในแต่ละตารางจะเก็บข้อมูลอะไรบ้างนะคะ ขอบเขตของข้อมูลในตารางนั้น ๆ ต้องกำหนดอย่างไร เหมือนที่อาจารย์ชอบยกตัวอย่างไปบ่อย ๆ รหัสบัตรประชาชนต้องเป็นเลข 13 หลักเท่านั้น อย่างนี้ หรือรหัสไปรษณีย์มันก็ควรมีแค่ 5 หลัก เท่านั้น ไม่ควรเกิน ใช่ไหม อะไรที่เรารู้อยู่แล้วว่าขอบเขตมันเป็นอย่างไร เราก็สามารถกำหนดได้นะครับ เพื่อป้องกันความผิดพลาดด้วย บางคนพิมพ์รหัสไปรษณีย์ผิดไป 0 เกินไปอย่างนี้ มันก็ผิดข้อมูลที่ได้มาก็จะผิดพลาด ในตารางอะไรเป็นคีย์หลัก ก็คือค่าที่ห้ามซ้ำกันคืออะไร มีการกำหนดความเป็นเอกลักษณ์ของตาราง เป็นตารางทั่วไปหรือตารางเฉพาะ อันนี้ค่าจำเป็นต้องกำหนดนะคะ มีการเขียน ER diagram ก็คือการวาดรูปที่เราวาดไปวาดรูป ER หลังจากนั้น ต้องมานั่งประชุมกันค่ะ ว่าสิ่งที่เราออกแบบ กับสิ่งที่ผู้ใช้งานต้องการตรงกันหรือเปล่า มีตรงไหนที่เข้าใจไม่ตรงกันไหม หรือมีอะไรที่เราออกแบบขาดไปหรือเปล่า หรือมันเกินความจำ เป็น ตัดออกได้ไหม นะคะ อันนี้คือสิ่งที่ต้องมาคุยกัน ไม่ใช่ว่าเราคิดเองทั้งหมด แล้วเราทำเลยสรุปไม่ตรงกันกับที่ผู้ใช้งานต้องการ อันนี้ก็ไม่ได้แล้ว เสียเวลาเปล่านะคะ เพราะฉะนั้น ควรจะมานั่งคุยกันแต่เริ่มต้นนะคะ อันนี้ไม่มีอะไร หลังจากนั้น พอออกแบบแล้วนี่ การเลือกโปรแกรมที่จะใช้ในการจัดการข้อมูลนี่ คนออกแบบก็ต้องดูด้วยว่า แต่ละโปรแกรมมันมีข้อจำกัดนะคะ ไม่ใช่ว่า ฉันรู้สึกฉันจำชื่อโปรแกรมนี้ได้ เลือกเลย เลือก เพราะจำชื่อได้มันไม่พอ มันจะต้องดูด้วยว่าไอ้ที่เราเลือกไปนี่ มันสามารถใช้งานได้ดี ระบบที่เราต้องการจะใช้หรือเปล่านะคะ เพราะว่าถ้าเราเลือกผิด แล้วเราเอามาใช้งานจริง ๆ นี่ มันไม่เวิร์กมันใช้งานไม่ได้นี่ งานเราถือว่าล้มเหลวเลยนะคะ เพราะว่าได้เริ่มทำงานแล้วข้อมูลเริ่มเก็บแล้วแล้วให้เริ่มใหม่นี่ เสียเวลามาก ๆ นะคะ เพราะฉะนั้น รัดกุมตั้งแต่ออกแบบเลยดีที่สุดนะคะ ทั้งการออกแบบทางตรรกะ ก็จะเกี่ยวกับการตัดสินใจในการเลือกใช้ฐานข้อมูลนะคะ ก็ข้อมูลของเรานี่ จะเก็บข้อมูลอย่างไร มีการเชื่อมโยงอะไรบ้าง ทำไมต้องเก็บข้อมูลแบบนี้นะคะ แล้วก็ถ้าจำเป็นจริง ๆ กระบวนการในการเลือกที่เก็บข้อมูลก็สำคัญ คุณจะเก็บข้อมูลอย่างไร เก็บในเครื่อง Server เครื่องเดียว หรือจะมีการสำรองไปไว้ที่อื่น มีการกระจายข้อมูลการเก็บ แต่ถ้าจำเป็น ก็คือสามารถเรียกใช้งานจากที่ไหนก็ได้นะคะ แล้วใครสามารถเรียกใช้งานได้บ้างนะคะ ผู้ใช้งานทั่วไปอาจจะได้แค่ดู ถ้าเป็นผู้ดูแลระบบ หรือระดับหัวหน้างานสามารถแก้ไขข้อมูลได้ด้วย อย่างนี้นะคะเป็นต้น อย่างเช่น อาจารย์นี่ ก็สามารถดูเกรดพวกคุณทุกคนเลยแก้ไขเกรดพม่ได้นะอาจารย์ดูได้อย่างเดียวนะคะ อันนี้ก็คือสิ่งที่เราออกแบบได้คนที่แก้ไขได้คืออะไร เป็นเจ้าหน้าที่สำนักทะเบียน ถ้าสมมติว่ามันมีข้อผิดพลาดก็สามารถท้วงติงได้ แล้วเจ้าหน้าที่เท่านั้นนะคะ ที่จะเข้าไปปรับปรุงข้อมูลได้ อาจารย์ทำให้ไม่ได้นะคะ อันนี้ก็เป็นตัวอย่างนะคะ หลังจากนั้น พอเราวิเคราะห์ทุกอย่างเรียบร้อย รัดกุมดีแล้ว เราก็ลงมือสร้างฐานข้อมูลนะคะ เอาโครงร่างที่ได้จากการออกแบบของเรานี่ สร้างฐานข้อมูลขึ้นมาเพื่อเก็บข้อมูลจริงนะคะ หรืออาจจะมีการแปลงข้อมูลในระบบเดิม ให้เข้ากับระบบใหม่ที่เราพัฒนาขึ้นมาก็ได้นะคะ ในข้อมูลเดิมนี่ อาจจะเก็บข้อมูล ไม่ได้เก็บในระบบจัดการฐานข้อมูลอะไรหรอ เก็บไว้ใน Excel นะคะ แต่ถามว่าระบบจัดการฐานข้อมูลในปัจจุบันนี่ มันสามารถนำเข้าข้อมูลที่เป็น Excel เข้าสู่ระบบจัดการฐานข้อมูลได้แล้วนะคะ อันนี้ก็เป็นความสามารถของระบบที่เราเลือกตั้งแต่แรก ว่าไอ้โปรแกรมที่เราจะใช้งานนี่ มันมีฟังก์ชันนี้ไหม ถามว่าเพื่ออะไร เกิดมันเป็นระบบที่ส่งข้อมูลเดิมเราอยู่ที่ Excel ทั้งหมดเลย เป็นหมื่นเป็นแสนข้อมูล แต่ว่าระบบที่เราเลือกใช้นี่ มันเอานำเข้าข้อมูลจาก Excel เข้ามาไม่ได้นี่ แล้วมันจะดีกว่าระบบเดิมอย่างไรนะคะ ในเมื่อมันทำให้มันไม่ได้ทำให้เราทำงานง่ายขึ้นนะคะ หลังจากนั้นนี่ พอมีการพัฒนาฐานข้อมูลหรือปรับปรุงฐานข้อมูลขึ้นมาแล้วนะคะ มันก็จะเป็นขั้นตอนของการติดตั้งระบบนะคะ มันก็ขึ้นอยู่กับว่าเราใช้ระบบจัดการฐานข้อมูลอะไรนะคะ มีใครเป็นผู้จัดการฐานข้อมูล หรือว่าเป็น Admin นั่นแหละ จำนวนพื้นที่จัดเก็บข้อมูลที่ต้องการใช้ มีขนาดมากน้อยมากขนาดไหน ตารางที่อยู่ในระบบมีกี่ตาราง มีตารางอะไรบ้างนะคะ อันนี้คือการติดตั้ง ใช้จริง เดี๋ยวพอเราสอบมิดเทอมเสร็จนะคะ ช่วงหลังปีใหม่ อาจารย์จะเริ่มพาทำภาษาที่ใช้ในการจัดการฐานข้อมูลอย่างง่าย ๆ นะคะ พาทำ พิมพ์เอง ลองดูสิว่าวิธีการเรียกใช้ฐานข้อมูลอย่างง่าย ๆ มันเป็นอย่างไรนะคะ พอเราติดตั้งเสร็จปุ๊บ มันก็จะต้องมีการทดสอบหาข้อผิดพลาดนะคะ ทั้งหาข้อผิดพลาด ทั้งประเมินความสามารถของระบบที่เราเอามาใช้นะคะ เพื่อดูสิว่ามารองรับความต้องการของเราจริง ๆ หรือเปล่า ถูกต้องไหม ครบถ้วนดีไหมนะคะ ถ้ามันไม่ครบ เราจะทำอย่างไร หรือบางอย่างมันไม่จำเป็นนี่ เราอาจจะไม่จำเป็นให้ User ใช้งานก็ได้ อาจจะเป็นเฉพาะผู้ดูแลระบบใช้งานฟังก์ชันนั้นคนเดียวก็พอ อะไรอย่างนี้นะคะ ก็การทำงานเหล่านี้ จะต้องเตรียมคู่มือ เตรียมข้อมูลทดสอบไว้ล่วงหน้าด้วยนะคะ เวลาทอดสมมุติว่าเราจบไปนี่ เราพัฒนาโปรแกรมใด ๆ ขึ้นมาก็ตาม เราจะต้องทำคู่มือการใช้งานด้วยนะคะ ไม่อย่างนั้น คนมาใช้งานระบบเราไม่เข้าใจ งง ว่าทำไมคุณตั้งชื่อตารางแบบนี้ล่ะ ทำไมตั้งชื่อคอลัมน์แบบนี้ ไอ้ตัวนี้แปลว่าอะไร แล้วจะกดตัวไหน เพื่อบันทึกข้อมูลนะคะ หรือถ้าต้องการแก้ไขข้อมูล ต้องกดตรงไหนนะคะ เราต้องเตรียมข้อมูลไว้ให้เขาด้วย เพื่อใช้ในการทดสอบนะคะ หรืออาจจะเป็นตัวอย่างข้อมูล เพื่อลองพิมพ์เข้าไปในระบบดูสิ ว่ามันสามารถบันทึกได้ไหมนะคะ ถูกต้องหรือเปล่า กับสิ่งที่เราต้องการให้มันเป็น ไม่ใช่ว่าอาจารย์พิมพ์ข้อมูลเข้าไปเยอะมาก สรุป เรียกดูข้อมูลไม่ได้ มันก็ไม่มีประโยชน์นะคะ มันก็ต้องมีการทดสอบก่อน พอทดสอบแล้วเป็นที่น่าพอใจ เราก็เอาไปติดตั้งใช้งานจริง แต่พอติดตั้งแล้ว มันก็ยังต้องมีการประเมินผลเหมือนกันนะคะ ว่าพอเราติดตั้งไปใช้จริงแล้ว มันให้การทำงานที่ดี เหมือนตอนที่ทดสอบหรือเปล่า หรือพอตอนทดสอบใช้งานได้ แต่พอไปทำงานจริง ข้อมูลเข้ามาทีละหมื่นละแสนข้อมูลต่อวัน สรุป ระบบรับไม่ได้ ไม่ทันนะคะ ถอดความก็เจ๊ง รอล่ามแป๊บหนึ่ง โอเคต่อค่ะ หลังจากนั้นนะคะ ถ้าเราทำงานไปแล้วนี่ ก็เหมือนที่บอกนะคะ ก็ต้องมีการบำรุงรักษา การปรับปรุง พอทำงานไปแล้วนี่ แอดมินนะคะ หรือว่าผู้จัดการฐานข้อมูลหนี้เขาจะต้องมีการเตรียมตัวฐานข้อมูลไม่ใช่ว่าใช้ไปแล้วก็ไม่ได้กลับมาดูเลย ทั้งต้องป้องกันระบบด้วยว่า ถ้าสมมติว่ามีปัญหาเกิดขึ้น เรามีการสำรองข้อมูลไว้หรือเปล่าแล้วตารางในการสำรองข้อมูลนี่ จัดทำไว้บ่อยขนาดไหน แล้วแต่ระบบนะคะ บางคนถ้าเป็นระบบที่สำคัญมาก ๆ เขาจะต้องสำรองข้อมูลทุกวัน หรือถ้าระบบมีปัญหานะคะ ข้อมูลที่สำรองไว้สามารถกู้คืนได้ภายในระยะเวลาเท่าไรนะคะ เหมือนว่าสมมติวันนี้อาจจะมีภัยธรรมชาตินะคะ เป็นธนาคารแห่งหนึ่ง สำนักงานใหญ่ ภัยธรรมชาติ ถ้าสมมติว่าข้อมูลเขาหาย มันเป็นไปไม่ได้เลยนะคะ เงินลูกค้าไม่รู้จะกี่บาท จะบอกว่าไม่รู้ค่ะ ว่าคุณมีเงินเท่าไร เพราะเมื่อคืนมีภัยธรรมชาติ ข้อมูลหาย คำตอบนี้จะต้องไม่เกิดขึ้นนะคะ ข้อมูลทุกอย่างจะต้องเกิดขึ้นมาใช้ อันนี้อย่างเช่นองค์กรใหญ่ ๆ เขาจะมีการซ้อมเลยนะคะ ซ้อมสำรองข้อมูลแล้วคุณสามารถกู้คืนข้อมูลคืนมาได้เร็วที่สุดเท่าไร บางคนซ้อมทุก ๆ 1 เดือนเลยด้วยซ้ำ ข้อมูลบางอย่างมันสำคัญมาก ๆ ถึงว่าถ้าระบบเราใช้ไปนี่มันมีแต่รังไหมหรืออาจจะมีคอลัมน์เพิ่มเติมที่เพิ่มเข้ามาสามารถทำได้หรือเปล่า สิ่งเหล่านี้ก็ถือว่าเป็นการรักษา ปรับปรุงฐานข้อมูลเช่นเดียวกัน โดยที่หัวข้อที่ 2 หัวข้อที่ หัวข้อที่ 3 สิ เป็นการแปลงแผนภาพ ER รูปภาพที่เราเคยวาดนี่ให้มาเป็นรีเลชั่นหรือว่าให้มาเป็นตารางนี่มันเป็นอะไรที่ง่ายมากเพราะมันจะเริ่มจากชื่อตารางก่อนก็คือชื่อ Entity นะคะ โดยตารางใด ๆ นะคะ หรือรูปภาพใด ๆ มันสามารถเอามาแปลงเป็นตารางได้ 1 ตารางทันทีนะคะ ตารางคืออะไร หัวข้อตารางเหมือนที่เราเคยทำไปแล้วหัวข้อตาราง คือ จะเป็นสี่เหลี่ยมผืนผ้าแบบนี้ใช่ไหม แล้วก็ ER จำได้นะมันเป็นรูปแบบนี้นะ แล้วก็มีวงรี วงรี วงรีแบบนี้ เราเคยวาดไปแล้วนะคะ วาดไปแล้วนะคะ วาดไปแล้ว ว่า เอ๊ะ อันนี้น่าจะจำได้ว่า er คืออะไร ทำไมอาจารย์พูดถึง โดยนะคะ การแปลงนะคะ จากตารางเอนทิตีปกตินะคะ ชื่อตารางกับชื่อเอนทิตี คือ ตัวเดียวกัน ชื่อคอลัมน์ ก็คือชื่อแอตทริบิวต์นั่นเอง โดยอันนี้คือ 1 ตาราง มองเป็น 1 ตาราง เช่น ตัวอย่าง อันนี้ส่วนบนตรงนี้ เราเคยวาดไปแล้วใช่ไหมคะ อะไรคือชื่อตาราง ชื่อตารางมาจากชื่อในกรอบสี่เหลี่ยมผืนผ้าตัวนี้ แค่นั้นเองคุณก็เอาชื่อตรงนี้เขาบอกว่าเป็นชื่อตาราง student นะ ชื่อตารางนักเรียนนะนะคะ แล้วในตารางนักเรียนเก็บข้อมูลอะไรบ้าง เราก็เอาข้อมูลที่อยู่ในวงรีทุกอันนี้ค่ะ มาใส่เป็นคอลัมน์ตาราง แค่นั้นเองออกข้อสอบ คือ ทำง่ายมาก ถ้าจำได้ แต่ในตาราง อย่าลืมนะคะ ในรูปมีขีดเส้นใต้ ตารางก็ต้องขีดเส้นใต้ พอเอาตารางมาเขียนเป็นความสัมพันธ์ เราก็จะเอากรอบออกนะคะ เอากรอบออก โดยชื่อตารางจะอยู่หน้าสุดนะคะ หลังจากนั้น คอลัมน์ในตารางทั้งหมดจะอยู่ในวงเล็บนะคะ อันไหนที่เป็นคีย์หลักที่ขีดเส้นใต้ อย่าลืมขี่ด้วยนะคะ อย่าลืมขีดด้วยนะ แค่นี้เอง ในการแปลงรูปภาพให้มันเป็นความสัมพันธ์ ถ้าใครยังไม่แม่น คุณทำเป็นตารางก่อนก็ได้ แต่ความจริงแล้วดูจากรูปนี่ เราก็เอามาเขียนแบบนี้ได้เลย ง่ายมากนะคะ ซึ่งในหนังสือบางเล่ม ไอ้ตัวงานออกแบบนี่ เขาอาจจะเป็นรูปภาพเขา อาจจะเขียนเป็นความสัมพันธ์แค่บรรทัดเดียวแบบนี้ ความหมายเดียวกันนะคะ อยู่ที่ว่าเขาจะอยากนำเสนอในรูปแบบอะไร หรือว่าออกมาเป็นภาพให้เห็นง่าย ๆ แล้วแต่เลยนะคะ ตารางนี้ก็เหมือนกัน หลักการทำงานเดียวกันค่ะ อะไรที่อยู่ในกรอบตัวนี้ ก็คือชื่อตาราง เอาไว้ข้างหน้า หลังจากนั้นสิ่งที่อยู่ใน Attribute ก็คือเป็นรูปวงรีตัวนี้ก็มาใส่ในวงเล็บแค่นั้นเองส่วนมากเวลาสอบนักศึกษาจะจำไม่ได้ นะคะ ว่ามาทำอย่างไรที่มันง่ายมากซึ่งอาทิตย์หน้าสอบอาทิตย์หน้าสอบนะคะ เดี๋ยวอาจารย์จะนัดอีกที ว่าสอบน่าจะสอบถึงวันนี้นะคะ ข้อสอบที่จะออกตั้งแต่วันแรกจนถึงวันนี้เลยนะคะ ซึ่งรูปนี่ ออกสอบแน่ ๆ จำให้ได้นะคะ เพราะมันง่ายมาก แต่ถ้ารูปนั้นนะคะ แผนภาพนั้นนี่ มันมีส่วนของตารางอ่อนแอนะคะ ก็คือ Weak Entity สัญลักษณ์ของ Weak Entity ก็คือเป็นสี่เหลี่ยมซ้อนกัน 2 วงหลักการคือถ้ามันเป็นส่วนของค่าความอ่อนแอนี่เราจะเอาที่หลักความสัมพันธ์หนึ่งที่มีความสัมพันธ์ด้วยนะใสนะคะ เช่น รูปนี้เห็นไหมคะ ว่ามันจะมีสี่เหลี่ยมซ้อนกัน 2 อันข้างล่าง ถ้าสมมุติว่าเราจะมาแปลงเป็นความสัมพันธ์ อันนี้คือคีย์หลักของตารางที่มีค่าอ่อนแอ หลักการ คือ ให้เอาคีย์หลักของอีกตารางหนึ่ง ที่มันมีความสัมพันธ์ด้วย มาใส่นะคะ ผลลัพธ์ที่ได้จากตารางอ่อนแอตอนนี้ สังเกตไหมว่าจริง ๆ แล้วมันจะมีแค่ 2 SCBข้อมูลเกี่ยวกับผู้ปกครองนักเรียนนะคะ ข้อมูลผู้ปกครองนักเรียนถ้าเรามาแปลงเป็นความเป็นตารางเราจะต้องเอาส่วนของรหัสนักเรียนมาด้วย เวลาเขียน ก็เพิ่มนะคะ คีย์หลักของตารางที่ผ่านมา ก็คือมีรหัสนักเรียนเข้ามาเพิ่มแค่นั้นเอง อันนี้คือสำหรับตารางที่มีความอ่อนแอ ก็คือการต้องไปพึ่งค่าตารางอื่นนั่นเองนะคะ อันนี้ก็ไม่ยาก จำได้นะคะ อยากเลยต่อมาการแปลแผนภาพไม่เป็นความสัมพันธ์มันจะมีอยู่ 3 รูปแบบนะคะ แบบหนึ่งต่อหนึ่ง แบบหนึ่งต่อกลุ่ม กับแบบกลุ่มต่อกลุ่ม อันนี้เขาเรารู้อยู่แล้ว อันนี้เราเคยเรียนมาแล้ว โดยการแทนความสัมพันธ์แบบหนึ่งต่อหนึ่งนี่นะคะ ก็คือชื่อของตารางนี่ เรารู้อยู่แล้วใช่ไหมคะ ก็จะมาตั้ง แล้วความสัมพันธ์ก็วาดง่าย ๆ นะคะ โดยการเพิ่มคีย์หลัก คีย์หลัก ก็คือตัวที่มันขีดเส้นใต้นะคะ ของอีกตารางหนึ่งที่มีความสัมพันธ์กันมาใส่ เพื่อให้มันสามารถเชื่อมโยงกันได้ อันนี้คือง่ายมากจากรูปนะคะ คีย์หลัก ก็คือตัวขีดเส้นใต้ของนักเรียน ตารางนี้นะคะ ของบัณฑิตเพลงบัณฑิตที่จบการศึกษาก็จะมีรหัสนักศึกษาเขาทำวิทยานิพนธ์เรื่องอะไรนะคะ ก็จะมีรหัสวิทยานิพนธ์โดยตารางนี้นะคะ มันมีความสัมพันธ์แบบหนึ่งต่อหนึ่ง มีเลข 1 กำกับ ถ้าแบบหนึ่งต่อหนึ่ง จะต้องเอาคีย์หลักนะคะ เลือกตารางใดทางหนึ่งก็พอนะคะ มาใส่ สิ่งที่จะเกิดขึ้นก็ คือ สมมุติว่าเราจะเลือกคีย์นะคะ อย่างตัวนี้ สมมติอาจารย์จะเอาคีย์หลักของตารางวิทยานิพนธ์ ไปใส่ให้กับตารางนักเรียนก็ได้นะคะ ก็ได้ หรือเอารหัสนักศึกษา มาใส่ในตารางวิทยานิพนธ์ก็ได้ อันนี้เฉพาะความสัมพันธ์แบบหนึ่งต่อหนึ่งเท่านั้นนะคะ ที่เลือกตัวใดตัวหนึ่งก็ได้นะคะ ที่มีความสัมพันธ์กัน แต่ถ้าเป็นความสัมพันธ์แบบหนึ่งต่อกลุ่มนะคะ หนึ่งต่อกลุ่มนะคะ เราจะเอาคีย์หลัก ก็คือตัวขีดเส้นใต้จากฝั่งที่มีความสัมพันธ์เป็นหนึ่งเท่านั้น ไปใส่ในฝั่งที่มีความสัมพันธ์เป็นกลุ่มอย่างเช่น รูปนี้นะคะ รูปนี้นะ ความสัมพันธ์เป็นหนึ่ง จะอยู่ฝั่งนี้นะคะ อันนี้ ความสัมพันธ์เป็นกลุ่ม แทนด้วยตัว M นะคะ เราจะเอาตัวขีดเส้นใต้ ก็คือคีย์หลักของตารางที่มีความสัมพันธ์เป็นหนึ่งเท่านั้น ไปเพิ่มลงในตารางที่มีความสัมพันธ์เป็นกลุ่มนะคะ นั่นก็คือ เห็นไหมคะ ฝั่งนี้ ความสัมพันธ์เป็นกลุ่มใช่ไหมคะ ตัวคีย์หลัก คือ ตัวขีดเส้นใต้เขามีตัวนี้ตัวเดียว เราก็จะเอาของตารางอีกครั้งหนึ่ง มาเพิ่มให้ ซึ่งตารางนี้มีความสัมพันธ์เป็นหนึ่งมาเพิ่มให้ อันนี้คือความสัมพันธ์แบบหนึ่งต่อกลุ่มนะคะ อันนี้ก็ยังไม่ยาก แต่ถ้าเป็นความสัมพันธ์แบบกลุ่มต่อกลุ่มนะคะ โดยความสัมพันธ์นี่ บางทีมันอาจจะมีข้อมูลที่เกิดขึ้นของมันเองนะคะ ข้อมูลที่เกิดขึ้น ซึ่งวิธีการแก้ปัญหา ปัญหามันจะอยู่ตรงนี้ ตรงที่อาจารย์กรอบสีแดง นี่ ในความสัมพันธ์ของกลุ่มต่อกลุ่มนี่ มันอาจจะมีข้อมูลที่เพิ่มเติมขึ้นมานะคะ ในกรณีนี้นะคะ เราก็จะสร้างความสัมพันธ์ขึ้นมาใหม่เลยนะคะ โดยวิธีการ คือ เอาคีย์หลักของทั้ง 2 ความสัมพันธ์ มาสร้างใหม่ ให้กับความสัมพันธ์ตรงนี้นะคะ เอา 2 อันนี้มาใส่เพิ่ม ทั้งสองฝั่งเลย นะะค เอาจากตาราง 2 ตารางนี่ มาเพิ่มให้กับความสัมพันธ์ใหม่เลยนะคะ ก็จะกลายเป็นแบบนี้ค่ะ อันนี้ คือ ตารางที่เกิดขึ้นใหม่ สำหรับความสัมพันธ์แบบกลุ่มต่อกลุ่มนะคะ มันจะเอาข้อมูลรหัสนักเรียน แล้วก็รหัสตารางเรียน วิชามา เพิ่มจากทั้งสองฝั่งเลย เมื่อก่อนคือเราต้องเลือกจากฝั่งใดฝั่งหนึ่งเท่านั้นนะคะ ถ้าเป็นความสัมพันธ์แบบหนึ่งต่อหนึ่ง ถ้าเป็นความสัมพันธ์แบบหนึ่งต่อกลุ่มเราจะเอามาจาก เราจะเอาคีย์หลักมาจากฝั่งหนึ่งเท่านั้น แต่ถ้าเป็นกลุ่มต่อกลุ่มเราจะเอาทีหลังทั้ง 2 ตารางที่มีความสัมพันธ์กันมาสร้างตารางใหม่ อันนี้คือจุดเด่นของแต่ละการแปลงตารางให้มาเป็นความสัมพันธ์นะคะ วิธีการทำเรารู้แล้ว เดี๋ยวจะให้ลองทำเองสัก 1 ข้อนะคะ ในห้อง เดี๋ยวอาจารย์จะเดินดูนะคะ ทำเลย ทำเองนะคะ เอาแค่ 1 รูป รูปนี้ก็พอ ในรูปนี้มีกี่ตาราง มี 1 ตาราง 2 ตาราง 3 ตาราง ซึ่งในความสัมพันธ์ของรูปนี้ มีความสัมพันธ์แบบหนึ่งต่อกลุ่ม กับแบบกลุ่มต่อกลุ่ม ลองดูสิว่าจะทำได้ไหมนะคะ ความสัมพันธ์ที่เกิดขึ้น จะมีอยู่ 2 ความสัมพันธ์ นะ ลองดูสิว่า จากตัวอย่างที่อาจารย์ให้ เข้าใจหรือเปล่า เอาอย่างแรกเลย แปลง er ให้เป็นตารางให้ได้ก่อน ลองดูสิ ว่าจำได้ไหมที่อาจารย์สอน พอคุณแปลงตารางได้ปุ๊บ คุณถึงได้มาเชื่อมโยงความสัมพันธ์ดูว่าแต่ละตารางที่คุณทำออกมาได้นี่ มันเชื่อมโยงกับตารางอื่นนี่เป็นอย่างไรนะคะ ขั้นตอนแรก เปลี่ยนจากรูปภาพให้เป็นตาราง พอเป็นตารางได้ ค่อยมาดูความสัมพันธ์นะคะ ลองทำดู ทำเองนะคะ ทำเอง เดี๋ยวอาจารย์จะเดินดู กระดาษมีอยู่แล้ว นะ โอเคค่ะ ทำเลย ล่ามคะ วันนี้ก็ประมาณนี้ล่ะค่ะ เนื้อหาจะมีแค่นี้ เดี๋ยวจะให้ทำงานห้อง วันนี้ขอบคุณมากนะคะ ขอบคุณมากค่ะ ขอบคุณค่ะ