WEBVTT
Kind: captions
Language: th

00:08:36.175 --> 00:08:38.736
(อาจารย์) ล่ามได้ยินไหมคะ

00:08:40.205 --> 00:08:41.441
โอเคค่ะ

00:08:41.692 --> 00:08:45.351
อย่างนั้นเดี๋ยววันนี้เริ่มเลยนะคะ วันนี้เนื้อหาไม่เยอะนะคะ

00:08:45.351 --> 00:08:48.569
เพราะเดี๋ยวท้าย ๆ ชั่วโมงจะให้ทำงานในห้อง

00:08:53.370 --> 00:08:55.084
ถอดความต้องมีไหม

00:08:55.765 --> 00:08:57.707
ไม่เป็นไร อย่างนั้นสอนเลยนะ

00:08:59.462 --> 00:09:02.961
วันนี้หัวข้อนะคะ หลัก ๆ จะมีอยู่ 3 เรื่องนะคะ

00:09:03.391 --> 00:09:11.131
ก็จะมีเกี่ยวกับวัฏจักรการพัฒนาระบบนะคะ ตัวย่อก็คือ SDLC นะคะ

00:09:13.173 --> 00:09:17.448
กับพอเราเอามาประยุกต์ใช้กับงานฐานข้อมูลนะคะ

00:09:17.448 --> 00:09:22.751
มันก็จะเป็นวัฏจักรการพัฒนาระบบจัดการฐานข้อมูลก็คือ DBLC

00:09:26.154 --> 00:09:32.881
รวมถึงจากที่เราเรียนเมื่อหลาย ๆ สัปดาห์ก่อนนะคะ เราจะเอารูปที่เราเคยวาดไว้นี่นะคะ

00:09:32.881 --> 00:09:35.461
คือ ER รูป ER นะคะ

00:09:36.464 --> 00:09:39.958
แปลงกลับมาให้เป็นในรูปแบบของความสัมพันธ์หรือว่า

00:09:39.958 --> 00:09:44.465
แปลงกลับให้มาเป็นในรูปแบบของตาราง จะทำอย่างไรนะคะ

00:09:44.465 --> 00:09:48.029
เดี๋ยววันนี้เราจะมาเรียนกัน 3 หัวข้อแค่นี้นะคะ

00:09:51.110 --> 00:09:55.490
วัฏจักรการพัฒนาระบบนะคะ ตัวย่อมันก็คือ SDLC

00:09:55.490 --> 00:09:59.464
มันมาจากภาษาอังกฤษก็คือ System Development Life Cycle นั่นเองนะคะ

00:09:59.464 --> 00:10:02.302
จะเป็นการพัฒนาระบบมาจาก

00:10:03.341 --> 00:10:07.911
สิ่งที่เราได้มา อาจจะเป็นระบบสารสนเทศต่าง ๆ นะคะ เอามารวมกัน

00:10:07.911 --> 00:10:11.316
อันนี้เป็นพื้นฐานก่อนนะคะว่า

00:10:11.316 --> 00:10:15.084
ทำไมเราถึงจะต้องมาพัฒนาระบบจัดการฐานข้อมูล ซึ่งมันจะ

00:10:15.442 --> 00:10:22.448
เป็นระบบที่ปรับปรุงนะคะ มาจากวัฏจักรการพัฒนาระบบนั่นแหละนะคะ

00:10:22.735 --> 00:10:27.512
โดยการพัฒนาระบบนี่ เราจะมีอยู่ 5 ระยะ

00:10:28.945 --> 00:10:34.957
อันนี้คือเป็นมาตรฐาน สมมุติเราเรียนไปนี่แล้วเราจะเขียนโปรแกรมขึ้นมาสักงาน 1 นี่

00:10:34.957 --> 00:10:38.613
หรือเราถูกจ้างให้เขียนโปรแกรมให้นะคะ

00:10:38.613 --> 00:10:43.865
หรือเราต้องการจะไปจ้าง หรือเราต้องการจะพัฒนาระบบเองก็ได้นะคะ

00:10:43.865 --> 00:10:49.039
ขั้นตอนมาตรฐานของการพัฒนาระบบจะมีอยู่ 5 ระยะนะคะ

00:10:51.009 --> 00:10:57.432
ระยะแรกเราต้องวางแผนก่อนว่า เราจะพัฒนาระบบอะไรนะคะ

00:10:58.363 --> 00:10:59.580
ทำไมต้องทำ

00:11:00.977 --> 00:11:04.636
มันมีความจำเป็นกับการทำงานของเราไหม หรืออย่างไรนะคะ

00:11:04.636 --> 00:11:10.931
หลังจากนั้นมาวิเคราะห์ว่าไอ้ที่เราวางแผนไปนี่ มันครอบคลุมแล้วหรือยังนะคะ

00:11:10.931 --> 00:11:14.576
กับการทำงานที่เราต้องการ หรือผลลัพธ์ที่เราต้องการนี่

00:11:14.827 --> 00:11:19.821
จากที่เราวางแผนไว้นี่ มันครบหรือเปล่านะคะ เราก็จะมาเช็ก

00:11:20.323 --> 00:11:24.758
หลังจากนั้นพอเราวิเคราะห์ความถูกต้องทุกอย่างแล้วมันครบ

00:11:24.758 --> 00:11:30.767
ทุกรายละเอียดที่เราต้องการ เราก็มาออกแบบรายละเอียดของระบบว่าระบบนี้

00:11:31.197 --> 00:11:38.779
มันจะต้องมีส่วนประกอบอะไรบ้าง ใครสามารถใช้งานระบบนี้ได้บ้างนะคะ แต่ละคนใช้งาน

00:11:40.355 --> 00:11:45.320
การเข้าถึงข้อมูลนี่มากน้อยต่างกันขนาดไหนนะคะ

00:11:45.320 --> 00:11:51.277
อันนี้เป็นพื้นฐานเบื้องต้น หรือในระบบของเราต้องการจะเก็บข้อมูลอะไรบ้างนะคะ

00:11:51.564 --> 00:12:00.756
ต้องมากรอกรายละเอียดหรือเขียนรายละเอียดทั้งระบบนะคะ มาดูว่ามันครบหรือยังนะคะ

00:12:00.756 --> 00:12:07.096
ส่วนนี้ก็จะต้องมีการตรวจสอบด้วยว่าสิ่งที่เราวางแผนเราวิเคราะห์และการออกแบบนี่

00:12:07.096 --> 00:12:10.920
มันสามารถเกิดขึ้นได้จริงไหมนะคะ

00:12:10.920 --> 00:12:14.849
หลังจากนั้นพอวิเคราะห์แล้วว่ามันสามารถเกิดขึ้นได้

00:12:14.849 --> 00:12:18.559
เราก็ไปดำเนินการพัฒนาระบบขึ้นมานะคะ

00:12:18.917 --> 00:12:22.132
ในช่วงนี้ ก็จะเป็นการพัฒนานะคะ

00:12:22.132 --> 00:12:27.882
แต่บางคนก็คือพัฒนาไปด้วยทดสอบไปด้วยว่าระบบนี้มันใช้งานได้จริงแล้วเป็นอย่างไร

00:12:27.882 --> 00:12:33.615
หรือมันมีข้อผิดพลาดตรงไหน ก็ดำเนินงานแก้ไขทั้งสร้างใหม่ไปเรื่อย ๆ

00:12:33.615 --> 00:12:38.460
แล้วก็ปรับปรุงสิ่งที่ทำไปแล้วให้มันสมบูรณ์ที่สุด หลังจากนั้น

00:12:38.639 --> 00:12:45.782
เราก็จะได้ระบบมา แต่พอได้มาแล้ว มันก็ยังต้องมีในส่วนของการบำรุงรักษานะคะ

00:12:45.782 --> 00:12:48.048
ว่ามันยังทำงานได้ดีไหม

00:12:48.657 --> 00:12:57.701
มีข้อผิดพลาดในการทำงานหรือเปล่า อาจจะใส่ข้อมูลราคาสินค้าไป แต่ภาษีผิด

00:12:58.381 --> 00:13:04.397
ภาษีประเทศไทยคือ 7 เปอร์เซ็นต์ แต่บังเอิญว่าเราพิมพ์ผิด ไปพิมพ์เป็นเลข 4 อย่างนี้

00:13:04.648 --> 00:13:09.286
ผลการคำนวณมันเลยผิด อันนี้ก็ต้องไปแก้ไขนะคะ ก็เป็นส่วนของการบำรุงรักษา

