(อาจารย์) ล่ามได้ยินไหมคะ โอเคค่ะ อย่างนั้นเดี๋ยววันนี้เริ่มเลยนะคะ วันนี้เนื้อหาไม่เยอะนะคะ เพราะเดี๋ยวท้าย ๆ ชั่วโมงจะให้ทำงานในห้อง ถอดความต้องมีไหม ไม่เป็นไร อย่างนั้นสอนเลยนะ วันนี้หัวข้อนะคะ หลัก ๆ จะมีอยู่ 3 เรื่องนะคะ ก็จะมีเกี่ยวกับวัฏจักรการพัฒนาระบบนะคะ ตัวย่อก็คือ SDLC นะคะ กับพอเราเอามาประยุกต์ใช้กับงานฐานข้อมูลนะคะ มันก็จะเป็นวัฏจักรการพัฒนาระบบ จัดการฐานข้อมูลก็คือ DBLC รวมถึงจากที่เราเรียนเมื่อหลาย ๆ สัปดาห์ก่อนนะคะ เราจะเอารูปที่เราเคยวาดไว้นี่นะคะ คือ ER รูป ER นะคะ แปลงกลับมาให้เป็นในรูปแบบของความสัมพันธ์หรือว่าแปลงกลับให้มาเป็นในรูปแบบของตาราง จะทำอย่างไรนะคะ เดี๋ยววันนี้เราจะมาเรียนกัน 3 หัวข้อแค่นี้นะคะ วัฏจักรการพัฒนาระบบนะคะ ตัวย่อมันก็คือ SDLC มันมาจากภาษาอังกฤษก็คือ System Development Life Cycle นั่นเองนะคะ จะเป็นการพัฒนาระบบมาจาก สิ่งที่เราได้มา อาจจะเป็นระบบสารสนเทศต่าง ๆ นะคะ เอามารวมกัน อันนี้เป็นพื้นฐานก่อนนะคะ ว่าทำไมเราถึงจะต้องมาพัฒนาระบบจัดการฐานข้อมูล ซึ่งมันจะเป็นระบบที่ปรับปรุง นะคะ มาจากวัฏจักรการพัฒนาระบบนั่นแหละนะคะ โดยการพัฒนาระบบนี่ เราจะมีอยู่ 5 ระยะ อันนี้คือเป็นมาตรฐาน สมมุติเราเรียนไปนี่แล้วเราจะเขียนโปรแกรมขึ้นมาสักงาน 1 นี่ หรือเราถูกจ้างให้เขียนโปรแกรมให้นะคะ หรือเราต้องการจะไปจ้าง หรือเราต้องการจะพัฒนาระบบเองก็ได้นะคะ ขั้นตอนมาตรฐานของการพัฒนาระบบจะมีอยู่ 5 ระยะนะคะ ระยะแรกเราต้องวางแผนก่อนว่า เราจะพัฒนาระบบอะไรนะคะ ทำไมต้องทำ มันมีความจำเป็นกับการทำงานของเราไหม หรืออย่างไรนะคะ หลังจากนั้นมาวิเคราะห์ว่าไอ้ที่เราวางแผนไปนี่ มันครอบคลุมแล้วหรือยังนะคะ กับการทำงานที่เราต้องการ หรือผลลัพธ์ที่เราต้องการนี่ จากที่เราวางแผนไว้นี่ มันครบหรือเปล่านะคะ เราก็จะมาเช็ก หลังจากนั้นพอเราวิเคราะห์ความถูกต้องทุกอย่างแล้วมันครบทุกรายละเอียดที่เราต้องการ เราก็มาออกแบบรายละเอียดของระบบว่าระบบนี้ มันจะต้องมีส่วนประกอบอะไรบ้าง ใครสามารถใช้งานระบบนี้ได้บ้างนะคะ แต่ละคนใช้งาน การเข้าถึงข้อมูลนี่มากน้อยต่างกันขนาดไหนนะคะ อันนี้เป็นพื้นฐานเบื้องต้น หรือในระบบของเราต้องการจะเก็บข้อมูลอะไรบ้างนะคะ ต้องมากรอกรายละเอียดหรือเขียนรายละเอียดทั้งระบบนะคะ มาดูว่ามันครบหรือยังนะคะ ส่วนนี้ก็จะต้องมีการตรวจสอบด้วยว่าสิ่งที่เราวางแผนเราวิเคราะห์และการออกแบบนี่ มันสามารถเกิดขึ้นได้จริงไหมนะคะ หลังจากนั้นพอวิเคราะห์แล้วว่ามันสามารถเกิดขึ้นได้ เราก็ไปดำเนินการพัฒนาระบบขึ้นมานะคะ ในช่วงนี้ ก็จะเป็นการพัฒนานะคะ แต่บางคนก็คือพัฒนาไปด้วยทดสอบไปด้วยว่าระบบนี้มันใช้งานได้จริงแล้วเป็นอย่างไร หรือมันมีข้อผิดพลาดตรงไหน ก็ดำเนินงานแก้ไขทั้งสร้างใหม่ไปเรื่อย ๆ แล้วก็ปรับปรุงสิ่งที่ทำไปแล้วให้มันสมบูรณ์ที่สุด หลังจากนั้น เราก็จะได้ระบบมา แต่พอได้มาแล้ว มันก็ยังต้องมีในส่วนของการบำรุงรักษานะคะว่ามันยังทำงานได้ดีไหม มีข้อผิดพลาดในการทำงานหรือเปล่า อาจจะใส่ข้อมูลราคาสินค้าไป แต่ภาษีผิด ภาษีประเทศไทยคือ 7 เปอร์เซ็นต์ แต่บังเอิญว่าเราพิมพ์ผิด ไปพิมพ์เป็นเลข 4 อย่างนี้ ผลการคำนวณมันเลยผิด อันนี้ก็ต้องไปแก้ไขนะคะ ก็เป็นส่วนของการบำรุงรักษา หรือว่ามีข้อมูลที่เราต้องการจะเพิ่ม อย่างเช่น ปกติเราเก็บแต่เบอร์โทรศัพท์มือถือนะคะ เราอยากได้เบอร์โทรศัพท์บ้านด้วย ก็อยู่ในส่วนของการบำรุงรักษาค่ะ เพราะว่ามันจะเป็นการที่แก้ไขในตัวระบบ ปรับปรุงระบบนั่นเองนะคะ ว่าให้เพิ่มเบอร์โทรศัพท์บ้านเข้าไปด้วยอย่างนี้นะคะ ซึ่งจากวัฏจักรการพัฒนาระบบนี่ เราเลยเอามาเป็นตัวตั้งต้นสำหรับการพัฒนาระบบจัดการฐานข้อมูล แต่มันจะมีบางส่วนที่เพิ่มเติมขึ้นมานะคะ ก็คือในส่วนของการทดสอบแล้วก็ประเมินผลนะคะ เมื่อกี้การพัฒนาระบบนี่ เราจะมีอยู่ 5 ขั้นตอน แต่ถ้าเป็นการพัฒนาระบบจัดการฐานข้อมูลหรือพัฒนาฐานข้อมูลนี่ เราจะมีอยู่ 6 ขั้นตอนนะคะ ซึ่งมันก็จัดใกล้ ๆ เคียงกันแหละนะคะ โดยเริ่มต้นของการสร้างฐานข้อมูลขึ้นมานี่ เราต้องมีการศึกษาเบื้องต้นก่อนว่า ข้อมูลที่เราต้องการจะเก็บ เราจะเก็บอะไร เก็บไปทำไม เก็บมาจากไหนนะคะ แล้วจะเรียกดูข้อมูลทำอย่างไรนะคะ อันนี้เป็นการศึกษาเบื้องต้นก่อนว่า เอ๊ะ ที่เราจะทำนี่ มันทำได้ไหม ทำได้จริงหรือเปล่า ข้อมูลคืออะไรนะคะ หลังจากนั้น เราก็เอาสิ่งที่เราศึกษาเบื้องต้นนี่ มาออกแบบฐานข้อมูลเหมือนที่เราวาดไปนั่นล่ะค่ะ ที่เราวาดรูป ER ไป ก็คือเริ่มออกแบบแล้ว ว่าเอ๊ะ เหมือนตัวอย่างที่อาจารย์ยกให้คือ ร้านหนังสือ 1 ร้าน จะเก็บข้อมูลอะไรบ้างนะคะ อันนี้คือเริ่มออกแบบแล้วนะคะ พอออกแบบได้ปึ๊บ ตรวจสอบข้อมูลครบทุกอย่างนะคะ เราก็จะมาดำเนินการสร้างฐานข้อมูลเพื่อไปติดตั้งในระบบที่เรามีไว้อยู่แล้วนะคะ หรือถ้ายังไม่มี ก็สร้างขึ้นมานะคะ เพื่อใช้กับฐานข้อมูลที่เรากำลังจัดทำเช่นเดียวกันนะคะ พอสร้างฐานข้อมูลเสร็จ เอาไปติดตั้งในระบบแล้ว เราก็ต้องมีการทดสอบ แล้วก็ประเมินผลว่า ฐานข้อมูลที่เราสร้างมา มันใช้งานได้ดีกับระบบที่มีอยู่หรือไม่นะคะ ถ้ามันไม่ดี มันไม่ดีตรงไหน มีตรงไหนต้องแก้ไขหรือเปล่านะคะ หรือใส่ฐานข้อมูลแล้วแต่เรียกข้อมูลขึ้นมาไม่ได้ เราก็ต้องแก้ปัญหานะคะ ว่าทำไมมันไม่ได้ เหมือน ถ้าใครเคยใช้ Excel เบอร์โทรศัพท์นำหน้าของเราจะเป็นเลข 0 ใช่ไหมคะ แต่เหมือน Excel เหมือนกัน ถ้าเราไม่เปลี่ยนชนิดของข้อมูล เลข 0 เราจะหายไปนะคะ ทำไม อันนี้ก็เป็นข้อหนึ่งที่เราจะต้องกำหนดรูปแบบของข้อมูลในฐานข้อมูลของเราด้วยนะคะว่าให้คอลัมน์นี้เป็นเบอร์โทรศัพท์นะ ไม่ใช่จำนวนเลขจำนวนจริงใด ๆ นะคะ หลังจากนั้นพอเราทดสอบประเมินผลเป็นที่พอใจแล้ว เราก็เอาระบบที่ได้ที่มีการผสานกับฐานข้อมูลนี่ เอาไปใช้งานจริงนะคะ พอใช้งานจริง ทุกระบบที่เกี่ยวกับคอมพิวเตอร์จะต้องมีการบำรุงรักษา หรือปรับปรุงเปลี่ยนแปลงข้อมูลใด ๆ ก็ตามก็ต้องมีเหมือนกันนะคะ อันนี้ก็จะคล้าย ๆ กับการพัฒนาระบบนะคะ สำหรับการพัฒนาฐานข้อมูล แต่เดี๋ยวจะอธิบายโดยละเอียดก็คือ ในการศึกษาเบื้องต้นนี่ มันก็อย่างที่อาจารย์บอกตอนแรก ก็ต้องดูว่าผู้ใช้งานต้องการอะไร ฐานข้อมูลเขาอยากได้ เอาเพื่อไปทำอะไร หรือมีปัญหาอะไรเกิดขึ้น เขาถึงต้องการระบบฐานข้อมูลนะคะ หรืออาจจะเกี่ยวกับการเก็บข้อมูลให้เป็นระเบียบนะคะ ซึ่งการศึกษาเบื้องต้นนี่ มันจะเป็นแนวทางในการออกแบบต่อไป อย่างน้อยที่เราต้องวิเคราะห์คือ ในองค์กรเราต้องการเก็บข้อมูลขนาดไหนนะคะ ปัญหาที่เกิดขึ้นในปัจจุบันหรือข้อจำกัดก็คือตอนนี้ข้อมูลนี่เขียนลงในสมุดตลอดเลย หรือเก็บไว้ในคอมพิวเตอร์เครื่องเดียวนะคะ มันไม่สามารถทำงานร่วมกันได้หลาย ๆ คน จุดมุ่งหมายคือถ้าเรามีระบบฐานข้อมูลที่ดี คนทำงานช่วยกันจะได้เพิ่มขึ้นหรืออาจจะเป็นการเรียกดูข้อมูลได้สะดวกสบายขึ้นนะคะ ขอบเขตของงาน คือ คนที่สามารถเข้ามาดูข้อมูลได้มีใครบ้างเป็นต้นนะคะ อันนี้คือการศึกษาเบื้องต้นก่อน แล้วก็มาเช็กดูนะคะว่าข้อที่เราวิเคราะห์ไว้นี้มันครบหรือยัง ถ้าครบแล้วนะคะ ก็มาออกแบบนะคะ ซึ่งรายละเอียดก็จะเอามาจากขั้นตอนของการศึกษาข้อมูลเบื้องต้นนั่นแหละนะคะมาเป็นแนวทางในการออกแบบ 3 ระดับนะคะ ระดับแนวคิด ระดับภายใน แล้วก็ระดับภายนอก ระดับตรรกะอะไรพวกนี้นะคะ ที่เคยเรียนไปแล้วเมื่อบทต้น ๆ นะคะ โดยการออกแบบเชิงแนวคิดนี่ เราจะเป็นการพัฒนาแบบจำลองข้อมูลให้ถูกต้อง ต้องมีความละเอียด เข้าใจข้อมูลองค์กรเป็นอย่างดี สมมุติว่า ถ้าคุณเป็นโปรแกรมเมอร์ คุณก็ต้องรู้ว่าองค์กรของคุณทำอะไรนะคะ ข้อมูลมีอะไรบ้าง นะคะ อาจจะเป็นไปฝึกงาน แล้วเขาให้ลองออกแบบฐานข้อมูลเกี่ยวกับการจัดการพนักงาน เราก็ต้องรู้ว่า ข้อมูลพนักงาน 1 คน มีอะไรบ้างนะคะ แน่นอนเหมือนที่อาจารย์เคยสอน มีรหัสพนักงาน รหัสบัตรประชาชนใช่ไหมคะ มีชื่อ มีนามสกุล มีเบอร์โทรศัพท์ มีที่อยู่ปัจจุบัน ที่อยู่ตามทะเบียนบ้าน เรียนจบอะไรมา ตอนนี้ตำแหน่งอะไร เงินเดือนเท่าไร อันนี้คือข้อมูลเบื้องต้น แต่ถ้าเป็นบริษัทใหญ่ ๆ นี่ เขาก็จะถามข้อมูลละเอียดมากว่าที่บ้านทำงานอะไร พ่อแม่อยู่ไหน มีลูกหรือยัง เพราะว่าบางองค์กรมีสวัสดิการให้คนในครอบครัวด้วย อันนี้พวกคุณก็ต้องศึกษาด้วยนะ ถ้าคุณไปทำงานที่ไหนว่าแต่ละที่เขาอาจจะไม่ได้เก็บข้อมูลเหมือนกัน อาจจะมีเก็บข้อมูลไม่เยอะ หรืออาจจะเก็บข้อมูลนิดเดียวนะคะ ในฐานข้อมูลอาจจะเก็บรูปภาพพนักงาน รูปภาพต้องเป็นรูปภาพแบบไหน อันนี้ก็คือสิ่งที่เราต้องออกแบบนะคะ ไม่ใช่ว่าอยากทำอะไรก็ทำไม่ได้นะคะ ต้องดูความต้องการขององค์กรที่เราไปทำงานให้เขาด้วยนะคะ ตั้งแต่การออกแบบนี่ เราต้องกำหนดชนิดของข้อมูลที่จะเอาเข้ามาก็คือชนิดของคอลัมน์แต่ละคอลัมน์ที่เราจะต้องใส่นะคะ มีความสัมพันธ์เป็นอย่างไรบ้าง ตารางพนักงานจะต้องไปเชื่อมโยงกับตารางเงินเดือนไหมนะคะ ต้องเขียนให้ถูก เพราะตำแหน่งแต่ละตำแหน่งคนแต่ละคนเงินเดือนน่ะไม่เท่ากันนะคะ ในแต่ละตารางจะเก็บข้อมูลอะไรบ้างนะคะ ขอบเขตของข้อมูลในตารางนั้น ๆ ต้องกำหนดอย่างไร เหมือนที่อาจารย์ชอบยกตัวอย่างบ่อย ๆ เช่น รหัสบัตรประชาชน ต้องเป็นเลข 13 หลักเท่านั้น อย่างนี้นะคะ หรือรหัสไปรษณีย์ มันก็ควรจะมีแค่ 5 หลักเท่านั้น ไม่ควรเกิน ใช่ไหม อะไรที่เรารู้อยู่แล้วว่าขอบเขตมันเป็นอย่างไร เราก็สามารถกำหนดได้นะคะ เผื่อป้องกันความผิดพลาดด้วย บางคนพิมพ์รหัสไปรษณีย์ผิดใส่ 0 เกินไปอย่างนี้ มันก็ผิด ข้อมูลที่ได้มาก็จะผิดพลาด ในตาราง อะไรเป็นคีย์หลัก ก็คือค่าที่ห้ามซ้ำกันน่ะคืออะไรนะคะ มีการกำหนดความเป็นเอกลักษณ์ของตาราง เป็นตารางทั่วไป หรือตารางเฉพาะ อันนี้ถ้าจำเป็นต้องกำหนดนะคะ มีการเขียน ER Diagram ก็คือการวาดรูปที่เราเคยวาดไปนะคะ วาดรูป ER หลังจากนั้น ต้องมานั่งประชุมกันค่ะว่า สิ่งที่เราออกแบบ กับสิ่งที่ผู้ใช้งานต้องการ ตรงกันหรือเปล่า มีตรงไหนที่เข้าใจไม่ตรงกันไหม หรือมีอะไรที่เราออกแบบขาดไปหรือเปล่า หรือมันเกินความจำเป็น ตัดออกได้ไหมนะคะ อันนี้คือสิ่งที่ต้องมาคุยกัน ไม่ใช่ว่าเราคิดเองทั้งหมด แล้วเราทำเลย สรุป ไม่ตรงกันกับที่ผู้ใช้งานต้องการ อันนี้ก็ไม่ได้แล้ว เสียเวลาเปล่านะคะ เพราะฉะนั้น ควรจะมานั่งคุยกันตั้งแต่เริ่มต้นนะคะ อันนี้ไม่มีอะไร หลังจากนั้น พอออกแบบได้นี่ การเลือกโปรแกรมที่จะใช้ในการจัดการข้อมูลนี่ คนออกแบบ ก็ต้องดูด้วยว่า แต่ละโปรแกรมมันมีข้อจำกัดนะคะ ไม่ใช่ว่า โอ๊ย ฉันรู้สึกว่าฉันจำชื่อโปรแกรมนี้ได้ เลือกเลย เลือกเพราะแค่จำชื่อได้มันไม่พอ มันจะต้องดูด้วยว่า ไอ้ที่เราเลือกไปนี่ มันสามารถใช้งานได้ดีกับ ระบบที่เราต้องการจะใช้หรือเปล่านะคะ เพราะว่า ถ้าเราเลือกผิด แล้วเราเอามาใช้งานจริง ๆ นี่ มันไม่เวิร์กหรือมันใช้งานไม่ได้นี่ งานเราถือว่าล้มเหลวเลยนะคะ เพราะว่าถ้าได้เริ่มทำงานแล้ว ข้อมูลเริ่มเก็บแล้ว แล้วจะให้เริ่มใหม่นี่ เสียเวลามาก ๆ นะคะ เพราะฉะนั้น รัดกุมตั้งแต่ออกแบบเลยดีที่สุดนะคะ ทั้งการออกแบบทางตรรกะก็จะเกี่ยวข้องกับการตัดสินใจในการเลือกใช้ฐานข้อมูลนะคะ ก็ข้อมูลของเรานี่ จะเก็บข้อมูลอย่างไร มีการเชื่อมโยงอะไรบ้าง ทำไมต้องเก็บข้อมูลแบบนี้นะคะ แล้วก็ถ้าจำเป็นจริง ๆ กระบวนการในการเลือกที่เก็บข้อมูลก็สำคัญ คุณจะเก็บข้อมูลอย่างไร เก็บในเครื่องเซิร์ฟเวอร์เครื่องเดียว หรือจะมีการสำรองไปไว้ที่อื่น มีการกระจายข้อมูลกันเก็บ แต่ถ้าจำเป็นก็คือ สามารถเรียกใช้งานจากที่ไหนก็ได้นะคะ แล้วใครสามารถเรียกใช้งานได้บ้างนะคะ ผู้ใช้งานทั่วไปอาจจะได้แค่ดู แต่ถ้าเป็นผู้ดูแลระบบหรือระดับหัวหน้างาน สามารถแก้ไขข้อมูลได้ด้วยอย่างนี้นะคะ เป็นต้น อย่างเช่น อาจารย์นี่ก็สามารถดูเกรดนักศึกษาได้ทุกคนเลยนะคะ แต่อาจารย์เข้าไปแก้ไขเกรดให้พวกคุณไม่ได้นะ อาจารย์ดูได้อย่างเดียวนะคะ อันนี้ก็คือสิ่งที่เราออกแบบได้ คนที่แก้ไขได้คืออะไร ก็เป็นเจ้าหน้าที่สำนักทะเบียน ถ้าสมมุติวัน… ถ้าสมมุติว่ามันมีข้อผิดพลาดก็สามารถท้วงติงได้ แล้วเจ้าหน้าที่เท่านั้นนะคะ ที่จะเข้าไปปรับปรุงข้อมูลได้ อาจารย์ทำให้ไม่ได้นะคะ อันนี้ก็เป็นตัวอย่างนะคะ หลังจากนั้นพอเราวิเคราะห์ทุกอย่างเรียบร้อยรัดกุมดีแล้ว เราก็ลงมือสร้างฐานข้อมูลนะคะ เอาโครงร่างที่ได้จากการออกแบบของเรานี่ สร้างข้อมูล… สร้างฐานข้อมูลขึ้นมาเพื่อเก็บข้อมูลจริงนะคะ หรืออาจจะมีการแปลงข้อมูลในระบบเดิมให้เข้ากับระบบใหม่ที่เราพัฒนาขึ้นมาก็ได้นะคะ ในข้อมูลเดิมนี่ อาจจะเก็บข้อมูลไม่ได้เก็บในระบบจัดการฐานข้อมูลอะไรหรอก เก็บไว้ใน Excel นะคะ แต่ถามว่าระบบจัดการฐานข้อมูลปัจจุบันนี่ มันสามารถนำเข้าข้อมูลที่เป็น Excel เข้าสู่ระบบจัดการฐานข้อมูลได้แล้วนะคะ อันนี้ก็เป็นความสามารถของระบบที่เราเลือกตั้งแต่แรกว่า ไอ้โปรแกรมที่เราใช้งานนี่ มันมีฟังก์ชันนี้ไหม ถามว่าเพื่ออะไร เกิดมันเป็นระบบที่สมมุติข้อมูลเดิมเราอยู่ใน Excel ทั้งหมดเลย เป็นแบบเป็นหมื่นเป็นแสนข้อมูล แต่ว่าระบบที่เราเลือกใช้นี่ มันเอานำเข้าข้อมูลจาก Excel เข้ามาไม่ได้นี่ แล้วมันจะดีกว่าระบบเดิมอย่างไรนะคะ ในเมื่อมันไม่ได้ทำให้เราทำงานง่ายขึ้น นะคะ หลังจากนั้นนี่ พอมีการพัฒนาฐานข้อมูล หรือปรับปรุงฐานข้อมูลขึ้นมาแล้วนะคะ มันก็จะเป็นขั้นตอนของการติดตั้งระบบนะคะ มันก็ขึ้นอยู่กับว่า เราใช้ระบบจัดการฐานข้อมูลอะไรนะคะ มีใครเป็นผู้จัดการฐานข้อมูลหรือว่าเป็นแอดมินนั่นแหละ จำนวนพื้นที่จัดเก็บข้อมูลที่ต้องการใช้มีขนาดมากน้อยขนาดไหน ตารางต่าง ๆ ที่อยู่ในระบบมีกี่ตาราง มีตารางอะไรบ้างนะคะ อันนี้คือการติดตั้งใช้จริง เดี๋ยวพอเราสอบมิดเทอมเสร็จนะคะ ช่วงหลังปีใหม่ อาจารย์จะเริ่มพาทำภาษาที่ใช้ในการจัดการฐานข้อมูลอย่างง่าย ๆ นะคะ พาทำ พิมพ์เอง ลองดูสิว่า วิธีการเรียกใช้ฐานข้อมูลอย่างง่ายนี่มันเป็นอย่างไรนะคะ พอเราติดตั้งเสร็จปึ๊บ มันก็ต้องมีการทดสอบหาข้อผิดพลาดนะคะ ทั้งหาข้อผิดพลาด ทั้งประเมินความสามารถของระบบที่เราเอามาใช้นะคะ เพื่อดูสิว่ามันรองรับความต้องการของเราจริง ๆ หรือเปล่า ถูกต้องไหม ครบถ้วนดีไหมนะคะ ถ้ามันไม่ครบ เราจะทำอย่างไร หรือบางอย่างมันไม่จำเป็นนี่ เราอาจจะไม่จำเป็นให้ User ใช้งานก็ได้ อาจจะเป็นเฉพาะผู้ดูแลระบบใช้งานฟังก์ชันนั้นคนเดียวก็พอ อะไรอย่างนี้นะคะ ก็การทำงานเหล่านี้ จะต้องเตรียมคู่มือ เตรียมข้อมูล ทดสอบไว้ล่วงหน้าด้วยนะคะ เหมือนเวลาถ้าสมมุติว่า เราจบไปนี่ เราพัฒนาโปรแกรมใด ๆ ขึ้นมาก็ตาม เราจะต้องทำคู่มือการใช้งานด้วยนะคะ ไม่อย่างนั้น คนมาใช้งานระบบเรา ไม่เข้าใจ งง ว่าเอ้า ทำไมคุณตั้งชื่อตารางแบบนี้ล่ะ ทำไมตั้งชื่อคอลัมน์แบบนี้ ไอ้ตัวนี้แปลว่าอะไร แล้วจะกดตัวไหนเพื่อบันทึกข้อมูลนะคะ หรือถ้าต้องการแก้ไขข้อมูลต้องกดตรงไหนนะคะ เราต้องเตรียมข้อมูลไว้ให้เขาด้วย เพื่อใช้ในการทดสอบนะคะ หรืออาจจะเป็นตัวอย่างข้อมูลเพื่อลองมาพิมพ์เข้าไปในระบบดูสิว่ามันสามารถบันทึกได้ไหมนะคะ ถูกต้องหรือเปล่ากับสิ่งที่เราต้องการให้มันเป็นนะคะ ไม่ใช่ว่าอาจารย์พิมพ์ข้อมูลเข้าไปเยอะมาก สรุปเรียกดูข้อมูลไม่ได้ มันก็ไม่มีประโยชน์นะคะ มันก็ต้องมีการทดสอบก่อน พอทดสอบแล้ว เป็นที่น่าพอใจ เราก็เอาไปติดตั้งใช้งานจริง แต่พอติดตั้งแล้ว มันก็ยังต้องมีการประเมินผลเหมือนกันนะคะ ว่าพอเราติดตั้งไปใช้จริงแล้ว มันให้การทำงานที่ดีเหมือนตอนที่ทดสอบหรือเปล่า หรือพอตอนทดสอบน่ะใช้งานได้ แต่พอมาทำงานจริง โอ้โห ข้อมูลเข้ามาทีละหมื่นละแสนข้อมูลต่อวัน สรุประบบรับไม่ได้ ไม่ทันนะคะ ถอดความก็เจ๊ง โอเค รอล่ามแป๊บหนึ่ง โอเค ต่อค่ะ หลังจากนั้นนะคะ ถ้าเราทำงานไปแล้วนี่ ก็เหมือนที่บอกนะคะ ก็ต้องมีการบำรุงรักษา การปรับปรุง พอทำงานไปแล้วนี่ แอดมินนะคะ หรือว่าผู้จัดการฐานข้อมูลนี่ เขาจะต้องมีการเตรียมตัวบำรุงรักษาฐานข้อมูล ไม่ใช่ว่าใช้ ๆ ไปแล้วก็ไม่ได้กลับมาดูเลยนะคะ ทั้งต้องป้องกันระบบด้วยว่า ถ้าสมมติว่ามีปัญหาเกิดขึ้น เรามีการสำรองข้อมูลไว้หรือเปล่า แล้วตารางในการสำรองนี่ จัดทำไว้บ่อยขนาดไหน แล้วแต่ระบบนะคะ บางคนถ้าเป็นระบบที่สำคัญมาก ๆ เขาจะต้องสำรองข้อมูลทุกวันนะคะ หรือถ้าระบบมีปัญหานะคะ ข้อมูลที่สำรองไว้ สามารถกู้คืนได้ ภายในระยะเวลาเท่าไรนะคะ เหมือนว่าสมมุติวันนี้อาจจะมีภัยธรรมชาตินะคะ เป็นธนาคารแห่งหนึ่ง สำนักงานใหญ่ ภัยธรรมชาติ ถ้าสมมุติว่าข้อมูลเขาหาย มันเป็นไปไม่ได้เลยนะคะ เงินลูกค้าไม่รู้จะกี่บาท จะบอกว่า โอ๊ยไม่รู้ค่ะว่าตอนนี้คุณมีเงินเท่าไร เพราะเมื่อคืนมีภัยธรรมชาติ ข้อมูลหาย คำตอบนี้จะต้องไม่เกิดขึ้นนะคะ ข้อมูลทุกอย่างจะต้องถูกเรียกนำมาใช้เร็วที่สุดเท่าที่จะเป็นไปได้นะคะ อันนี้ อย่างเช่นองค์กรใหญ่ ๆ เขาจะมีการซ้อมเลยนะคะว่า ซ้อมสำรองข้อมูล แล้วคุณสามารถกู้คืนข้อมูลขึ้นมาได้เร็วที่สุดเท่าไร บางคนซ้อมทุก ๆ 1 เดือนเลยด้วยซ้ำ เพราะว่าข้อมูลบางอย่างมันสำคัญมาก ๆ นะคะ รวมถึงว่าถ้าระบบเราใช้ไปนี่ มันมีการเพิ่มตารางไหม หรืออาจจะมีคอลัมน์เพิ่มเติมที่เพิ่มเข้ามา สามารถทำได้หรือเปล่านะคะ สิ่งเหล่านี้ก็ถือว่าเป็นการบำรุงรักษา ปรับปรุงฐานข้อมูลเช่นเดียวกันนะคะ โดยที่หัวข้อที่ 2 เหมือนที่อาจารย์บอก หัวข้อที่ 3 สินะคะ เป็นการแปลงแผนภาพ ER นะคะ รูปภาพที่เราเคยวาดนี่ ให้มาเป็น Relation หรือว่าให้เป็นตารางนี่ มันเป็นอะไรที่ง่ายมาก เพราะมันจะเริ่มต้นจากชื่อตารางก่อน ก็คือชื่อ Entity นะคะ โดยตารางใด ๆ นะคะ หรือรูปภาพใดๆ นี่ มันสามารถเอามาแปลงเป็นตารางได้ 1 ตารางทันทีนะคะ ตารางคืออะไร หัวข้อตารางเหมือนที่เราเคยทำไปแล้ว หัวข้อตารางคือจะเป็นสี่เหลี่ยมผืนผ้าแบบนี้ใช่ไหม แล้วก็ ER จำได้นะ เป็นรูปอย่างนี้นะ แล้วก็มีวงรี ๆ วงรีแบบนี้ เราเคยวาดไปแล้วนะคะ วาดไปแล้วนะคะ วาดไปแล้ว อันนี้น่าจะจำได้ว่า เอ๊ะ ER คืออะไร ทำไมอาจารย์พูดถึงนะคะ โดยนะคะ การแปลงนะคะ จากตาราง Entity ปกตินะคะ ชื่อตารางกับชื่อ Entity คือตัวเดียวกัน ชื่อคอลัมน์ก็คือชื่อ Attributes นั่นเองนะคะ โดยอันนี้คือ 1 ตารางนะคะ มองเป็น 1 ตาราง เช่นตัวอย่าง อันนี้ ส่วนบนตรงนี้ เราเคยวาดแล้วใช่ไหมคะ อะไรคือชื่อตาราง ชื่อตารางมาจาก ชื่อในกรอบสี่เหลี่ยมผืนผ้าตัวนี้ แค่นั้นเอง คุณก็เอาชื่อตรงนี้ มาบอกว่าอันนี้คือชื่อตาราง Student นะ ชื่อตารางนักเรียนนะ นะคะ แล้วในตารางนักเรียน เก็บข้อมูลอะไรบ้าง เราก็เอาข้อมูลที่อยู่ในวงรีทุกอันนี้ค่ะ มาใส่เป็นคอลัมน์ตาราง แค่นั้นเอง ออกข้อสอบคือทำง่ายมาก ถ้าจำได้ แต่ในตาราง อย่าลืมนะคะ ในรูปมีขีดเส้นใต้ ตารางก็ต้องขีดเส้นใต้ พอเอาตารางมาเขียนเป็นความสัมพันธ์ เราก็จะเอากรอบออกนะคะ เอากรอบออก โดยชื่อตารางจะอยู่หน้าสุดนะคะ หลังจากนั้นคอลัมน์ในตารางทั้งหมดจะอยู่ในวงเล็บนะคะ อันไหนที่เป็นคีย์หลักที่ขีดเส้นใต้อย่าลืมขีดด้วยนะคะ อย่าลืมขีดด้วยนะ แค่นี้เอง ในการแปลงรูปภาพให้มาเป็นความสัมพันธ์ ถ้าใครยังไม่แม่น คุณทำเป็นตารางก่อนก็ได้ แต่จริง ๆ แล้วดูจากรูปนี่ เราก็เอามาเขียนแบบนี้ได้เลย ง่ายมากนะคะ ซึ่งในหนังสือบางเล่ม ไอ้ตัวการออกแบบนี่ เขาอาจจะเป็นรูปภาพ หรือเขาอาจจะเขียนเป็นความสัมพันธ์แค่บรรทัดเดียวแบบนี้ ความหมายเดียวกันนะคะ อยู่ที่ว่าเขาจะอยากนำเสนอในรูปแบบอะไร เป็นตัวหนังสืออย่างเดียว หรือวาดออกมาเป็นภาพให้เห็นง่าย ๆ แล้วแต่เลยนะคะ ตารางนี้ก็เหมือนกัน หลักการทำงานเดียวกันค่ะ อะไรที่อยู่ในกรอบตัวนี้ ก็คือชื่อตาราง เอาไว้ข้างหน้า หลังจากนั้นสิ่งที่อยู่ใน Attributes ก็คือเป็นรูปวงรีตัวนี้ ก็มาใส่ในวงเล็บแค่นั้นเองนะคะ แต่ส่วนมากเวลาสอบนักศึกษาจะจำไม่ได้นะคะ ว่ามันทำอย่างไรทั้ง ๆ ที่มันง่ายมากนะคะ ซึ่งอาทิตย์หน้าสอบ อาทิตย์หน้าสอบนะคะ เดี๋ยวอาจารย์จะนัดอีกที ว่าสอบ น่าจะถึงสอบถึงวันนี้นะคะ ข้อสอบที่จะออกตั้งแต่วันแรกจนถึงวันนี้เลยนะคะ ซึ่งรูปนี้ออกสอบแน่ ๆ จำให้ได้นะคะ เพราะมันง่ายมาก แต่ถ้ารูปนั้นนะคะ แผนภาพนั้นนี่ มันมีส่วนของตารางอ่อนแอนะคะ ก็คือ Weak Entity สัญลักษณ์ของ Weak Entity คือเป็นสี่หลี่ยมซ้อนกัน 2 วงนะคะ หลักการคือถ้ามันไป… ส่วนของค่าที่มีความอ่อนแอนี่ เราจะเอาคีย์หลักของอีกตารางหนึ่งที่มันมีความสัมพันธ์ด้วยมาใส่นะคะ เช่นรูปนี้ เห็นไหมคว่ามันจะมี สี่เเหลี่ยมซ้อนกัน 2 อันตรงข้างล่างนะคะ ถ้าสมมุติว่าเราจะมาแปลงเป็นความสัมพันธ์ อันนี้คือคีย์หลักของตารางที่มีค่าอ่อนแอ หลักการคือ ให้เอาคีย์หลักของอีกตารางหนึ่งที่มันมีความสัมพันธ์ด้วยมาใส่นะคะ ผลลัพธ์ที่ได้จากตารางอ่อนแอตัวนี้ สังเกตไหมคะว่า จริง ๆ มันจะมีแค่ 2 Attributes ใช่ไหมคะ ข้อมูลเกี่ยวกับผู้ปกครองนักเรียนนะคะ ข้อมูลผู้ปกครองนักเรียน ถ้าเรามาแปลงเป็นความ… เป็นตาราง เราจะต้องเอาส่วนของรหัสนักเรียนมาด้วยนะคะ เวลาเขียนก็เพิ่มนะคะ คีย์หลักของตารางที่ผ่านมาก็คือมีรหัสนักเรียนเข้ามาเพิ่มแค่นั้นเอง อันนี้คือสำหรับตารางที่มีความอ่อนแอก็คือการต้องไปพึ่งค่าของตารางอื่นนั่นเองนะคะ อันนี้ก็ไม่ยากถ้าจำได้นะคะ ไม่ยากเลย ต่อมา การแปลงแผนภาพนะคะให้เป็นความสัมพันธ์มันจะมีอยู่ 3 รูปแบบนะคะ แบบ 1 ต่อ 1 แบบ 1 ต่อกลุ่ม กับแบบกลุ่มต่อกลุ่ม อันนี้เรารู้อยู่แล้วนะคะ อันนี้เราเคยเรียนมาแล้ว โดยการแทนความสัมพันธ์แบบ 1 ต่อ 1 นี่นะคะ ก็คือชื่อของ ตารางนี่ เรารู้อยู่แล้วใช่ไหมคะ ก็จะมาตั้ง แล้วความสัมพันธ์ก็วาดง่าย ๆ นะคะ โดยการเพิ่มคีย์หลัก คีย์หลักก็คือตัวที่มันขีดเส้นใต้น่ะค่ะ ของอีกตารางหนึ่งที่เรามีความสัมพันธ์กันมาใส่ เพื่อให้มัน สามารถเชื่อมโยงกันได้ อันนี้คือง่ายมากจากรูปนะคะ คีย์หลักก็คือตัวขีดเส้นใต้ของนักเรียนตารางนี้นะคะ ของบัณฑิตนั่นเอง ของบัณฑิตนะคะ ที่จบการศึกษา ก็จะมีรหัสนักศึกษา เขาทำวิทยานิพนธ์เรื่องอะไรนะคะ ก็จะมีรหัสวิทยานิพนธ์ โดยตารางนี้ เห็นไหมคะว่ามันมีความสัมพันธ์แบบ 1 ต่อ 1 มีเลข 1 กำกับ ถ้าแบบ 1 ต่อ 1 จะต้องเอาคีย์หลักนะคะ เลือกตารางใดตารางหนึ่งก็พอนะคะ มาใส่ สิ่งที่จะเกิดขึ้นคือ สมมุติว่าเราจะเลือกคีย์นะคะ อย่างตัวนี้สมมุติว่าอาจารย์จะเอาคีย์หลักของตารางวิทยานิพนธ์ ไปใส่ให้กับตารางนักเรียนก็ได้นะคะ ก็ได้ หรือเอารหัสนักศึกษามาใส่ในตารางวิทยานิพนธ์ก็ได้ อันนี้เฉพาะความสัมพันธ์แบบ 1 ต่อ 1 เท่านั้นนะคะ ที่เลือกตัวใดตัวหนึ่งก็ได้นะคะ ที่มีความสัมพันธ์กัน แต่ถ้าเป็นความสัมพันธ์แบบ 1 ต่อกลุ่มนะคะ 1 ต่อกลุ่มนะ เราจะเอาคีย์หลักก็คือตัวขีดเส้นใต้ จากฝั่งที่มีความสัมพันธ์เป็น 1 เท่านั้น ไปใส่ในฝั่งที่มีความสัมพันธ์เป็นกลุ่ม อย่างเช่นรูปนี้นะคะ รูปนี้นะ ความสัมพันธ์เป็น 1 จะอยู่ฝั่งนี้นะคะ อันนี้ความสัมพันธ์เป็นกลุ่ม แทนด้วยตัว M นะคะ เราจะเอาตัวขีดเส้นใต้ ก็คือคีย์หลักของตารางที่มีความสัมพันธ์เป็น 1 เท่านั้น ไปเพิ่มลงในตารางที่มีความสัมพันธ์เป็นกลุ่มนะคะ นั่นก็คือ เห็นไหมคะ ฝั่งนี้ ความสัมพันธ์เป็นกลุ่มใช่ไหมคะ ตัวคีย์หลัก คือตัวขีดเส้นใต้เขามีตัวนี้ตัวเดียว เราก็จะเอาของตารางอีกตารางหนึ่งมาเพิ่มให้ ซึ่งตารางนี้ มีความสัมพันธ์เป็น 1 มาเพิ่มให้ อันนี้คือความสัมพันธ์แบบ 1 ต่อกลุ่มนะคะ อันนี้ก็ยังไม่ยาก แต่ถ้า เป็นความสัมพันธ์แบบกลุ่มต่อกลุ่มนะคะ โดยความสัมพันธ์นี่ บางทีมันอาจจะมีข้อมูลที่เกิดขึ้นของมันเองนะคะ ข้อมูลที่เกิดขึ้น ซึ่งวิธีการแก้ปัญหา ปัญหามันจะอยู่ตรงนี้ ตรงที่อาจารย์กรอบสีแดงนี่ ในความสัมพันธ์ของกลุ่มต่อกลุ่มนี่ มันอาจจะมีข้อมูลที่เพิ่มเติมขึ้นมานะคะ ในกรณีนี้นะคะ เราก็จะสร้างความสัมพันธ์ขึ้นมาใหม่เลยนะคะ โดยวิธีการคือ เอาคีย์หลักของทั้ง 2 ความสัมพันธ์ มาสร้างใหม่ให้กับความสัมพันธ์ตรงนี้นะคะ เอา 2 อันนี้มาใส่เพิ่ม ทั้ง 2 ฝั่งเลยนะคะ เอาจากตารางทั้ง 2 ตารางนี่ มาเพิ่มให้กับความสัมพันธ์ใหม่เลยนะคะ ก็จะกลายเป็นแบบนี้ค่ะ อันนี้คือตารางที่เกิดขึ้นใหม่ สำหรับความสัมพันธ์แบบกลุ่มต่อกลุ่มนะคะ มันจะเอาข้อมูลรหัสนักเรียน แล้วก็รหัสตารางเรียนวิชานะคะ มาเพิ่มจากทั้ง 2 ฝั่งเลย เมื่อก่อนคือเราต้องเลือกจากฝั่งใดฝั่ง 1 เท่านั้นใช่ไหมคะ ถ้าเป็นความสัมพันธ์แบบ 1 ต่อ 1 ถ้าเป็นความสัมพันธ์แบบ 1 ต่อกลุ่ม เราจะเอามาจาก… เราจะเอาคีย์หลักมาจากความสัมพันธ์ที่เป็นฝั่ง 1 เท่านั้น แต่ถ้าเป็นกลุ่มต่อกลุ่ม เราจะเอาคีย์หลักมาจากทั้ง 2 ตารางที่มีความสัมพันธ์กัน มาสร้างตารางใหม่ อันนี้คือจุดเด่นของแต่ละการแปลงตารางให้มันเป็นความสัมพันธ์นะคะ วิธีการทำ เรารู้แล้ว เดี๋ยวจะให้ลองทำเองสัก 1 ข้อนะคะ ในห้อง เดี๋ยวอาจารย์จะเดินดูนะคะ ทำเลย ทำเองนะคะ เอาแค่ 1 รูป รูปนี้ก็พอ ในรูปนี้มีกี่ตาราง มี 1 ตาราง 2 ตาราง 3 ตาราง ซึ่งในความสัมพันธ์ของรูปนี้ มีความสัมพันธ์แบบ 1 ต่อกลุ่ม กับแบบกลุ่มต่อกลุ่ม ลองดูสิว่า จะทำได้ไหมนะคะ ความสัมพันธ์ที่เกิดขึ้นจะมีอยู่ 2 ความสัมพันธ์นะ ลองดูสิว่าจากตัวอย่างที่อาจารย์ให้ เข้าใจหรือเปล่า เอาอย่างแรกเลย แปลง ER ให้เป็นตารางให้ได้ก่อน ลองดูสิว่าจำได้ไหมที่อาจารย์สอน พอคุณแปลงตารางได้ปึ๊บ คุณถึงค่อยมาเชื่อมโยงความสัมพันธ์ดูแล้วกันว่า แต่ละตารางที่คุณทำออกมาได้นี่ มันเชื่อมโยงกับตารางอื่นนี่ มันเป็นอย่างไรนะคะ ขั้นตอนแรกเปลี่ยนจากรูปภาพให้เป็นตาราง พอเป็นตารางได้ค่อยมาดูความสัมพันธ์นะคะ ลองทำดู ทำเองนะคะ ทำเอง เดี๋ยวอาจารย์จะเดินดู กระดาษมีอยู่แล้วนะ โอเคค่ะ ทำเลย ล่ามคะ วันนี้ก็ประมาณนี้แหละค่ะ เนื้อหาจะมีแค่นี้ เดี๋ยวจะให้ทำงานห้องค่ะ วันนี้ขอบคุณมากนะคะ ขอบคุณล่ามด้วยนะคะ ขอบคุณมากค่ะ [สิ้นสุดการถอดความ]