00:13:09.286 --> 00:13:14.539
หรือว่ามีข้อมูลที่เราต้องการจะเพิ่ม อย่างเช่น

00:13:15.041 --> 00:13:18.675
ปกติเราเก็บแต่เบอร์โทรศัพท์มือถือนะคะ

00:13:18.962 --> 00:13:23.285
เราอยากได้เบอร์โทรศัพท์บ้านด้วย ก็อยู่ในส่วนของการบำรุงรักษาค่ะ เพราะว่า

00:13:23.285 --> 00:13:27.766
มันจะเป็นการที่แก้ไขในตัวระบบ ปรับปรุงระบบนั่นเองนะคะ

00:13:27.766 --> 00:13:31.298
ว่าให้เพิ่มเบอร์โทรศัพท์บ้านเข้าไปด้วยอย่างนี้นะคะ

00:13:34.379 --> 00:13:41.212
ซึ่งจากวัฏจักรการพัฒนาระบบนี่ เราเลยเอามาเป็นตัวตั้งต้น

00:13:41.212 --> 00:13:48.113
สำหรับการพัฒนาระบบจัดการฐานข้อมูล แต่มันจะมีบางส่วนที่เพิ่มเติมขึ้นมานะคะ

00:13:48.364 --> 00:13:52.564
ก็คือในส่วนของการทดสอบแล้วก็ประเมินผลนะคะ

00:13:52.564 --> 00:13:55.843
เมื่อกี้การพัฒนาระบบนี่ เราจะมีอยู่ 5 ขั้นตอน

00:13:56.058 --> 00:14:00.968
แต่ถ้าเป็นการพัฒนาระบบจัดการฐานข้อมูลหรือพัฒนาฐานข้อมูลนี่

00:14:00.968 --> 00:14:05.892
เราจะมีอยู่ 6 ขั้นตอนนะคะ ซึ่งมันก็จัดใกล้ ๆ เคียงกันแหละนะคะ

00:14:05.892 --> 00:14:12.952
โดยเริ่มต้นของการสร้างฐานข้อมูลขึ้นมานี่ เราต้องมีการศึกษาเบื้องต้นก่อนว่า

00:14:13.382 --> 00:14:16.219
ข้อมูลที่เราต้องการจะเก็บ เราจะเก็บอะไร

00:14:16.613 --> 00:14:24.508
เก็บไปทำไม เก็บมาจากไหนนะคะ แล้วจะเรียกดูข้อมูลทำอย่างไรนะคะ

00:14:24.508 --> 00:14:30.462
อันนี้เป็นการศึกษาเบื้องต้นก่อนว่า เอ๊ะ ที่เราจะทำนี่ มันทำได้ไหม

00:14:30.462 --> 00:14:33.380
ทำได้จริงหรือเปล่า ข้อมูลคืออะไรนะคะ

00:14:33.380 --> 00:14:36.895
หลังจากนั้น เราก็เอาสิ่งที่เราศึกษาเบื้องต้นนี่

00:14:36.895 --> 00:14:40.146
มาออกแบบฐานข้อมูลเหมือนที่เราวาดไปนั่นล่ะค่ะ

00:14:40.146 --> 00:14:44.171
ที่เราวาดรูป ER ไป ก็คือเริ่มออกแบบแล้ว

00:14:44.171 --> 00:14:48.266
ว่าเอ๊ะ เหมือนตัวอย่างที่อาจารย์ยกให้คือ ร้านหนังสือ 1 ร้าน

00:14:49.018 --> 00:14:51.347
จะเก็บข้อมูลอะไรบ้างนะคะ

00:14:52.744 --> 00:14:55.916
อันนี้คือเริ่มออกแบบแล้วนะคะ

00:14:55.916 --> 00:14:59.986
พอออกแบบได้ปึ๊บ ตรวจสอบข้อมูลครบทุกอย่างนะคะ

00:15:00.273 --> 00:15:08.077
เราก็จะมาดำเนินการสร้างฐานข้อมูลเพื่อไปติดตั้งในระบบที่เรามีไว้อยู่แล้วนะคะ

00:15:08.328 --> 00:15:17.094
หรือถ้ายังไม่มี ก็สร้างขึ้นมานะคะ เพื่อใช้กับฐานข้อมูลที่เรากำลังจัดทำเช่นเดียวกันนะคะ

00:15:18.348 --> 00:15:25.197
พอสร้างฐานข้อมูลเสร็จ เอาไปติดตั้งในระบบแล้ว เราก็ต้องมีการทดสอบ แล้วก็ประเมินผลว่า

00:15:25.627 --> 00:15:32.225
ฐานข้อมูลที่เราสร้างมา มันใช้งานได้ดีกับระบบที่มีอยู่หรือไม่นะคะ

00:15:32.440 --> 00:15:38.336
ถ้ามันไม่ดี มันไม่ดีตรงไหน มีตรงไหนต้องแก้ไขหรือเปล่านะคะ

00:15:38.336 --> 00:15:42.824
หรือใส่ฐานข้อมูลแล้วแต่เรียกข้อมูลขึ้นมาไม่ได้

00:15:43.039 --> 00:15:48.488
เราก็ต้องแก้ปัญหานะคะ ว่าทำไมมันไม่ได้ เหมือน

00:15:50.000 --> 00:15:55.095
ถ้าใครเคยใช้ Excel เบอร์โทรศัพท์นำหน้าของเราจะเป็นเลข 0 ใช่ไหมคะ

00:15:55.453 --> 00:16:01.158
แต่เหมือน Excel เหมือนกัน ถ้าเราไม่เปลี่ยนชนิดของข้อมูล เลข 0 เราจะหายไปนะคะ

00:16:01.158 --> 00:16:07.441
ทำไม อันนี้ก็เป็นข้อหนึ่งที่เราจะต้องกำหนด

00:16:08.158 --> 00:16:13.765
รูปแบบของข้อมูลในฐานข้อมูลของเราด้วยนะคะว่าให้คอลัมน์นี้

00:16:14.482 --> 00:16:19.574
เป็นเบอร์โทรศัพท์นะ ไม่ใช่จำนวนเลขจำนวนจริงใด ๆ นะคะ

00:16:19.574 --> 00:16:22.645
หลังจากนั้นพอเราทดสอบประเมินผลเป็นที่พอใจแล้ว

00:16:22.645 --> 00:16:29.487
เราก็เอาระบบที่ได้ที่มีการผสานกับฐานข้อมูลนี่ เอาไปใช้งานจริงนะคะ

00:16:29.809 --> 00:16:34.350
พอใช้งานจริง ทุกระบบที่เกี่ยวกับคอมพิวเตอร์จะต้องมีการบำรุงรักษา

00:16:34.350 --> 00:16:39.433
หรือปรับปรุงเปลี่ยนแปลงข้อมูลใด ๆ ก็ตามก็ต้องมีเหมือนกันนะคะ

00:16:39.433 --> 00:16:43.524
อันนี้ก็จะคล้าย ๆ กับการพัฒนาระบบนะคะ

00:16:43.524 --> 00:16:48.956
สำหรับการพัฒนาฐานข้อมูล แต่เดี๋ยวจะอธิบายโดยละเอียดก็คือ

00:16:48.956 --> 00:16:53.937
ในการศึกษาเบื้องต้นนี่ มันก็อย่างที่อาจารย์บอกตอนแรก

00:16:53.937 --> 00:16:56.836
ก็ต้องดูว่าผู้ใช้งานต้องการอะไร

00:16:57.230 --> 00:17:03.258
ฐานข้อมูลเขาอยากได้ เอาเพื่อไปทำอะไร หรือมีปัญหาอะไรเกิดขึ้น

00:17:03.258 --> 00:17:06.570
เขาถึงต้องการระบบฐานข้อมูลนะคะ

00:17:06.570 --> 00:17:11.701
หรืออาจจะเกี่ยวกับการเก็บข้อมูลให้เป็นระเบียบนะคะ

00:17:11.916 --> 00:17:17.650
ซึ่งการศึกษาเบื้องต้นนี่ มันจะเป็นแนวทางในการออกแบบต่อไป

00:17:19.405 --> 00:17:26.345
อย่างน้อยที่เราต้องวิเคราะห์คือ ในองค์กรเราต้องการเก็บข้อมูลขนาดไหนนะคะ

00:17:26.775 --> 00:17:32.511
ปัญหาที่เกิดขึ้นในปัจจุบันหรือข้อจำกัดก็คือตอนนี้ข้อมูลนี่เขียนลงในสมุดตลอดเลย

00:17:32.905 --> 00:17:36.885
หรือเก็บไว้ในคอมพิวเตอร์เครื่องเดียวนะคะ

00:17:37.279 --> 00:17:42.988
มันไม่สามารถทำงานร่วมกันได้หลาย ๆ คน จุดมุ่งหมายคือถ้าเรามีระบบฐานข้อมูลที่ดี

00:17:43.239 --> 00:17:50.771
คนทำงานช่วยกันจะได้เพิ่มขึ้นหรืออาจจะเป็นการเรียกดูข้อมูลได้สะดวกสบายขึ้นนะคะ

00:17:50.986 --> 00:17:56.205
ขอบเขตของงาน คือ คนที่สามารถเข้ามาดูข้อมูลได้มีใครบ้างเป็นต้นนะคะ

00:17:56.205 --> 00:17:58.608
อันนี้คือการศึกษาเบื้องต้นก่อน

00:17:59.468 --> 00:18:08.321
แล้วก็มาเช็กดูนะคะว่าข้อที่เราวิเคราะห์ไว้นี้มันครบหรือยัง ถ้าครบแล้วนะคะ

00:18:08.608 --> 00:18:11.851
ก็มาออกแบบนะคะ ซึ่งรายละเอียด

00:18:11.851 --> 00:18:15.516
ก็จะเอามาจากขั้นตอนของการศึกษาข้อมูลเบื้องต้นนั่นแหละนะคะ

00:18:15.516 --> 00:18:21.583
มาเป็นแนวทางในการออกแบบ 3 ระดับนะคะ ระดับแนวคิด ระดับภายใน แล้วก็ระดับภายนอก

00:18:21.583 --> 00:18:25.755
ระดับตรรกะอะไรพวกนี้นะคะ ที่เคยเรียนไปแล้วเมื่อบทต้น ๆ นะคะ

00:18:26.400 --> 00:18:32.350
โดยการออกแบบเชิงแนวคิดนี่ เราจะเป็นการพัฒนาแบบจำลองข้อมูลให้ถูกต้อง

00:18:32.780 --> 00:18:38.624
ต้องมีความละเอียด เข้าใจข้อมูลองค์กรเป็นอย่างดี สมมุติว่า

00:18:38.839 --> 00:18:43.091
ถ้าคุณเป็นโปรแกรมเมอร์ คุณก็ต้องรู้ว่าองค์กรของคุณทำอะไรนะคะ

00:18:43.091 --> 00:18:46.949
ข้อมูลมีอะไรบ้างนะคะ

00:18:47.271 --> 00:18:54.092
อาจจะเป็นไปฝึกงาน แล้วเขาให้ลองออกแบบฐานข้อมูลเกี่ยวกับการจัดการพนักงาน

00:18:56.671 --> 00:18:59.697
เราก็ต้องรู้ว่า ข้อมูลพนักงาน 1 คน

00:19:00.521 --> 00:19:02.929
มีอะไรบ้างนะคะ

00:19:02.929 --> 00:19:08.447
แน่นอนเหมือนที่อาจารย์เคยสอน มีรหัสพนักงาน รหัสบัตรประชาชนใช่ไหมคะ

00:19:08.447 --> 00:19:13.065
มีชื่อ มีนามสกุล มีเบอร์โทรศัพท์ มีที่อยู่ปัจจุบัน

00:19:13.459 --> 00:19:19.502
ที่อยู่ตามทะเบียนบ้าน เรียนจบอะไรมา ตอนนี้ตำแหน่งอะไร เงินเดือนเท่าไร

00:19:19.824 --> 00:19:26.054
อันนี้คือข้อมูลเบื้องต้น แต่ถ้าเป็นบริษัทใหญ่ ๆ นี่ เขาก็จะถามข้อมูลละเอียดมากว่า

00:19:26.233 --> 00:19:30.832
ที่บ้านทำงานอะไร พ่อแม่อยู่ไหน มีลูกหรือยัง

00:19:30.832 --> 00:19:34.914
เพราะว่าบางองค์กรมีสวัสดิการให้คนในครอบครัวด้วย

00:19:34.914 --> 00:19:39.160
อันนี้พวกคุณก็ต้องศึกษาด้วยนะ ถ้าคุณไปทำงานที่ไหน

00:19:39.160 --> 00:19:44.463
ว่าแต่ละที่เขาอาจจะไม่ได้เก็บข้อมูลเหมือนกัน

00:19:44.750 --> 00:19:49.437
อาจจะมีเก็บข้อมูลไม่เยอะ หรืออาจจะเก็บข้อมูลนิดเดียวนะคะ

00:19:49.437 --> 00:19:51.966
ในฐานข้อมูลอาจจะเก็บรูปภาพพนักงาน

00:19:52.611 --> 00:19:54.804
รูปภาพต้องเป็นรูปภาพแบบไหน

00:19:55.664 --> 00:19:58.931
อันนี้ก็คือสิ่งที่เราต้องออกแบบนะคะ

00:19:58.931 --> 00:20:02.384
ไม่ใช่ว่าอยากทำอะไรก็ทำไม่ได้นะคะ

00:20:02.384 --> 00:20:07.431
ต้องดูความต้องการขององค์กรที่เราไปทำงานให้เขาด้วยนะคะ

00:20:08.291 --> 00:20:14.564
ตั้งแต่การออกแบบนี่ เราต้องกำหนดชนิดของข้อมูลที่จะเอาเข้ามาก็คือชนิดของคอลัมน์

00:20:14.564 --> 00:20:17.159
แต่ละคอลัมน์ที่เราจะต้องใส่นะคะ

00:20:17.804 --> 00:20:24.833
มีความสัมพันธ์เป็นอย่างไรบ้าง ตารางพนักงานจะต้องไปเชื่อมโยงกับตารางเงินเดือนไหมนะคะ

00:20:25.908 --> 00:20:31.779
ต้องเขียนให้ถูก เพราะตำแหน่งแต่ละตำแหน่งคนแต่ละคนเงินเดือนน่ะไม่เท่ากันนะคะ

00:20:32.030 --> 00:20:36.717
ในแต่ละตารางจะเก็บข้อมูลอะไรบ้างนะคะ

00:20:37.147 --> 00:20:40.846
ขอบเขตของข้อมูลในตารางนั้น ๆ ต้องกำหนดอย่างไร

00:20:41.563 --> 00:20:46.890
เหมือนที่อาจารย์ชอบยกตัวอย่างบ่อย ๆ เช่น รหัสบัตรประชาชน ต้องเป็นเลข 13 หลักเท่านั้น

00:20:48.137 --> 00:20:51.922
อย่างนี้นะคะ หรือรหัสไปรษณีย์

00:20:52.316 --> 00:20:56.947
มันก็ควรจะมีแค่ 5 หลักเท่านั้น ไม่ควรเกิน ใช่ไหม

00:20:57.269 --> 00:21:00.376
อะไรที่เรารู้อยู่แล้วว่าขอบเขตมันเป็นอย่างไร

00:21:00.376 --> 00:21:05.700
เราก็สามารถกำหนดได้นะคะ เผื่อป้องกันความผิดพลาดด้วย

00:21:05.700 --> 00:21:13.531
บางคนพิมพ์รหัสไปรษณีย์ผิดใส่ 0 เกินไปอย่างนี้ มันก็ผิด ข้อมูลที่ได้มาก็จะผิดพลาด

00:21:14.247 --> 00:21:16.999
ในตาราง อะไรเป็นคีย์หลัก

00:21:17.787 --> 00:21:26.725
ก็คือค่าที่ห้ามซ้ำกันน่ะคืออะไรนะคะ มีการกำหนดความเป็นเอกลักษณ์ของตาราง

00:21:27.334 --> 00:21:32.353
เป็นตารางทั่วไป หรือตารางเฉพาะ อันนี้ถ้าจำเป็นต้องกำหนดนะคะ

00:21:32.926 --> 00:21:38.239
มีการเขียน ER Diagram ก็คือการวาดรูปที่เราเคยวาดไปนะคะ วาดรูป ER

00:21:38.490 --> 00:21:42.307
หลังจากนั้น ต้องมานั่งประชุมกันค่ะว่า

00:21:42.307 --> 00:21:47.913
สิ่งที่เราออกแบบ กับสิ่งที่ผู้ใช้งานต้องการ ตรงกันหรือเปล่า

00:21:48.486 --> 00:21:54.305
มีตรงไหนที่เข้าใจไม่ตรงกันไหม หรือมีอะไรที่เราออกแบบขาดไปหรือเปล่า

00:21:54.914 --> 00:22:00.400
หรือมันเกินความจำเป็น ตัดออกได้ไหมนะคะ

00:22:00.651 --> 00:22:06.119
อันนี้คือสิ่งที่ต้องมาคุยกัน ไม่ใช่ว่าเราคิดเองทั้งหมด แล้วเราทำเลย สรุป

00:22:06.836 --> 00:22:12.634
ไม่ตรงกันกับที่ผู้ใช้งานต้องการ อันนี้ก็ไม่ได้แล้ว เสียเวลาเปล่านะคะ

00:22:12.634 --> 00:22:16.856
เพราะฉะนั้น ควรจะมานั่งคุยกันตั้งแต่เริ่มต้นนะคะ

00:22:17.573 --> 00:22:19.280
อันนี้ไม่มีอะไร

00:22:20.534 --> 00:22:22.866
หลังจากนั้น พอออกแบบได้นี่

00:22:23.547 --> 00:22:29.263
การเลือกโปรแกรมที่จะใช้ในการจัดการข้อมูลนี่ คนออกแบบ ก็ต้องดูด้วยว่า

00:22:29.263 --> 00:22:34.221
แต่ละโปรแกรมมันมีข้อจำกัดนะคะ ไม่ใช่ว่า โอ๊ย

00:22:34.221 --> 00:22:37.715
ฉันรู้สึกว่าฉันจำชื่อโปรแกรมนี้ได้ เลือกเลย

00:22:38.324 --> 00:22:40.525
เลือกเพราะแค่จำชื่อได้มันไม่พอ

00:22:41.242 --> 00:22:45.742
มันจะต้องดูด้วยว่า ไอ้ที่เราเลือกไปนี่ มันสามารถใช้งานได้ดี

00:22:45.742 --> 00:22:49.262
กับระบบที่เราต้องการจะใช้หรือเปล่านะคะ

00:22:49.262 --> 00:22:53.829
เพราะว่า ถ้าเราเลือกผิด แล้วเราเอามาใช้งานจริง ๆ นี่

00:22:53.829 --> 00:22:56.655
มันไม่เวิร์กหรือมันใช้งานไม่ได้นี่

00:22:56.655 --> 00:22:58.841
งานเราถือว่าล้มเหลวเลยนะคะ

00:22:59.701 --> 00:23:04.079
เพราะว่าถ้าได้เริ่มทำงานแล้ว ข้อมูลเริ่มเก็บแล้ว แล้วจะให้เริ่มใหม่นี่

00:23:04.330 --> 00:23:11.396
เสียเวลามาก ๆ นะคะ เพราะฉะนั้น รัดกุมตั้งแต่ออกแบบเลยดีที่สุดนะคะ

00:23:11.396 --> 00:23:17.894
ทั้งการออกแบบทางตรรกะก็จะเกี่ยวข้องกับการตัดสินใจในการเลือกใช้ฐานข้อมูลนะคะ

00:23:18.181 --> 00:23:25.168
ก็ข้อมูลของเรานี่ จะเก็บข้อมูลอย่างไร มีการเชื่อมโยงอะไรบ้าง

00:23:25.383 --> 00:23:32.131
ทำไมต้องเก็บข้อมูลแบบนี้นะคะ แล้วก็ถ้าจำเป็นจริง ๆ

00:23:32.561 --> 00:23:37.798
กระบวนการในการเลือกที่เก็บข้อมูลก็สำคัญ คุณจะเก็บข้อมูลอย่างไร

00:23:37.798 --> 00:23:43.911
เก็บในเครื่องเซิร์ฟเวอร์เครื่องเดียว หรือจะมีการสำรองไปไว้ที่อื่น

00:23:43.911 --> 00:23:50.359
มีการกระจายข้อมูลกันเก็บ แต่ถ้าจำเป็นก็คือ สามารถเรียกใช้งานจากที่ไหนก็ได้นะคะ

00:23:50.359 --> 00:23:54.175
แล้วใครสามารถเรียกใช้งานได้บ้างนะคะ

00:23:54.963 --> 00:24:01.676
ผู้ใช้งานทั่วไปอาจจะได้แค่ดู แต่ถ้าเป็นผู้ดูแลระบบหรือระดับหัวหน้างาน

00:24:01.676 --> 00:24:05.788
สามารถแก้ไขข้อมูลได้ด้วยอย่างนี้นะคะ เป็นต้น

00:24:05.788 --> 00:24:12.270
อย่างเช่น อาจารย์นี่ก็สามารถดูเกรดนักศึกษาได้ทุกคนเลยนะคะ

00:24:12.843 --> 00:24:17.500
แต่อาจารย์เข้าไปแก้ไขเกรดให้พวกคุณไม่ได้นะ อาจารย์ดูได้อย่างเดียว

00:24:20.000 --> 00:24:25.035
นะคะ อันนี้ก็คือสิ่งที่เราออกแบบได้

00:24:25.035 --> 00:24:28.481
คนที่แก้ไขได้คืออะไร ก็เป็นเจ้าหน้าที่สำนักทะเบียน

00:24:28.481 --> 00:24:33.955
ถ้าสมมุติวัน… ถ้าสมมุติว่ามันมีข้อผิดพลาดก็สามารถท้วงติงได้

00:24:33.955 --> 00:24:40.644
แล้วเจ้าหน้าที่เท่านั้นนะคะ ที่จะเข้าไปปรับปรุงข้อมูลได้ อาจารย์ทำให้ไม่ได้นะคะ

00:24:43.689 --> 00:24:50.674
อันนี้ก็เป็นตัวอย่างนะคะ หลังจากนั้นพอเราวิเคราะห์ทุกอย่างเรียบร้อยรัดกุมดีแล้ว

00:24:50.674 --> 00:24:55.053
เราก็ลงมือสร้างฐานข้อมูลนะคะ

00:24:55.340 --> 00:24:58.226
เอาโครงร่างที่ได้จากการออกแบบของเรานี่

00:24:58.513 --> 00:25:02.762
สร้างข้อมูล… สร้างฐานข้อมูลขึ้นมาเพื่อเก็บข้อมูลจริงนะคะ

00:25:02.762 --> 00:25:05.629
หรืออาจจะมีการแปลงข้อมูลในระบบเดิม

00:25:05.629 --> 00:25:09.478
ให้เข้ากับระบบใหม่ที่เราพัฒนาขึ้นมาก็ได้นะคะ

00:25:09.478 --> 00:25:13.645
ในข้อมูลเดิมนี่ อาจจะเก็บข้อมูลไม่ได้เก็บในระบบจัดการฐานข้อมูลอะไรหรอก

00:25:13.645 --> 00:25:19.821
เก็บไว้ใน Excel นะคะ แต่ถามว่าระบบจัดการฐานข้อมูลปัจจุบันนี่

00:25:19.821 --> 00:25:26.332
มันสามารถนำเข้าข้อมูลที่เป็น Excel เข้าสู่ระบบจัดการฐานข้อมูลได้แล้วนะคะ

00:25:26.547 --> 00:25:31.104
อันนี้ก็เป็นความสามารถของระบบที่เราเลือกตั้งแต่แรกว่า

00:25:31.319 --> 00:25:34.910
ไอ้โปรแกรมที่เราใช้งานนี่ มันมีฟังก์ชันนี้ไหม

00:25:34.910 --> 00:25:39.617
ถามว่าเพื่ออะไร เกิดมันเป็นระบบที่สมมุติข้อมูลเดิมเราอยู่ใน Excel ทั้งหมดเลย

00:25:39.617 --> 00:25:44.761
เป็นแบบเป็นหมื่นเป็นแสนข้อมูล แต่ว่าระบบที่เราเลือกใช้นี่

00:25:45.334 --> 00:25:48.327
มันเอานำเข้าข้อมูลจาก Excel เข้ามาไม่ได้นี่

00:25:49.832 --> 00:25:56.861
แล้วมันจะดีกว่าระบบเดิมอย่างไรนะคะ ในเมื่อมันไม่ได้ทำให้เราทำงานง่ายขึ้นนะคะ

00:25:57.219 --> 00:25:58.378
หลังจากนั้นนี่

00:25:59.238 --> 00:26:04.806
พอมีการพัฒนาฐานข้อมูล หรือปรับปรุงฐานข้อมูลขึ้นมาแล้วนะคะ

00:26:05.594 --> 00:26:09.381
มันก็จะเป็นขั้นตอนของการติดตั้งระบบนะคะ

00:26:10.000 --> 00:26:14.391
มันก็ขึ้นอยู่กับว่า เราใช้ระบบจัดการฐานข้อมูลอะไรนะคะ

00:26:14.785 --> 00:26:18.296
มีใครเป็นผู้จัดการฐานข้อมูลหรือว่าเป็นแอดมินนั่นแหละ

00:26:18.690 --> 00:26:24.032
จำนวนพื้นที่จัดเก็บข้อมูลที่ต้องการใช้มีขนาดมากน้อยขนาดไหน

00:26:24.319 --> 00:26:29.373
ตารางต่าง ๆ ที่อยู่ในระบบมีกี่ตาราง มีตารางอะไรบ้างนะคะ

00:26:29.373 --> 00:26:32.503
อันนี้คือการติดตั้งใช้จริง

00:26:33.327 --> 00:26:42.382
เดี๋ยวพอเราสอบมิดเทอมเสร็จนะคะ ช่วงหลังปีใหม่ อาจารย์จะเริ่มพาทำ

00:26:45.033 --> 00:26:52.324
ภาษาที่ใช้ในการจัดการฐานข้อมูลอย่างง่าย ๆ นะคะ พาทำ พิมพ์เอง ลองดูสิว่า

00:26:52.969 --> 00:26:56.848
วิธีการเรียกใช้ฐานข้อมูลอย่างง่ายนี่มันเป็นอย่างไรนะคะ

00:27:01.470 --> 00:27:06.708
พอเราติดตั้งเสร็จปึ๊บ มันก็ต้องมีการทดสอบหาข้อผิดพลาดนะคะ

00:27:07.102 --> 00:27:13.982
ทั้งหาข้อผิดพลาด ทั้งประเมินความสามารถของระบบที่เราเอามาใช้นะคะ

00:27:13.982 --> 00:27:19.855
เพื่อดูสิว่ามันรองรับความต้องการของเราจริง ๆ หรือเปล่า

00:27:19.855 --> 00:27:25.756
ถูกต้องไหม ครบถ้วนดีไหมนะคะ ถ้ามันไม่ครบ เราจะทำอย่างไร

00:27:25.756 --> 00:27:29.061
หรือบางอย่างมันไม่จำเป็นนี่

00:27:29.061 --> 00:27:33.143
เราอาจจะไม่จำเป็นให้ User ใช้งานก็ได้

00:27:33.143 --> 00:27:39.403
อาจจะเป็นเฉพาะผู้ดูแลระบบใช้งานฟังก์ชันนั้นคนเดียวก็พอ อะไรอย่างนี้นะคะ

00:27:40.155 --> 00:27:49.197
ก็การทำงานเหล่านี้ จะต้องเตรียมคู่มือ เตรียมข้อมูล ทดสอบไว้ล่วงหน้าด้วยนะคะ

00:27:49.197 --> 00:27:55.230
เหมือนเวลาถ้าสมมุติว่า เราจบไปนี่ เราพัฒนาโปรแกรมใด ๆ ขึ้นมาก็ตาม

00:27:55.911 --> 00:28:03.436
เราจะต้องทำคู่มือการใช้งานด้วยนะคะ ไม่อย่างนั้น คนมาใช้งานระบบเรา

00:28:04.081 --> 00:28:09.311
ไม่เข้าใจ งง ว่าเอ้า ทำไมคุณตั้งชื่อตารางแบบนี้ล่ะ

00:28:09.311 --> 00:28:20.000
ทำไมตั้งชื่อคอลัมน์แบบนี้ ไอ้ตัวนี้แปลว่าอะไร แล้วจะกดตัวไหนเพื่อบันทึกข้อมูลนะคะ

00:28:20.000 --> 00:28:24.300
หรือถ้าต้องการแก้ไขข้อมูลต้องกดตรงไหนนะคะ

00:28:24.300 --> 00:28:26.629
เราต้องเตรียมข้อมูลไว้ให้เขาด้วย

00:28:26.629 --> 00:28:29.448
เพื่อใช้ในการทดสอบนะคะ

00:28:29.448 --> 00:28:36.848
หรืออาจจะเป็นตัวอย่างข้อมูลเพื่อลองมาพิมพ์เข้าไปในระบบดูสิว่ามันสามารถบันทึกได้ไหมนะคะ

00:28:37.493 --> 00:28:42.161
ถูกต้องหรือเปล่ากับสิ่งที่เราต้องการให้มันเป็นนะคะ

00:28:42.161 --> 00:28:47.467
ไม่ใช่ว่าอาจารย์พิมพ์ข้อมูลเข้าไปเยอะมาก สรุปเรียกดูข้อมูลไม่ได้

00:28:48.363 --> 00:28:52.471
มันก็ไม่มีประโยชน์นะคะ มันก็ต้องมีการทดสอบก่อน

00:28:54.155 --> 00:28:59.048
พอทดสอบแล้ว เป็นที่น่าพอใจ เราก็เอาไปติดตั้งใช้งานจริง

00:28:59.514 --> 00:29:03.433
แต่พอติดตั้งแล้ว มันก็ยังต้องมีการประเมินผลเหมือนกันนะคะ

00:29:03.433 --> 00:29:11.619
ว่าพอเราติดตั้งไปใช้จริงแล้ว มันให้การทำงานที่ดีเหมือนตอนที่ทดสอบหรือเปล่า

00:29:11.834 --> 00:29:16.903
หรือพอตอนทดสอบน่ะใช้งานได้ แต่พอมาทำงานจริง โอ้โห ข้อมูลเข้ามา

00:29:16.903 --> 00:29:24.944
ทีละหมื่นละแสนข้อมูลต่อวัน สรุประบบรับไม่ได้ ไม่ทันนะคะ

00:29:36.588 --> 00:29:38.324
ถอดความก็เจ๊ง

00:29:40.724 --> 00:29:41.690
โอเค

00:29:43.087 --> 00:29:44.619
รอล่ามแป๊บหนึ่ง

00:32:13.632 --> 00:32:15.867
โอเค ต่อค่ะ

00:32:16.978 --> 00:32:21.814
หลังจากนั้นนะคะ ถ้าเราทำงานไปแล้วนี่ ก็เหมือนที่บอกนะคะ

00:32:21.814 --> 00:32:26.044
ก็ต้องมีการบำรุงรักษา การปรับปรุง พอทำงานไปแล้วนี่

00:32:26.044 --> 00:32:28.915
แอดมินนะคะ หรือว่าผู้จัดการฐานข้อมูลนี่

00:32:29.130 --> 00:32:36.078
เขาจะต้องมีการเตรียมตัวบำรุงรักษาฐานข้อมูล ไม่ใช่ว่าใช้ ๆ ไปแล้วก็ไม่ได้กลับมาดูเลยนะคะ

00:32:36.078 --> 00:32:40.663
ทั้งต้องป้องกันระบบด้วยว่า ถ้าสมมติว่ามีปัญหาเกิดขึ้น

00:32:40.985 --> 00:32:48.311
เรามีการสำรองข้อมูลไว้หรือเปล่า แล้วตารางในการสำรองนี่ จัดทำไว้บ่อยขนาดไหน

00:32:49.099 --> 00:32:57.045
แล้วแต่ระบบนะคะ บางคนถ้าเป็นระบบที่สำคัญมาก ๆ เขาจะต้องสำรองข้อมูลทุกวันนะคะ

00:32:57.976 --> 00:33:01.554
หรือถ้าระบบมีปัญหานะคะ

00:33:02.844 --> 00:33:11.252
ข้อมูลที่สำรองไว้ สามารถกู้คืนได้ ภายในระยะเวลาเท่าไรนะคะ

00:33:11.467 --> 00:33:17.603
เหมือนว่าสมมุติวันนี้อาจจะมีภัยธรรมชาตินะคะ

00:33:17.961 --> 00:33:21.259
เป็นธนาคารแห่งหนึ่ง สำนักงานใหญ่ ภัยธรรมชาติ

00:33:21.796 --> 00:33:23.700
ถ้าสมมุติว่าข้อมูลเขาหาย

00:33:24.954 --> 00:33:29.457
มันเป็นไปไม่ได้เลยนะคะ เงินลูกค้าไม่รู้จะกี่บาท

00:33:30.496 --> 00:33:32.984
จะบอกว่า โอ๊ยไม่รู้ค่ะว่าตอนนี้คุณมีเงินเท่าไร

00:33:32.984 --> 00:33:36.802
เพราะเมื่อคืนมีภัยธรรมชาติ ข้อมูลหาย

00:33:36.802 --> 00:33:39.348
คำตอบนี้จะต้องไม่เกิดขึ้นนะคะ

00:33:39.706 --> 00:33:47.756
ข้อมูลทุกอย่างจะต้องถูกเรียกนำมาใช้เร็วที่สุดเท่าที่จะเป็นไปได้นะคะ อันนี้

00:33:47.756 --> 00:33:51.044
อย่างเช่นองค์กรใหญ่ ๆ เขาจะมีการซ้อมเลยนะคะว่า

00:33:51.259 --> 00:33:56.172
ซ้อมสำรองข้อมูล แล้วคุณสามารถกู้คืนข้อมูลขึ้นมาได้เร็วที่สุดเท่าไร

00:33:57.103 --> 00:34:01.440
บางคนซ้อมทุก ๆ  1 เดือนเลยด้วยซ้ำ เพราะว่า

00:34:01.691 --> 00:34:04.499
ข้อมูลบางอย่างมันสำคัญมาก ๆ นะคะ

00:34:05.216 --> 00:34:07.536
รวมถึงว่าถ้าระบบเราใช้ไปนี่

00:34:07.787 --> 00:34:11.941
มันมีการเพิ่มตารางไหม หรืออาจจะมีคอลัมน์เพิ่มเติมที่เพิ่มเข้ามา

00:34:11.941 --> 00:34:16.484
สามารถทำได้หรือเปล่านะคะ สิ่งเหล่านี้ก็ถือว่าเป็นการบำรุงรักษา

00:34:16.484 --> 00:34:19.111
ปรับปรุงฐานข้อมูลเช่นเดียวกันนะคะ

00:34:20.365 --> 00:34:25.183
โดยที่หัวข้อที่ 2 เหมือนที่อาจารย์บอก หัวข้อที่ 3 สินะคะ

00:34:25.505 --> 00:34:30.561
เป็นการแปลงแผนภาพ ER นะคะ รูปภาพที่เราเคยวาดนี่

00:34:31.170 --> 00:34:33.624
ให้มาเป็น Relation หรือว่าให้เป็นตารางนี่

00:34:34.376 --> 00:34:41.078
มันเป็นอะไรที่ง่ายมาก เพราะมันจะเริ่มต้นจากชื่อตารางก่อน ก็คือชื่อ Entity นะคะ

00:34:41.759 --> 00:34:45.216
โดยตารางใด ๆ นะคะ หรือรูปภาพใด ๆ นี่

00:34:45.718 --> 00:34:50.039
มันสามารถเอามาแปลงเป็นตารางได้ 1 ตารางทันทีนะคะ

00:34:50.039 --> 00:34:53.690
ตารางคืออะไร หัวข้อตารางเหมือนที่เราเคยทำไปแล้ว

00:34:54.012 --> 00:34:57.092
หัวข้อตารางคือจะเป็นสี่เหลี่ยมผืนผ้าแบบนี้ใช่ไหม

00:34:57.379 --> 00:35:00.556
แล้วก็ ER จำได้นะ เป็นรูปอย่างนี้นะ

00:35:00.878 --> 00:35:07.422
แล้วก็มีวงรี ๆ วงรีแบบนี้ เราเคยวาดไปแล้วนะคะ

00:35:08.318 --> 00:35:14.763
วาดไปแล้วนะคะ วาดไปแล้ว อันนี้น่าจะจำได้ว่า เอ๊ะ ER คืออะไร ทำไมอาจารย์พูดถึงนะคะ

00:35:17.701 --> 00:35:20.812
โดยนะคะ

00:35:24.108 --> 00:35:30.307
การแปลงนะคะ จากตาราง Entity ปกตินะคะ

00:35:31.203 --> 00:35:34.112
ชื่อตารางกับชื่อ Entity คือตัวเดียวกัน

00:35:34.363 --> 00:35:37.723
ชื่อคอลัมน์ก็คือชื่อ Attributes นั่นเองนะคะ

00:35:37.723 --> 00:35:41.971
โดยอันนี้คือ 1 ตารางนะคะ มองเป็น 1 ตาราง

00:35:43.870 --> 00:35:49.284
เช่นตัวอย่าง อันนี้ ส่วนบนตรงนี้ เราเคยวาดแล้วใช่ไหมคะ

00:35:51.541 --> 00:35:54.223
อะไรคือชื่อตาราง ชื่อตารางมาจาก

00:35:55.119 --> 00:35:59.969
ชื่อในกรอบสี่เหลี่ยมผืนผ้าตัวนี้ แค่นั้นเอง คุณก็เอาชื่อตรงนี้

00:36:00.471 --> 00:36:05.038
มาบอกว่าอันนี้คือชื่อตาราง Student นะ ชื่อตารางนักเรียนนะ

00:36:05.791 --> 00:36:06.871
นะคะ

00:36:07.301 --> 00:36:10.382
แล้วในตารางนักเรียน เก็บข้อมูลอะไรบ้าง

00:36:10.919 --> 00:36:14.018
เราก็เอาข้อมูลที่อยู่ในวงรีทุกอันนี้ค่ะ

00:36:14.018 --> 00:36:18.875
มาใส่เป็นคอลัมน์ตาราง แค่นั้นเอง

00:36:19.699 --> 00:36:22.754
ออกข้อสอบคือทำง่ายมาก ถ้าจำได้

00:36:24.617 --> 00:36:26.997
แต่ในตาราง อย่าลืมนะคะ

00:36:26.997 --> 00:36:30.928
ในรูปมีขีดเส้นใต้ ตารางก็ต้องขีดเส้นใต้

00:36:36.660 --> 00:36:40.000
พอเอาตารางมาเขียนเป็นความสัมพันธ์

00:36:40.687 --> 00:36:43.584
เราก็จะเอากรอบออกนะคะ เอากรอบออก

00:36:44.695 --> 00:36:57.234
โดยชื่อตารางจะอยู่หน้าสุดนะคะ หลังจากนั้นคอลัมน์ในตารางทั้งหมดจะอยู่ในวงเล็บนะคะ

00:36:57.413 --> 00:37:01.623
อันไหนที่เป็นคีย์หลักที่ขีดเส้นใต้อย่าลืมขีดด้วยนะคะ

00:37:04.023 --> 00:37:10.850
อย่าลืมขีดด้วยนะ แค่นี้เอง ในการแปลงรูปภาพให้มาเป็นความสัมพันธ์

00:37:11.352 --> 00:37:16.728
ถ้าใครยังไม่แม่น คุณทำเป็นตารางก่อนก็ได้ แต่จริง ๆ แล้วดูจากรูปนี่

00:37:16.728 --> 00:37:20.344
เราก็เอามาเขียนแบบนี้ได้เลย ง่ายมากนะคะ

00:37:22.064 --> 00:37:24.195
ซึ่งในหนังสือบางเล่ม

00:37:25.664 --> 00:37:28.451
ไอ้ตัวการออกแบบนี่ เขาอาจจะเป็นรูปภาพ

00:37:28.451 --> 00:37:32.939
หรือเขาอาจจะเขียนเป็นความสัมพันธ์แค่บรรทัดเดียวแบบนี้ ความหมายเดียวกันนะคะ

00:37:33.261 --> 00:37:36.703
อยู่ที่ว่าเขาจะอยากนำเสนอในรูปแบบอะไร

00:37:36.703 --> 00:37:40.048
เป็นตัวหนังสืออย่างเดียว หรือวาดออกมาเป็นภาพให้เห็นง่าย ๆ

00:37:40.048 --> 00:37:41.868
แล้วแต่เลยนะคะ

00:37:43.337 --> 00:37:46.849
ตารางนี้ก็เหมือนกัน หลักการทำงานเดียวกันค่ะ

00:37:47.745 --> 00:37:51.610
อะไรที่อยู่ในกรอบตัวนี้ ก็คือชื่อตาราง เอาไว้ข้างหน้า

00:37:51.610 --> 00:37:56.267
หลังจากนั้นสิ่งที่อยู่ใน Attributes ก็คือเป็นรูปวงรีตัวนี้

00:37:56.267 --> 00:38:04.048
ก็มาใส่ในวงเล็บแค่นั้นเองนะคะ แต่ส่วนมากเวลาสอบนักศึกษาจะจำไม่ได้นะคะ

00:38:04.048 --> 00:38:07.540
ว่ามันทำอย่างไรทั้ง ๆ ที่มันง่ายมากนะคะ

00:38:08.257 --> 00:38:09.728
ซึ่งอาทิตย์หน้าสอบ

00:38:12.128 --> 00:38:15.914
อาทิตย์หน้าสอบนะคะ เดี๋ยวอาจารย์จะนัดอีกที

00:38:16.272 --> 00:38:22.677
ว่าสอบน่าจะถึงสอบถึงวันนี้นะคะ ข้อสอบที่จะออกตั้งแต่วันแรกจนถึงวันนี้เลยนะคะ

00:38:25.328 --> 00:38:26.509
ซึ่งรูปนี้

00:38:27.333 --> 00:38:31.223
ออกสอบแน่ ๆ จำให้ได้นะคะ เพราะมันง่ายมาก

00:38:36.597 --> 00:38:45.696
แต่ถ้ารูปนั้นนะคะ แผนภาพนั้นนี่ มันมีส่วนของตารางอ่อนแอนะคะ ก็คือ Weak Entity

00:38:46.233 --> 00:38:50.354
สัญลักษณ์ของ Weak Entity คือเป็นสี่หลี่ยมซ้อนกัน 2 วงนะคะ

00:38:50.784 --> 00:38:58.995
หลักการคือถ้ามันไป… ส่วนของค่าที่มีความอ่อนแอนี่

00:38:58.995 --> 00:39:05.608
เราจะเอาคีย์หลักของอีกตารางหนึ่งที่มันมีความสัมพันธ์ด้วยมาใส่นะคะ

00:39:05.608 --> 00:39:12.593
เช่นรูปนี้ เห็นไหมคว่ามันจะมี สี่เเหลี่ยมซ้อนกัน 2 อันตรงข้างล่างนะคะ

00:39:13.310 --> 00:39:17.377
ถ้าสมมุติว่าเราจะมาแปลงเป็นความสัมพันธ์

00:39:17.843 --> 00:39:21.562
อันนี้คือคีย์หลักของตารางที่มีค่าอ่อนแอ

00:39:22.135 --> 00:39:29.662
หลักการคือ ให้เอาคีย์หลักของอีกตารางหนึ่งที่มันมีความสัมพันธ์ด้วยมาใส่นะคะ

00:39:30.000 --> 00:39:32.465
ผลลัพธ์ที่ได้จากตารางอ่อนแอตัวนี้

00:39:32.465 --> 00:39:36.453
สังเกตไหมคะว่า จริง ๆ มันจะมีแค่ 2 Attributes ใช่ไหมคะ

00:39:36.453 --> 00:39:40.420
ข้อมูลเกี่ยวกับผู้ปกครองนักเรียนนะคะ

00:39:40.420 --> 00:39:44.582
ข้อมูลผู้ปกครองนักเรียน ถ้าเรามาแปลงเป็นความ… เป็นตาราง

00:39:44.761 --> 00:39:50.972
เราจะต้องเอาส่วนของรหัสนักเรียนมาด้วยนะคะ

00:39:51.545 --> 00:39:54.432
เวลาเขียนก็เพิ่มนะคะ

00:39:54.432 --> 00:39:59.982
คีย์หลักของตารางที่ผ่านมาก็คือมีรหัสนักเรียนเข้ามาเพิ่มแค่นั้นเอง อันนี้คือ

00:40:00.591 --> 00:40:06.648
สำหรับตารางที่มีความอ่อนแอก็คือการต้องไปพึ่งค่าของตารางอื่นนั่นเองนะคะ

00:40:06.648 --> 00:40:11.367
อันนี้ก็ไม่ยากถ้าจำได้นะคะ ไม่ยากเลย

00:40:13.732 --> 00:40:17.560
ต่อมา การแปลงแผนภาพนะคะให้เป็นความสัมพันธ์

00:40:17.847 --> 00:40:21.595
มันจะมีอยู่ 3 รูปแบบนะคะ แบบ 1 ต่อ 1

00:40:21.595 --> 00:40:26.294
แบบ 1 ต่อกลุ่ม กับแบบกลุ่มต่อกลุ่ม อันนี้เรารู้อยู่แล้วนะคะ

00:40:26.294 --> 00:40:28.052
อันนี้เราเคยเรียนมาแล้ว

00:40:31.993 --> 00:40:36.539
โดยการแทนความสัมพันธ์แบบ 1 ต่อ 1 นี่นะคะ

00:40:36.754 --> 00:40:41.002
ก็คือชื่อของ ตารางนี่

00:40:41.002 --> 00:40:44.911
เรารู้อยู่แล้วใช่ไหมคะ ก็จะมาตั้ง แล้วความสัมพันธ์ก็

00:40:46.201 --> 00:40:50.381
วาดง่าย ๆ นะคะ โดยการเพิ่มคีย์หลัก

00:40:51.205 --> 00:40:53.582
คีย์หลักก็คือตัวที่มันขีดเส้นใต้น่ะค่ะ

00:40:53.797 --> 00:40:57.084
ของอีกตารางหนึ่งที่เรามีความสัมพันธ์กันมาใส่

00:40:57.586 --> 00:41:02.872
เพื่อให้มัน สามารถเชื่อมโยงกันได้ อันนี้คือง่ายมากจากรูปนะคะ

00:41:04.377 --> 00:41:08.974
คีย์หลักก็คือตัวขีดเส้นใต้ของนักเรียนตารางนี้นะคะ

00:41:08.974 --> 00:41:14.847
ของบัณฑิตนั่นเอง ของบัณฑิตนะคะ ที่จบการศึกษา ก็จะมีรหัสนักศึกษา

00:41:15.380 --> 00:41:19.486
เขาทำวิทยานิพนธ์เรื่องอะไรนะคะ

00:41:19.486 --> 00:41:23.483
ก็จะมีรหัสวิทยานิพนธ์ โดยตารางนี้ เห็นไหมคะว่า

00:41:23.483 --> 00:41:26.013
มันมีความสัมพันธ์แบบ 1 ต่อ 1

00:41:26.765 --> 00:41:27.929
มีเลข 1 กำกับ

00:41:29.470 --> 00:41:33.990
ถ้าแบบ 1 ต่อ 1 จะต้องเอาคีย์หลักนะคะ

00:41:34.384 --> 00:41:38.484
เลือกตารางใดตารางหนึ่งก็พอนะคะ มาใส่

00:41:39.057 --> 00:41:46.533
สิ่งที่จะเกิดขึ้นคือ สมมุติว่าเราจะเลือกคีย์นะคะ

00:41:46.533 --> 00:41:51.701
อย่างตัวนี้สมมุติว่าอาจารย์จะเอาคีย์หลักของตารางวิทยานิพนธ์

00:41:51.701 --> 00:41:56.562
ไปใส่ให้กับตารางนักเรียนก็ได้นะคะ ก็ได้

00:41:56.562 --> 00:42:01.298
หรือเอารหัสนักศึกษามาใส่ในตารางวิทยานิพนธ์ก็ได้

00:42:01.298 --> 00:42:05.180
อันนี้เฉพาะความสัมพันธ์แบบ 1 ต่อ 1 เท่านั้นนะคะ

00:42:05.180 --> 00:42:09.819
ที่เลือกตัวใดตัวหนึ่งก็ได้นะคะ ที่มีความสัมพันธ์กัน

00:42:10.428 --> 00:42:17.605
แต่ถ้าเป็นความสัมพันธ์แบบ 1 ต่อกลุ่มนะคะ 1 ต่อกลุ่มนะ

00:42:17.999 --> 00:42:24.741
เราจะเอาคีย์หลักก็คือตัวขีดเส้นใต้ จากฝั่งที่มีความสัมพันธ์เป็น 1 เท่านั้น

00:42:25.386 --> 00:42:29.405
ไปใส่ในฝั่งที่มีความสัมพันธ์เป็นกลุ่ม

00:42:29.727 --> 00:42:31.559
อย่างเช่นรูปนี้นะคะ

00:42:32.741 --> 00:42:37.264
รูปนี้นะ ความสัมพันธ์เป็น 1 จะอยู่ฝั่งนี้นะคะ

00:42:37.479 --> 00:42:42.137
อันนี้ความสัมพันธ์เป็นกลุ่ม แทนด้วยตัว M นะคะ

00:42:42.925 --> 00:42:47.303
เราจะเอาตัวขีดเส้นใต้ ก็คือคีย์หลัก

00:42:47.733 --> 00:42:51.471
ของตารางที่มีความสัมพันธ์เป็น 1 เท่านั้น

00:42:52.080 --> 00:42:56.984
ไปเพิ่มลงในตารางที่มีความสัมพันธ์เป็นกลุ่มนะคะ

00:42:57.414 --> 00:42:58.611
นั่นก็คือ

00:43:03.233 --> 00:43:04.421
เห็นไหมคะ

00:43:05.138 --> 00:43:09.412
ฝั่งนี้ ความสัมพันธ์เป็นกลุ่มใช่ไหมคะ

00:43:09.412 --> 00:43:14.151
ตัวคีย์หลัก คือตัวขีดเส้นใต้เขามีตัวนี้ตัวเดียว

00:43:14.151 --> 00:43:18.979
เราก็จะเอาของตารางอีกตารางหนึ่งมาเพิ่มให้ ซึ่งตารางนี้

00:43:19.301 --> 00:43:27.044
มีความสัมพันธ์เป็น 1 มาเพิ่มให้ อันนี้คือความสัมพันธ์แบบ 1 ต่อกลุ่มนะคะ

00:43:27.331 --> 00:43:29.156
อันนี้ก็ยังไม่ยาก

00:43:30.983 --> 00:43:32.014
แต่ถ้า

00:43:33.769 --> 00:43:37.568
เป็นความสัมพันธ์แบบกลุ่มต่อกลุ่มนะคะ

00:43:38.643 --> 00:43:48.409
โดยความสัมพันธ์นี่ บางทีมันอาจจะมีข้อมูลที่เกิดขึ้นของมันเองนะคะ ข้อมูลที่เกิดขึ้น

00:43:49.090 --> 00:43:52.589
ซึ่งวิธีการแก้ปัญหา ปัญหามันจะอยู่ตรงนี้

00:43:52.876 --> 00:43:54.596
ตรงที่อาจารย์กรอบสีแดงนี่

00:43:55.205 --> 00:44:02.203
ในความสัมพันธ์ของกลุ่มต่อกลุ่มนี่ มันอาจจะมีข้อมูลที่เพิ่มเติมขึ้นมานะคะ

00:44:02.776 --> 00:44:05.834
ในกรณีนี้นะคะ

00:44:06.586 --> 00:44:10.447
เราก็จะสร้างความสัมพันธ์ขึ้นมาใหม่เลยนะคะ

00:44:10.841 --> 00:44:15.710
โดยวิธีการคือ เอาคีย์หลัก

00:44:15.925 --> 00:44:18.138
ของทั้ง 2 ความสัมพันธ์

00:44:19.607 --> 00:44:24.174
มาสร้างใหม่ให้กับความสัมพันธ์ตรงนี้นะคะ

00:44:24.174 --> 00:44:30.006
เอา 2 อันนี้มาใส่เพิ่ม ทั้ง 2 ฝั่งเลยนะคะ

00:44:30.436 --> 00:44:36.697
เอาจากตารางทั้ง 2 ตารางนี่ มาเพิ่มให้กับความสัมพันธ์ใหม่เลยนะคะ

00:44:36.912 --> 00:44:39.084
ก็จะกลายเป็นแบบนี้ค่ะ

00:44:40.517 --> 00:44:45.859
อันนี้คือตารางที่เกิดขึ้นใหม่ สำหรับความสัมพันธ์แบบกลุ่มต่อกลุ่มนะคะ

00:44:45.859 --> 00:44:51.978
มันจะเอาข้อมูลรหัสนักเรียน แล้วก็รหัสตารางเรียนวิชานะคะ

00:44:51.978 --> 00:44:54.540
มาเพิ่มจากทั้ง 2 ฝั่งเลย

00:44:54.540 --> 00:44:59.914
เมื่อก่อนคือเราต้องเลือกจากฝั่งใดฝั่ง 1 เท่านั้นใช่ไหมคะ ถ้าเป็นความสัมพันธ์แบบ 1 ต่อ 1

00:44:59.914 --> 00:45:03.263
ถ้าเป็นความสัมพันธ์แบบ 1 ต่อกลุ่ม เราจะเอามาจาก…

00:45:03.585 --> 00:45:09.530
เราจะเอาคีย์หลักมาจากความสัมพันธ์ที่เป็นฝั่ง 1 เท่านั้น แต่ถ้าเป็นกลุ่มต่อกลุ่ม

00:45:09.530 --> 00:45:14.716
เราจะเอาคีย์หลักมาจากทั้ง 2 ตารางที่มีความสัมพันธ์กัน มาสร้างตารางใหม่

00:45:15.504 --> 00:45:23.088
อันนี้คือจุดเด่นของแต่ละการแปลงตารางให้มันเป็นความสัมพันธ์นะคะ

00:45:24.127 --> 00:45:32.836
วิธีการทำ เรารู้แล้ว เดี๋ยวจะให้ลองทำเองสัก 1 ข้อนะคะ

00:45:34.090 --> 00:45:41.076
ในห้อง เดี๋ยวอาจารย์จะเดินดูนะคะ ทำเลย ทำเองนะคะ

00:45:41.578 --> 00:45:45.093
เอาแค่ 1 รูป รูปนี้ก็พอ

00:45:46.024 --> 00:45:47.551
ในรูปนี้มีกี่ตาราง

00:45:48.554 --> 00:45:51.596
มี 1 ตาราง 2 ตาราง 3 ตาราง

00:45:51.918 --> 00:45:57.845
ซึ่งในความสัมพันธ์ของรูปนี้ มีความสัมพันธ์แบบ 1 ต่อกลุ่ม

00:45:58.275 --> 00:45:59.989
กับแบบกลุ่มต่อกลุ่ม

00:46:01.852 --> 00:46:07.327
ลองดูสิว่า จะทำได้ไหมนะคะ

00:46:07.864 --> 00:46:12.273
ความสัมพันธ์ที่เกิดขึ้นจะมีอยู่ 2 ความสัมพันธ์นะ

00:46:12.775 --> 00:46:15.665
ลองดูสิว่าจากตัวอย่างที่อาจารย์ให้

00:46:15.665 --> 00:46:20.316
เข้าใจหรือเปล่า เอาอย่างแรกเลย แปลง ER

00:46:21.033 --> 00:46:24.529
ให้เป็นตารางให้ได้ก่อน

00:46:24.529 --> 00:46:27.719
ลองดูสิว่าจำได้ไหมที่อาจารย์สอน

00:46:27.719 --> 00:46:32.959
พอคุณแปลงตารางได้ปึ๊บ คุณถึงค่อยมาเชื่อมโยงความสัมพันธ์ดูแล้วกันว่า

00:46:32.959 --> 00:46:35.819
แต่ละตารางที่คุณทำออกมาได้นี่

00:46:35.819 --> 00:46:39.737
มันเชื่อมโยงกับตารางอื่นนี่ มันเป็นอย่างไรนะคะ

00:46:39.737 --> 00:46:43.124
ขั้นตอนแรกเปลี่ยนจากรูปภาพให้เป็นตาราง

00:46:43.124 --> 00:46:47.173
พอเป็นตารางได้ค่อยมาดูความสัมพันธ์นะคะ

00:46:47.173 --> 00:46:48.776
ลองทำดู

00:46:50.353 --> 00:46:55.699
ทำเองนะคะ ทำเอง เดี๋ยวอาจารย์จะเดินดู กระดาษมีอยู่แล้วนะ

00:46:56.989 --> 00:46:58.680
โอเคค่ะ ทำเลย

00:47:16.784 --> 00:47:19.292
ล่ามคะ วันนี้ก็ประมาณนี้แหละค่ะ

00:47:19.292 --> 00:47:22.074
เนื้อหาจะมีแค่นี้ เดี๋ยวจะให้ทำงานห้องค่ะ

00:47:22.074 --> 00:47:24.393
วันนี้ขอบคุณมากนะคะ ขอบคุณล่ามด้วยนะคะ

00:47:24.393 --> 00:47:25.736
ขอบคุณมากค่ะ

00:47:25.736 --> 00:47:28.222
[สิ้นสุดการถอดความ]

