﻿WEBVTT

00:00:15.526 --> 00:00:20.527
(อาจารย์เกวลี) โอเค เดี๋ยวเริ่มเลยแล้วกันนะคะ

00:00:22.033 --> 00:00:26.379
โอเคค่ะ วันนี้จะเป็นเนื้อหาบทที่ 2 นะคะ

00:00:26.379 --> 00:00:34.528
จะเกี่ยวข้องกับสถาปัตยกรรมของฐานข้อมูล แล้วก็ทฤษฎีเกี่ยวกับแบบจำลองข้อมูลนะคะ

00:00:34.760 --> 00:00:40.169
ข้อมูลที่เราใช้อยู่ปัจจุบันนี่ บางทีทุกคนก็จะไม่รู้ว่าทำไมเราต้องเก็บ

00:00:40.517 --> 00:00:45.062
เหมือนนักศึกษา 1 คนทำไมต้องถามด้วยล่ะ ว่าเราชื่ออะไร นามสกุลอะไร

00:00:45.062 --> 00:00:54.163
เรียนจบที่ไหนมานะคะ เกรดเฉลี่ยตอนจบ ม.6 หรือจบสายอาชีพ ได้เกรดเฉลี่ยเท่าไร

00:00:54.356 --> 00:00:58.217
เทอมที่แล้วเราเรียนไปกี่วิชานะคะ

00:00:58.217 --> 00:01:01.932
ได้คะแนนเท่าไร ได้เกรดเท่าไร ทำไมต้องดเก็บแบบนี้นะคะ

00:01:03.013 --> 00:01:05.157
ทุกอย่างก็จะมีเหตุมีผล เพราะว่า

00:01:05.157 --> 00:01:14.679
ข้อมูลทุกรูปแบบนี่ มันก็จะมีเนื้อหาความสำคัญของชุดข้อมูลนั้น ๆ อยู่นะคะ

00:01:15.799 --> 00:01:20.633
โดยที่เราจะเรียกสิ่งนั้น ๆ ว่า แนวคิดเกี่ยวกับการออกแบบฐานข้อมูล

00:01:20.633 --> 00:01:23.640
หรือว่าสถาปัตยกรรมของฐานข้อมูลนะคะ

00:01:24.103 --> 00:01:32.568
มันก็จะเป็นข้อกำหนด แล้วก็ข้อตกลง รวมถึงขอบเขต หรืออาจจะเป็นกรอบความคิดนะคะ

00:01:32.800 --> 00:01:36.830
ในการบรรยายว่าฐานข้อมูลนั้น ๆ ควรจะเป็นอย่างไรนะคะ

00:01:37.100 --> 00:01:41.408
โครงสร้าง ก็คือข้อมูลที่เราจะเก็บมีอะไรบ้าง

00:01:41.678 --> 00:01:47.173
ส่วนประกอบที่เอามาประกอบกัน จนเป็นระบบฐานข้อมูลมีอะไรนะคะ

00:01:47.443 --> 00:01:52.905
โดยที่สถาปัตยกรรมฐานข้อมูลนี่ มันจะมีส่วนประกอบสำคัญอยู่ 3 ส่วนนะคะ ก็คือ

00:01:53.137 --> 00:02:00.257
ในตัวของสถาปัตยกรรมระบบเองนะคะ และก็ความเป็นอิสระของข้อมูลนะคะ

00:02:00.257 --> 00:02:06.871
เดี๋ยวจะอธิบายว่าแต่ละอันคืออะไร กับภาษาที่ใช้ในการจัดการฐานข้อมูลนะคะ

00:02:07.025 --> 00:02:14.196
3 อย่างนี้จะต้องทำงานร่วมกัน โดยสถาปัตยกรรมของฐานข้อมูลนี่

00:02:14.621 --> 00:02:24.445
มันจะเป็นเหมือนกับขอบเขตนะคะ หรือกรอบ ถ้าเป็นภาษาทางเชิงวิชาการ เรียกว่า "กรอบ"

00:02:24.677 --> 00:02:30.531
ที่ใช้ประโยชน์ในการบรรยายว่า ทำไมเราถึงสร้างฐานข้อมูลแบบนี้

00:02:30.724 --> 00:02:32.598
ทำไมเราถึงเก็บข้อมูลแบบนี้

00:02:32.984 --> 00:02:37.622
และในฐานข้อมูลนี่ เรามีโครงสร้างเก็บข้อมูลแบบไหนบ้างนะคะ

00:02:38.008 --> 00:02:44.359
ซึ่งหลัก ๆ แล้วนี่ โครงสร้างที่ใช้ในการสร้างฐานข้อมูลนี่ มันจะมีอยู่ 3 ระดับนะคะ

00:02:44.359 --> 00:02:47.792
มีระดับภายนอก ระดับภายใน แล้วก็ระดับแนวคิด

00:02:47.793 --> 00:02:50.596
เดี๋ยวจะอธิบายไปทีละอย่างทีละอย่างนะคะ

00:02:53.106 --> 00:03:00.747
ความเป็นอิสระของข้อมูลคืออะไรนะคะ ก็คือการที่ผู้ใช้งานสามารถเปลี่ยนแปลงข้อมูล

00:03:01.095 --> 00:03:08.752
อาจจะเป็นในระดับของการออกแบบฐานข้อมูล หรือระดับ ถึงขั้นการเก็บข้อมูลแล้วก็ได้

00:03:08.752 --> 00:03:14.343
โดยที่ถ้าเรามีการเปลี่ยนข้อมูล หรือเปลี่ยนแปลงรูปแบบการจัดเก็บข้อมูล

00:03:14.729 --> 00:03:16.764
โปรแกรมที่ใช้งาน

00:03:17.421 --> 00:03:20.704
จะไม่ได้รับผลกระทบจากการเปลี่ยนแปลงนะคะ

00:03:20.704 --> 00:03:22.400
โปรแกรมก็อยู่ส่วนของโปรแกรม

00:03:22.400 --> 00:03:25.881
ข้อมูลก็อยู่ส่วนของข้อมูล จะแยกออกจากกันนะคะ

00:03:26.267 --> 00:03:30.496
โดยที่ผู้ใช้งานนี่จะมองเห็นแค่ว่า

00:03:31.191 --> 00:03:35.875
การเก็บข้อมูลระดับภายนอก ก็คือเราเก็บข้อมูลอะไรบ้างนะคะ

00:03:36.068 --> 00:03:39.548
เหมือนเวลาคุณอยากเล่น TikTok

00:03:40.000 --> 00:03:43.697
อยากเล่น Facebook อยากเล่น Instagram

00:03:45.049 --> 00:03:49.521
เขาจะถามว่าคุณชื่ออะไร มีอีเมลหรือเปล่า มีเบอร์โทรศัพท์ไหม

00:03:50.309 --> 00:03:53.194
มีรูปโปรไฟล์เป็นรูปอะไร อันนี้คือ

00:03:54.044 --> 00:03:59.734
ข้อมูลระดับภายนอก ที่ผู้ใช้งานอย่างเรา ๆ นี่ เป็นคนให้ข้อมูลไป

00:03:59.734 --> 00:04:06.250
แล้วก็เป็นสิ่งที่เราเป็นคนเห็นเองว่า ข้อมูลที่กรอกลงไปนี่มีข้อมูลอะไรบ้างนะคะ

00:04:06.250 --> 00:04:11.086
แต่ถามว่าเราอยากเปลี่ยนแปลงได้ไหม ว่านอกจากรูปภาพนี่

00:04:11.472 --> 00:04:14.451
อยากให้เขาขอเกี่ยวกับ อะไรดีล่ะ

00:04:15.494 --> 00:04:18.088
สถานะการเรียน

00:04:18.088 --> 00:04:24.622
เราจะไปบอกเขาว่าอยากบอก อยากให้เพิ่มเมนูตรงนี้ได้ไหม เราทำไม่ได้นะคะ

00:04:24.854 --> 00:04:27.757
เพราะอันนั้นเป็นระดับโครงสร้าง ระดับแนวคิด ระดับภายใน

00:04:27.757 --> 00:04:31.458
ซึ่งผู้ใช้งานธรรมดานี่จะแก้ไขไม่ได้นะคะ

00:04:32.771 --> 00:04:33.837
โดยที่

00:04:34.764 --> 00:04:39.289
เพราะฉะนั้นนี่ สมมติเรามีการเปลี่ยนแปลงข้อมูล เราจะเรียกว่าเปลี่ยนแปลงข้อมูลในระดับที่ต่ำ

00:04:39.289 --> 00:04:41.874
ก็คือข้อมูลส่วนตัวเรานี่แหละนะคะ

00:04:42.337 --> 00:04:46.684
ถ้าเราเปลี่ยนแปลงเฉพาะข้อมูลเราตัวเองนี่ มันจะไม่กระทบกับคนอื่น

00:04:46.877 --> 00:04:50.360
รวมถึงไม่ได้กระทบกับ Facebook ไม่ได้กระทบกับ Instagram

00:04:50.360 --> 00:04:53.706
TikTok เขาก็ยังใช้งานปกติได้ ถึงแม้ว่าคุณจะบอกว่า

00:04:53.899 --> 00:04:57.024
เปลี่ยนแปลง อาจจะเปลี่ยนแปลงรูปโปร์ไฟล์

00:04:57.526 --> 00:05:04.318
ถามว่าโปรแกรมมันจะพังไหม ไม่นะคะ อันนี้คือการเปลี่ยนแปลงระดับต่ำ

00:05:04.318 --> 00:05:07.856
ก็คือเป็นการเปลี่ยนแปลง ของผู้ใช้งานโดยตรงนะคะ

00:05:14.036 --> 00:05:22.165
ความเป็นอิสระของข้อมูลเชิงตรรกะ ก็คือการเปลี่ยนแปลงมุมมองของผู้ใช้งาน

00:05:22.667 --> 00:05:27.502
อย่างเช่น คุณอยากจะ... วันนี้เราอัปรูปไป 4 รูปนะคะ

00:05:27.772 --> 00:05:30.797
คุณอยากจะสลับตำแหน่งนะคะ

00:05:31.338 --> 00:05:35.083
ย้ายจากรูปสุดท้ายมารูปที่ 1 ถามว่า

00:05:35.353 --> 00:05:38.241
โปรแกรมนั้นจะพังไหม ไม่พังนะคะ

00:05:38.550 --> 00:05:44.156
เพราะมันเป็นถือว่าเป็นการเปลี่ยนแปลงภายนอก ไม่ได้เปลี่ยนแปลง Code โปรแกรม

00:05:44.156 --> 00:05:53.556
ไม่ได้บอกให้ผู้ดูแลระบบลบเมนูตรงนี้ออก ไม่ใช่นะคะ

00:05:53.556 --> 00:05:58.670
อันนี้ก็คือถ้าผู้ใช้งาน อยากเปลี่ยนแปลงข้อมูลส่วนตัวของตัวเองอย่างนี้

00:05:58.670 --> 00:06:04.364
ก็ใช้งานได้เลยนะคะ ไม่กระทบกับคนอื่น ไม่กระทบกับระบบโดยรวมนะคะ

00:06:04.673 --> 00:06:08.945
รวมถึง ความเป็นอิสระของข้อมูลเชิงกายภาพนะคะ

00:06:09.447 --> 00:06:13.127
ถ้าสมมติว่าวันหนึ่ง Facebook

00:06:13.784 --> 00:06:20.792
ย้ายเครื่องคอมพิวเตอร์ในการเก็บข้อมูลคนใช้งาน ถามว่าย้ายจากเครื่องหนึ่งไปอีกเครื่องหนึ่ง

00:06:20.792 --> 00:06:23.249
ถามว่าเรายังใช้ Facebook ได้ไหม ใช้ได้

00:06:23.906 --> 00:06:32.663
มันไม่กระทบกับเรานะคะ มันถือว่าเป็นโครงสร้างของข้อมูลระดับภายใน ก็คือผู้ให้บริการ

00:06:32.663 --> 00:06:36.249
เขาอาจจะมีการปรับเปลี่ยน ย้ายจากเครื่อง A ไปยังเครื่อง B

00:06:36.906 --> 00:06:43.377
แต่ผู้ใช้งานก็ยังสามารถทำงานได้ตามปกติ ไม่ได้รู้สึกถึงความผิดปกติใด ๆ

00:06:43.609 --> 00:06:48.766
อาจจะมีช่วงที่แบบ Restart เครื่องของตัว Server ของเขาบ้าง อะไรอย่างนี้นะคะ

00:06:48.766 --> 00:06:54.464
แต่ถามว่า Facebook เราหายไปไหม ไม่หายนะคะ อันนี้คือตัวอย่างคร่าว ๆ

00:06:54.464 --> 00:06:57.673
ว่าเชิงตรรกะเป็นอย่างไร เชิงกายภาพเป็นอย่างไร

00:07:00.801 --> 00:07:08.573
ต่อมา ภาษาหลักของระบบจัดการฐานข้อมูลนะคะ ก็จะมีอยู่ 3 ภาษาหลัก ๆ นะคะ

00:07:09.075 --> 00:07:15.752
อันนี้หมายถึงว่าภาษาเชิงโครงสร้างที่ใช้นะคะ ไม่ได้หมายถึงชื่อภาษาทางโปรแกรม

00:07:16.331 --> 00:07:20.094
อันแรก คือ ภาษาสำหรับนิยามข้อมูลนะคะ

00:07:20.403 --> 00:07:26.738
ก็จะเป็นภาษาที่ใช้ในการกำหนดโครงสร้างของฐานข้อมูลนะคะว่า

00:07:26.738 --> 00:07:29.937
ระดับแนวคิดก็คือคุณวางแผนไว้ว่าอย่างไร

00:07:30.169 --> 00:07:36.389
อย่างเช่น อาจารย์อาจจะ พอคุณเรียนปีสูง ๆ ขึ้น จะต้องได้ทำ Project

00:07:36.698 --> 00:07:42.683
อาจจะเขียนโปรแกรมเป็นของตัวเอง สมมติว่าได้ทำโพรเจกต์เกี่ยวกับร้านขายหนังสือ

00:07:43.533 --> 00:07:46.155
ในร้านหนังสือร้านหนึ่ง เราจะต้องเก็บข้อมูลอะไรบ้าง

00:07:46.580 --> 00:07:50.991
เราต้องเขียนออกมาให้ได้นะคะ สิ่งนี้เราจะเรียกว่า "ระดับแนวคิด"

00:07:51.532 --> 00:08:00.673
เราจะมาให้ความหมายว่าในฐานข้อมูลเรานี่ ระหว่างผู้ใช้งาน สมาชิก เจ้าของร้าน

00:08:01.098 --> 00:08:04.935
สามารถทำอะไรได้บ้าง สิ่งเหล่านี้ จะเรียกว่า "View" นะคะ

00:08:04.935 --> 00:08:07.613
หรือว่ามุมมองของผู้ใช้งานแต่ละคน

00:08:07.961 --> 00:08:11.909
เอาง่าย ๆ ยกตัวอย่างอีกแล้ว Facebook Facebook ในหน้าที่คุณดู

00:08:11.909 --> 00:08:14.967
กับหน้าที่เพื่อนดูอาจจะไม่เหมือนกัน

00:08:16.126 --> 00:08:20.276
ใน Facebook เราสามารถกำหนดได้ว่า รูปนี้ฉันจะเก็บไว้ดูคนเดียว

00:08:20.894 --> 00:08:26.221
หรือรูปนี้จะให้เพื่อนดูได้ รูปนี้จะให้ใครก็ได้มาดู

00:08:27.534 --> 00:08:35.620
ไม่ได้ปิดกั้น อย่างนี้ก็มี อันนี้คือการกำหนดสถานะของมุมมองในการดูข้อมูลของเรานะคะ

00:08:35.620 --> 00:08:39.618
เราจะกำหนดตั้งแต่การกำหนดโครงสร้างของฐานข้อมูลเลยว่า

00:08:40.000 --> 00:08:45.244
ผู้ใช้งานแต่ละคนดูข้อมูลส่วนไหนได้บ้างนะคะ

00:08:46.673 --> 00:08:51.846
ต่อมาเป็นภาษาในการจัดการข้อมูล อันนี้จะเป็นภาษาเชิง Programming

00:08:51.846 --> 00:08:55.830
ซึ่งไว้สำหรับการจัดการข้อมูลภายในฐานข้อมูลนะคะ

00:08:56.448 --> 00:09:04.926
ก็จะเป็นตั้งแต่การค้นหาข้อมูล การเพิ่ม การลบ การแก้ไขข้อมูลในฐานข้อมูลนะคะ

00:09:04.926 --> 00:09:10.094
อันนี้ก็จะสามารถทำได้ตามสิทธิ์ของผู้ใช้งานแต่ละคน

00:09:10.828 --> 00:09:13.949
บางคนค้นหาได้ แต่เพิ่มไม่ได้

00:09:14.490 --> 00:09:21.736
บางคนเพิ่มได้ แต่ห้ามลบนะคะ อันนี้ก็เป็นคำสั่งที่ใช้ภายในฐานข้อมูล

00:09:22.277 --> 00:09:25.975
ต่อมา เป็นภาษาควบคุมนะคะ

00:09:26.284 --> 00:09:31.191
มันจะเป็นภาษาที่เอาไว้สำหรับ การควบคุมความถูกต้องของข้อมูล

00:09:31.770 --> 00:09:37.846
เช่น อะไรบ้าง อย่างเช่น อาจารย์ให้คุณกรอกชื่อนะคะ กรอกชื่อ

00:09:37.846 --> 00:09:48.316
แต่ว่านักศึกษาบางคนลืมเปลี่ยนภาษา หรือลืมเปลี่ยนปุ่ม หรือเปิดปุ่มตัวเลขไว้นะคะ

00:09:48.548 --> 00:09:52.890
กลายเป็นว่าพิมพ์ชื่อตัวเองเป็นตัวเลข ภาษาระดับควบคุม ก็คือ

00:09:52.890 --> 00:09:56.372
มันจะเป็นการตรวจสอบว่าข้อมูลที่นักศึกษาใส่มา

00:09:56.951 --> 00:10:01.597
ถูกหรือผิด เช่น อาจารย์กำหนดให้กรอกได้เฉพาะตัวหนังสือเท่านั้น

00:10:02.060 --> 00:10:07.627
ใส่ตัวเลขไม่ได้นะคะ หรือการเกิดภาวะพร้อมกัน อย่างเช่น

00:10:09.288 --> 00:10:10.926
จองตั๋วคอนเสิร์ต

00:10:11.737 --> 00:10:12.937
ดังมาก

00:10:13.401 --> 00:10:15.834
เข้ามาจองพร้อมกันสัก 50,000 คน

00:10:16.375 --> 00:10:22.362
เราจะมีการจัดการคน 50,000 คน อย่างไรนะคะ

00:10:22.362 --> 00:10:26.031
ให้สามารถทำงานได้ อันนี้คือการเกิดภาวะพร้อมกัน ก็คือ

00:10:26.031 --> 00:10:29.801
เข้ามาใช้งานระบบพร้อม ๆ กันทั้งหมดนะคะ

00:10:31.694 --> 00:10:36.190
โดยสถาปัตยกรรมฐานข้อมูลนี่ มันก็จะมีการศึกษาทั้งโครงสร้าง

00:10:36.190 --> 00:10:37.615
องค์ประกอบหลักของระบบ

00:10:38.503 --> 00:10:44.935
นะคะ ทั้งฐานข้อมูล หน้าที่แต่ละองค์ประกอบ แต่ละคน แต่ละผู้ใช้งานนะคะ

00:10:44.935 --> 00:10:51.223
รวมถึงการเขียนโปรแกรมเพื่อสื่อสาร แล้วก็ติดต่อกับส่วนอื่น ๆ นะคะ

00:10:51.223 --> 00:10:55.531
ในระบบฐานข้อมูลอาจจะไม่ได้ มีแค่โปรแกรมเดียวที่ทำงานนะคะ

00:10:55.531 --> 00:11:00.804
อาทิตย์ที่แล้วเคยบอกแล้วว่าระบบบัญชี ระบบบุคคล ระบบการเงิน

00:11:00.804 --> 00:11:03.176
ก็ใช้ฐานข้อมูลร่วมกันนะคะ

00:11:03.601 --> 00:11:08.324
โดยที่ถ้าสมมติว่า เรามีการเปลี่ยนแปลงโปรแกรมนะคะ

00:11:08.324 --> 00:11:11.876
โครงสร้างของฐานข้อมูลจะยังอยู่นะคะ

00:11:12.146 --> 00:11:13.799
ข้อมูลจะไม่หายไปไหน

00:11:14.494 --> 00:11:17.815
เพราะเราเปลี่ยนแค่ตัวโปรแกรม เราไม่ได้เปลี่ยนทั้งโครงสร้างนะคะ

00:11:18.124 --> 00:11:22.014
ถ้าสมมติว่าเปลี่ยนโปรแกรมใหม่ มันก็จะมีการเชื่อมต่อที่ทำให้

00:11:22.323 --> 00:11:24.935
ข้อมูลมันสามารถทำงานได้นะคะ

00:11:28.990 --> 00:11:33.223
โดยระบบฐานข้อมูลนี่ มันก็จะเป็นการเอาข้อมูลที่มีอยู่ในองค์กร

00:11:33.223 --> 00:11:36.105
หรือข้อมูลที่เราต้องการจะเพิ่มเติมนะคะ

00:11:36.414 --> 00:11:39.926
ที่มีความเกี่ยวข้องกันมารวมไว้ที่เดียวกันนะคะ

00:11:40.196 --> 00:11:45.074
โดยผู้ใช้งานในฐานข้อมูลนี่ จะมองมุมมองหรือ View

00:11:45.344 --> 00:11:48.759
ที่แตกต่างกันไปตามสิทธิ์ของการใช้งานนะคะ

00:11:49.763 --> 00:11:56.259
โดยที่ผู้ใช้งานนี่ไม่จำเป็นต้องรู้ว่าเรา... ถ้าสมมติว่าคุณเป็นผู้ใช้งานทั่วไป

00:11:56.684 --> 00:12:00.554
เขาจำเป็นจะต้องรู้ไหมว่า โปรแกรมเมอร์เขียนโปรแกรมอย่างไร

00:12:01.133 --> 00:12:03.969
โปรแกรมเมอร์ใช้วิธีอะไรในการแสดงภาพ

00:12:04.664 --> 00:12:07.000
โปรแกรมเมอร์ทำอย่างไรให้เราดู YouTube ได้

00:12:07.618 --> 00:12:11.101
อันนี้ไม่จำเป็นต้องรู้นะคะ

00:12:11.790 --> 00:12:16.643
โดยที่ของสิ่งเหล่านี้มันสามารถ ซ่อนรายละเอียดไว้ได้ แต่ถามว่า

00:12:16.643 --> 00:12:22.062
ให้แสดงออกมาได้ไหม แสดงได้ แต่ User หรือผู้ใช้งานไม่จำเป็นต้องรู้

00:12:22.371 --> 00:12:25.561
เพราะฉะนั้น เราก็ซ่อนไว้ได้นะคะ

00:12:25.561 --> 00:12:31.859
ยกเว้นบางอย่างนี่ ไอ้เป็นภาษาโปรแกรมนี่ เหมือนเวลาเราใช้ Google Chrome หาข้อมูลนี่

00:12:32.207 --> 00:12:37.942
เราก็สามารถดูได้ว่า โค้ดโปรแกรม ที่ผู้ดูแลระบบเขาเขียนไว้นี่

00:12:37.942 --> 00:12:40.894
เขาเขียนไว้ว่าอย่างไรบ้าง ก็ดูได้นะคะ

00:12:40.894 --> 00:12:45.865
แต่ถามว่าพ่อแม่เราจะอยากรู้ไหม ว่า Google เขียนโปรแกรมอย่างไร

00:12:45.865 --> 00:12:52.688
ก็คงไม่นะคะ ไม่จำเป็นต้องเปิด ไม่จำเป็นต้องเปิดดู แต่ถามว่าเปิดดูได้ไหม ก็บางส่วนก็เปิดดูได้นะคะ

00:12:56.010 --> 00:13:00.033
โดยสถาปัตยกรรมฐานข้อมูลนี่ มีอยู่ 3 ระดับนะคะ

00:13:00.033 --> 00:13:06.632
เหมือนที่พูดไปตอนต้น ก็คือมีระดับภายนอก ระดับแนวคิด และก็ระดับภายในนะคะ มี 3 ระดับ

00:13:06.941 --> 00:13:09.720
โดยแสดงเป็นแผนภาพแบบนี้นะคะ

00:13:10.261 --> 00:13:12.522
เดี๋ยวขีดเส้นให้ดู

00:13:14.878 --> 00:13:18.006
อันนี้ระดับภายนอกนะคะ

00:13:18.006 --> 00:13:25.876
เดี๋ยวเติมเส้นแบบนี้ ระดับภายนอกก็คือ เราอาจจะมีผู้ใช้งาน 1 คน 2 คน หรือหลายคน

00:13:26.146 --> 00:13:34.257
แต่ละคนอาจจะใช้ระบบเดียวกัน แต่หน้าจอที่ดูอยู่ ไม่เหมือนกันก็ได้นะคะ

00:13:34.257 --> 00:13:41.136
อย่างเช่น นักศึกษาเข้าไปใช้ระบบทะเบียน คนหนึ่งดูเกรด

00:13:42.217 --> 00:13:45.142
คนที่ 2 พิมพ์ใบลงทะเบียน

00:13:46.339 --> 00:13:49.654
คนที่ 3 อาจจะค้นหาคำอธิบายรายวิชา

00:13:50.000 --> 00:13:54.257
ถามว่าเขาใช้โปรแกรมเดียวกันไหม ระบบเดียวกันไหม ใช่ ระบบเดียวกัน

00:13:54.527 --> 00:13:57.793
แต่เขาอาจจะทำงานไม่เหมือนกันก็ได้นะคะ

00:13:57.793 --> 00:14:02.914
คุณอยากดูตรงไหนก็ได้ หรืออาจจะดูเหมือนกันก็ได้ แต่จะต้องเป็นข้อมูลของตัวเอง

00:14:03.725 --> 00:14:10.174
อย่างเช่น เกรด คุณจะดูของเพื่อนไม่ได้ เพราะแต่ละคนมีสิทธิ์ของตัวเองเท่านั้นนะคะ

00:14:10.444 --> 00:14:15.147
จะไปละเมิดความเป็นส่วนตัวของคนอื่นไม่ได้นะคะ

00:14:16.228 --> 00:14:25.688
อันนี้ก็มันจะมีกฎหมายอยู่ เวลาเราจะดูข้อมูลใคร หรือโพสต์รูปใคร หรือพิมพ์ถึงใคร

00:14:26.267 --> 00:14:28.318
มีกฎหมายกำหนดนะคะ

00:14:28.743 --> 00:14:31.741
ต่อมา เป็นในระดับแนวคิด

00:14:32.398 --> 00:14:38.249
ก็จะดูแล้วว่าโครงสร้างฐานข้อมูลที่เราออกแบบไว้ สำหรับการทำงาน

00:14:38.674 --> 00:14:43.482
มันจะเป็นเหมือนตัวที่ไว้จัดการว่า User หรือผู้ใช้งานแต่ละคนนี่

00:14:43.482 --> 00:14:47.621
เรียกข้อมูลอะไรขึ้นไปดู เป็นตัวจัดการ

00:14:47.853 --> 00:14:51.774
หลังจากนั้นก็จะทำหน้าที่เชื่อมต่อกับระบบภายใน

00:14:51.774 --> 00:14:55.377
เพื่อดึงข้อมูลจากฐานข้อมูลไปแสดงผลนะคะ

00:14:55.377 --> 00:15:00.634
การทำงานจะมีส่วนหลัก ๆ 3 ส่วนแบบนี้นะคะ ที่เราใช้งานกัน แต่ถามว่า

00:15:00.904 --> 00:15:07.432
User จำเป็นต้องรู้เกี่ยวกับแนวคิดระดับภายในไหม ไม่จำเป็นนะคะ

00:15:07.432 --> 00:15:12.430
เขาก็จะดูแต่เฉพาะข้อมูลที่ตนเองสนใจ ในระดับภายนอกเท่านั้นนะคะ

00:15:14.786 --> 00:15:21.291
เหตุผลที่ว่าทำไมเราต้องแยกออกเป็น 3 ระดับ แยกออกจากกัน ทำไมไม่รวมกันไว้นะคะ

00:15:21.537 --> 00:15:26.403
อันแรก ก็คือผู้ใช้งานแต่ละคนนี่ ก็อาจจะเข้าถึงข้อมูลเดียวกันได้

00:15:26.635 --> 00:15:29.821
แต่อาจจะเรียกดูผลไม่เหมือนกัน

00:15:30.787 --> 00:15:35.039
เหมือนบางคน อย่างที่บอกค่ะ เข้าไปใช้ระบบทะเบียน คนหนึ่งดูเกรด

00:15:35.039 --> 00:15:39.292
คนหนึ่งลงทะเบียน คนหนึ่งค้นหาคำอธิบายรายวิชา

00:15:39.292 --> 00:15:45.224
หน้าตาแตกต่างกัน แต่ก็ใช้ฐานข้อมูลเดียวกันนะคะ

00:15:45.958 --> 00:15:50.764
ผู้ใช้งานจะไม่สามารถเข้าถึงข้อมูลโดยตรงได้ ก็คือคุณจะไม่สามารถ

00:15:51.343 --> 00:16:01.433
พิมพ์หรือเรียกใช้ข้อมูลในฐานข้อมูลได้โดยตรง จะต้องผ่านระบบจัดการฐานข้อมูลเท่านั้นนะคะ

00:16:02.433 --> 00:16:07.930
Admin นะคะ ในฐานข้อมูลก็คือ ผู้บริหารฐานข้อมูล หรือว่า Database Admin นี่

00:16:08.278 --> 00:16:10.091
ตัวย่อก็คือ DBA

00:16:10.786 --> 00:16:14.318
สามารถแก้ไขโครงสร้างของฐานข้อมูลได้

00:16:15.206 --> 00:16:22.198
เข้าไปดูข้อมูลที่เก็บไว้ได้นะคะ แต่จะต้องไม่สร้างผลกระทบให้กับผู้ใช้งาน

00:16:22.893 --> 00:16:27.789
ก็คือตอนที่คุณอาจจะปรับปรุง เปลี่ยนแปลงฐานข้อมูลอยู่

00:16:27.789 --> 00:16:30.940
ผู้ใช้งานก็ยังต้องสามารถทำงานได้ปกตินะคะ

00:16:32.135 --> 00:16:35.562
โครงสร้างระดับภายในฐานข้อมูลนะคะ

00:16:35.910 --> 00:16:39.387
จะไม่ได้รับผลกระทบ ถ้าคุณมีการเปลี่ยนแปลงโปรแกรม

00:16:39.387 --> 00:16:43.558
ซึ่งจะอยู่ในลักษณะของเชิงกายภาพนะคะ

00:16:43.558 --> 00:16:46.765
ถ้าเปลี่ยนโปรแกรมปึ๊บ เปลี่ยนจากโปรแกรม A ไปใช้โปรแกรม B

00:16:47.653 --> 00:16:52.430
ข้อมูลจะต้องไม่หายไปไหน อันนี้คือเหตุผลที่ 3 ส่วนนี้

00:16:52.430 --> 00:16:55.128
เราจำเป็นจะต้องแยกออกจากกันนะคะ

00:16:58.990 --> 00:17:04.948
มาดูรายละเอียดเพิ่มเติมนะคะ สำหรับระดับภายใน

00:17:05.296 --> 00:17:12.353
ก็จะเป็นระดับที่จัดเก็บข้อมูล อยู่ในลักษณะโครงสร้างที่เราออกแบบไว้แล้วนะคะ

00:17:12.353 --> 00:17:14.611
ถ้าเราเก็บข้อมูลได้ดี

00:17:15.306 --> 00:17:20.322
มันก็จะมีผลต่อความเร็วและก็ประสิทธิภาพ ในการเรียกใช้ข้อมูลนะคะ

00:17:20.824 --> 00:17:27.390
ในระดับภายในนี่ มันก็จะเป็นการดูว่าเรามีการสำรองข้อมูลหรือเปล่า

00:17:27.969 --> 00:17:31.406
เราเก็บข้อมูลอย่างไรนะคะ

00:17:31.908 --> 00:17:36.055
ส่วนมาก ข้อมูลในฐานข้อมูลนี่

00:17:36.634 --> 00:17:41.489
อาจจะเก็บข้อมูลอยู่ในฮาร์ดดิสก์ก็ได้นะคะ มีการทำงานร่วมกับระบบปฏิบัติการ

00:17:41.798 --> 00:17:46.389
สามารถอ่านเขียนข้อมูลได้ ร่วมกับระบบปฏิบัติการด้วย

00:17:46.389 --> 00:17:50.415
ทำไมถึงบอกว่าการจัดเก็บข้อมูลที่ดี

00:17:50.415 --> 00:17:54.892
มีผลต่อความเร็วแล้วก็ประสิทธิภาพในการเข้าถึงข้อมูลนะคะ

00:17:55.935 --> 00:17:59.405
เวลาเราเก็บข้อมูลนี่ จะเห็นได้ว่า ทำไม

00:18:01.313 --> 00:18:03.883
เราต้องเรียงลำดับตามรหัสนักศึกษาด้วย

00:18:05.119 --> 00:18:09.209
เอา 207 ขึ้นก่อน 201 ได้ไหม ได้

00:18:10.000 --> 00:18:15.947
แต่ถามว่า เวลาเราค้นหาข้อมูล ถ้าเราเรียงตามลำดับ แน่นอนมันค้นหาข้อมูลเร็วกว่า

00:18:16.797 --> 00:18:21.451
เราก็มาตกลงกันเลยว่า เราจะเรียงลำดับนักศึกษาในห้องนี้อย่างไร

00:18:22.223 --> 00:18:26.703
อย่างเช่น ซึ่งมาตรฐานทั่วไป ก็จะเรียงตามรหัสนักศึกษา

00:18:26.703 --> 00:18:28.500
จากน้อยไปมากใช่ไหมคะ

00:18:28.770 --> 00:18:30.838
แต่ถ้าเราไม่มีรหัสนักศึกษาล่ะ

00:18:32.228 --> 00:18:37.953
โดยหลักทั่วไปก็จะเรียงตาม ก ไก่ ถึง ฮ นกฮูก ใช่ไหมคะ

00:18:37.953 --> 00:18:40.212
แล้วแต่ว่าเราทำข้อตกลงอย่างไร

00:18:40.212 --> 00:18:44.363
หรือบางฐานข้อมูลก็จะบอกว่าเรียงตามอายุ ใครอายุมากขึ้นก่อน

00:18:45.406 --> 00:18:49.651
หรืออะไรอีกล่ะ เพศชายขึ้นก่อน เพศหญิงตามมา

00:18:50.000 --> 00:18:54.126
คนเกิดวันอาทิตย์ขึ้นก่อน หรือคนเกิดวันจันทร์ขึ้นก่อน

00:18:54.319 --> 00:18:59.659
แล้วแต่โครงสร้างที่เรากำหนดไว้ ทำไม เพื่อให้มันหาข้อมูลได้เร็ว

00:18:59.659 --> 00:19:02.980
เพราะเรารู้แล้วว่า เกณฑ์ในการจัดเรียงข้อมูล มันคืออะไร

00:19:03.482 --> 00:19:06.454
เพราะว่าข้อมูลที่เก็บอยู่ในฮาร์ดดิสก์

00:19:07.381 --> 00:19:09.925
มันไม่เรียง 1 2 3 4 5 ให้เรานะคะ

00:19:10.234 --> 00:19:12.642
มันจะเก็บแบบกระจัดกระจาย

00:19:13.530 --> 00:19:18.629
อยู่ตรงไหนก็ได้ ที่มันมีพื้นที่ว่าง แต่มันจะใช้เลขแทนตำแหน่ง

00:19:20.000 --> 00:19:21.954
อย่างเช่น สินสมุทร

00:19:23.692 --> 00:19:25.557
อาจารย์กำหนดให้เป็น 001

00:19:27.141 --> 00:19:29.765
001 ในฮาร์ดดิสก์อาจจะเก็บตรงไหนก็ได้

00:19:30.000 --> 00:19:33.510
แต่ถ้าสมมติอาจารย์ไม่ใส่ 001 ล่ะ ใส่คำว่า "สินสมุทร"

00:19:34.282 --> 00:19:36.538
มันจะค้นหาข้อมูลเร็วขึ้นไหม

00:19:37.697 --> 00:19:41.671
ถ้าแทนด้วยตัวเลข เรียงตามลำดับ มันก็จะค้นหาข้อมูลได้เร็วขึ้น

00:19:41.903 --> 00:19:45.470
เหมือนอาจารย์เรียงลำดับรหัสนักศึกษาจากน้อยไปหามาก

00:19:45.470 --> 00:19:49.425
เวลาเช็กชื่อ อาจารย์ก็เช็กได้เร็วขึ้น ว่ารหัสคนไหนหายไป

00:19:49.811 --> 00:19:55.034
หรืออาจารย์บางท่าน ห้องนี้นักศึกษาไม่เยอะ มันก็ง่าย

00:19:55.034 --> 00:20:02.458
แต่บางวิชาอาจารย์สอน 50-60 คนขึ้นไป จำไม่ได้ จำไม่ไหวนะคะ

00:20:02.651 --> 00:20:07.706
การเรียงลำดับจากน้อยไปหามาก ก็ทำให้อาจารย์เช็กได้ง่ายขึ้นว่า

00:20:07.706 --> 00:20:10.516
ใครมาใครขาดนะคะ

00:20:10.902 --> 00:20:18.513
เพราะฉะนั้น อีกอย่างหนึ่งก็คือ เวลาเราทำกิจกรรมใด ๆ ก็ตามทำไมเวลา...

00:20:18.513 --> 00:20:20.601
เหมือนสอบบรรจุก็ได้ค่ะ สอบบรรจุคุณครู

00:20:21.837 --> 00:20:29.859
ทำไมเขาถึงไม่เรียงลำดับตามคะแนน เพราะมันก็จะมีข้อสังเกตหรือข้อสงสัยเกิดขึ้น

00:20:30.000 --> 00:20:34.415
เขาก็เลยตัดปัญหา โดยการเรียงลำดับตามเลขที่สมัคร

00:20:36.192 --> 00:20:39.486
เพื่อให้มันค้นหาข้อมูลของผู้สมัครคนนั้นได้ง่าย

00:20:39.486 --> 00:20:42.461
และก็ประกาศผลได้ก็ง่ายนะคะ

00:20:42.654 --> 00:20:47.471
แต่ว่า แต่ก็แล้วแต่ ถ้ามีผู้ดูแลระบบ เขาอยากดูข้อมูลแบบไหน

00:20:47.471 --> 00:20:54.596
ก็แล้วแต่สิ่งที่เขาจะเรียกขึ้นมาดูนะคะ อันนี้คือระดับภายใน

00:20:55.909 --> 00:20:57.859
ต่อมา ระดับแนวคิด

00:20:59.172 --> 00:21:03.368
ก็จะเป็นโครงสร้างของฐานข้อมูลโดยรวม เราต้องดูว่า

00:21:03.600 --> 00:21:06.460
เราจะเก็บข้อมูลอะไรในฐานข้อมูลของเรา

00:21:06.846 --> 00:21:12.057
แต่ละข้อมูลมีส่วนอะไรที่มีความสัมพันธ์กัน เกี่ยวข้องกันบ้างนะคะ

00:21:12.752 --> 00:21:18.817
โดยการกระทำใด ๆ ก็ตาม ที่เกิดขึ้นในระดับแนวคิดนะคะ

00:21:19.396 --> 00:21:24.091
จะทำอยู่บนโครงสร้างฐานข้อมูล ที่กำหนดไว้แล้วเท่านั้นนะคะ

00:21:24.361 --> 00:21:28.775
ในระดับแนวคิด จะมีอะไรเกิดขึ้นบ้างนะคะ

00:21:29.200 --> 00:21:38.493
อย่างเช่น จำนวน Entity Entity ก็คือส่วนของคอลัมน์นะคะ

00:21:39.806 --> 00:21:42.892
อย่างเช่น นักศึกษา 1 คนจะมีทั้งหมด

00:21:43.858 --> 00:21:52.746
กี่ Entity ที่เข้ามาเกี่ยวข้องนะคะ ก็จะมี Entity ของอาจารย์นะคะ

00:21:52.746 --> 00:21:58.010
เป็นคอลัมน์อาจารย์... ไม่ใช่สิ เป็นตารางของอาจารย์ ตารางนักศึกษา

00:21:58.203 --> 00:22:01.687
ตารางรายวิชา มาเกี่ยวข้องกัน

00:22:01.880 --> 00:22:07.576
ใน 1 ตาราง จะประกอบไปด้วย Attribute คือตัวนี้นะคะ คือ คอลัมน์

00:22:09.005 --> 00:22:11.600
นักศึกษา 1 คน จะมีกี่ Attribute

00:22:12.218 --> 00:22:14.393
อาจารย์ดูง่าย ๆ เลย อาจจะมีประมาณ

00:22:15.899 --> 00:22:18.901
สมมติว่าจะมี 3 คอลัมน์ 3 Attribute

00:22:20.217 --> 00:22:22.131
คอลัมน์ที่ 1 รหัสนักศึกษา

00:22:23.058 --> 00:22:25.526
คอลัมน์ที่ 2 ชื่อ-นามสกุล

00:22:25.912 --> 00:22:32.291
คอลัมน์ที่ 3 อาจจะเป็นที่อยู่ หรือเบอร์โทรศัพท์ หรือชื่อเล่นก็ได้นะคะ

00:22:32.523 --> 00:22:35.308
โดยแต่ละตาราง หรือแต่ละ Entity

00:22:35.308 --> 00:22:39.413
จะต้องมีความสัมพันธ์ระหว่างกัน หรือว่า Relationship นะคะ

00:22:39.683 --> 00:22:44.008
เช่น ทำไมตารางอาจารย์กับตารางนักศึกษาจะต้องมีความสัมพันธ์กัน

00:22:44.162 --> 00:22:49.905
เช่น อาจารย์สอนวิชานี้ ในใบลงทะเบียนเรียนของทุกคนมีไหม มี

00:22:51.489 --> 00:22:55.134
แล้วลงทะเบียนวิชานี้มีชื่ออาจารย์ไหม มี

00:22:55.830 --> 00:22:59.315
อาจารย์ก็สามารถดูได้เหมือนกันว่าวิชานี้มีใครลงทะเบียนเรียนไว้บ้าง

00:22:59.315 --> 00:23:03.627
เพราะฉะนั้น อาจารย์กับนักศึกษา จะต้องมีความเกี่ยวข้องกันอย่างน้อย 3 ตาราง

00:23:03.975 --> 00:23:09.351
ก็คือตารางอาจารย์ ก็คือจะเก็บข้อมูลอาจารย์ ตารางนักศึกษาก็จะเก็บข้อมูลนักศึกษา

00:23:10.000 --> 00:23:13.798
ตารางการลงทะเบียนเรียนก็จะรู้แล้วว่า เทอมนี้อาจารย์สอนวิชาอะไรบ้าง

00:23:13.798 --> 00:23:20.040
นักศึกษาลงเรียนวิชาอะไรบ้างนะคะ อันนี้ก็เป็นความสัมพันธ์แบบง่าย ๆ นะคะ

00:23:21.353 --> 00:23:22.915
อันนี้ก็เหมือนกัน

00:23:24.537 --> 00:23:30.596
ระดับภายนอก จะเป็นส่วนที่ผู้ใช้งาน เรียกดูข้อมูลนะคะ

00:23:30.596 --> 00:23:34.998
ผู้ใช้งานแต่ละคนอาจจะดูข้อมูลเหมือนกันหรือต่างกันก็ได้นะคะ

00:23:35.461 --> 00:23:44.037
โดยที่ฐานข้อมูลนี่สามารถมีมุมมอง หรือเค้าร่างภายนอกได้หลายรูปแบบ แล้วแต่นะคะ

00:23:44.269 --> 00:23:47.869
อย่างเช่นตัวอย่างนี้ มีผู้ใช้งาน 3 คน

00:23:48.989 --> 00:23:54.834
นะคะ เรียกดูข้อมูลในฐานข้อมูลเดียวกัน แต่อาจจะเป็นคนละตาราง

00:23:55.491 --> 00:24:00.946
เพราะว่าใน 1... ในฐานข้อมูล 1 ฐานข้อมูลนี่ มันจะมีตารางได้เยอะมากนะคะ

00:24:01.139 --> 00:24:03.622
แต่ทุกตารางจะต้องมีความสัมพันธ์กัน

00:24:04.356 --> 00:24:07.644
อย่าง User หรือผู้ใช้งานคนที่ A

00:24:08.416 --> 00:24:14.404
อาจจะเรียกดูแค่ชื่อ กับเบอร์โทรศัพท์เท่านั้นก็ได้นะคะ

00:24:15.292 --> 00:24:17.999
User หรือผู้ใช้งานคนที่ B

00:24:18.926 --> 00:24:28.595
อาจจะขอดูข้อมูลรหัสนักศึกษา ชื่อ ที่อยู่ เบอร์โทรศัพท์ก็ได้ แล้วแต่นะคะ

00:24:30.835 --> 00:24:34.357
คนที่ C อาจจะไม่อยากดูข้อมูลของทุกคน

00:24:34.705 --> 00:24:38.726
อาจจะอยากดูว่า เทอมนี้มีวิชาอะไรเปิดสอนบ้าง

00:24:39.383 --> 00:24:43.758
รหัสวิชาอะไร ชื่อวิชาอะไร มีกี่หน่วยกิตก็ได้

00:24:44.415 --> 00:24:50.787
จากในฐานข้อมูลเดียวกัน แต่แค่เอามาจากคนละตารางแค่นั้นเองนะคะ

00:24:57.662 --> 00:25:04.242
ประโยชน์ของสถาปัตยกรรมทั้ง 3 ระดับนะคะ ระดับภายใน ระดับภายนอก แล้วก็แนวคิด

00:25:04.435 --> 00:25:13.138
แน่นอน มุมมองของผู้ใช้งานแต่ละคนก็สามารถ ทำงานได้โดยอิสระ แยกจากกันนะคะ

00:25:13.679 --> 00:25:20.718
อาจจะมีการนำข้อมูล หลาย ๆ ตารางมารวมกันนะคะ

00:25:21.104 --> 00:25:26.265
เพื่อให้สามารถครอบคลุมในการเรียกดูข้อมูลได้

00:25:26.806 --> 00:25:34.237
อาจจะมองคนละมุมกัน แต่ใช้ฐานข้อมูลเดียวกันได้ แล้วก็

00:25:34.816 --> 00:25:40.791
ผู้ใช้งานไม่จำเป็นต้องรู้ว่าข้อมูลที่เก็บไว้นี่ อยู่ตำแหน่งไหนของฮาร์ดดิสก์

00:25:41.370 --> 00:25:47.509
ไม่จำเป็นต้องรู้ รู้แค่ว่า ฉันอยากเรียกข้อมูลขึ้นมาดูได้ก็ต้องดูได้นะคะ

00:25:47.509 --> 00:25:52.763
โดยที่ Admin นี่ จะเป็นคนดูแลเองว่า ข้อมูลที่เราเก็บที่ถูกเก็บไว้นี่

00:25:52.917 --> 00:25:57.876
จะต้องจัดเก็บอยู่ตรงไหน แล้วก็เป็นคนที่ดึงข้อมูลนั้น ๆ เข้ามา

00:25:57.876 --> 00:26:01.161
ให้ผู้ใช้งานสามารถใช้งานได้นะคะ

00:26:03.865 --> 00:26:07.112
ประโยชน์ข้อต่อมา คือความเป็นอิสระของข้อมูล อย่างที่บอกก็คือ

00:26:07.305 --> 00:26:10.538
ถ้ามีการเปลี่ยนแปลงข้อมูล หรือมีการเปลี่ยนแปลงโปรแกรม

00:26:10.538 --> 00:26:13.913
ทุกอย่างจะต้องไม่ถูกได้รับผลกระทบนะคะ

00:26:14.376 --> 00:26:16.859
งานต้องยังสามารถเก็บได้

00:26:16.859 --> 00:26:21.896
หรือโปรแกรมก็ยังต้องทำงานได้ ถ้ามีการเปลี่ยนแปลงของข้อมูลนะคะ

00:26:21.896 --> 00:26:25.571
ไม่ใช่ว่ามีคนหนึ่งเปลี่ยนนามสกุล

00:26:26.768 --> 00:26:34.092
ฐานข้อมูลทั้งมหาวิทยาลัยผิดพลาดหมดเลย อันนี้ไม่ได้นะคะ หรือบางคนเพิ่มที่อยู่

00:26:34.246 --> 00:26:39.565
กลายเป็นว่าที่อยู่เหมือนกันทั้งมหาวิทยาลัยอย่างนี้ ก็ไม่ได้นะคะ ข้อมูลจะต้องเป็นอิสระจากกัน

00:26:40.724 --> 00:26:42.707
หรือว่าวันนี้อาจารย์บอกว่า

00:26:43.479 --> 00:26:45.965
ฐานข้อมูลอาจารย์อยากใช้ Microsoft Access

00:26:46.892 --> 00:26:53.061
วันดีคือดีบางคนอยากบอกว่า เปลี่ยนไปใช้โปรแกรมอื่นได้ไหม

00:26:53.679 --> 00:26:58.191
ต้องเปลี่ยนได้นะคะ ไม่ใช่ว่าใช้โปรแกรมเดียวไปตลอด

00:26:59.079 --> 00:27:03.879
ไม่ได้ ถ้าสมมติมีโปรแกรมที่ดีกว่า แล้วเราอยากเปลี่ยน เราก็ต้องเปลี่ยนได้

00:27:03.879 --> 00:27:07.841
โดยที่ข้อมูลเราไม่หายนะคะ อันนี้คือความเป็นอิสระของข้อมูล

00:27:13.132 --> 00:27:15.559
อันนี้พูดไปแล้วนะคะ

00:27:18.301 --> 00:27:19.725
อันนี้พูดไปแล้วนะ

00:27:20.922 --> 00:27:29.745
เดี๋ยวนะ Mapping อันนี้พูดไปแล้ว ต่อมา แบบจำลองข้อมูลนะคะ

00:27:31.792 --> 00:27:36.629
แบบจำลองข้อมูลนี่ มันก็จะเป็นแบบจำลอง ที่ไว้ใช้สำหรับการอธิบาย

00:27:36.629 --> 00:27:41.302
แล้วก็การจัดการข้อมูลที่จะเกิดขึ้นในฐานข้อมูล

00:27:41.302 --> 00:27:46.215
ความสัมพันธ์ระหว่างข้อมูลแต่ละตาราง จะเกิดขึ้นอย่างไรบ้าง

00:27:46.524 --> 00:27:50.203
ข้อบังคับของข้อมูลในระบบที่จะมี

00:27:50.435 --> 00:27:52.744
การเพิ่ม ลบ เปลี่ยนแปลง แก้ไขใด  ๆ

00:27:53.130 --> 00:28:00.910
จะต้องมีกฎเกณฑ์ใด ๆ บ้างนะคะ ทั้งนี้ก็เพื่อใช้สำหรับการเป็นข้อตกลง

00:28:00.910 --> 00:28:08.636
แล้วก็สื่อสารระหว่างคนออกแบบฐานข้อมูลกับคนที่ใช้งานฐานข้อมูล ให้เข้าใจตรงกันนะคะ

00:28:09.061 --> 00:28:15.449
ว่าถ้าเรามีระบบนี้คุณจะสามารถทำอะไรได้บ้าง ทำอะไรไม่ได้ เรียกดูข้อมูลแบบไหน

00:28:15.449 --> 00:28:19.096
แก้ไขข้อมูลอย่างไร ทำแบบไหนถึงจะบันทึกข้อมูลได้

00:28:20.271 --> 00:28:26.054
ถ้าอยากลบรหัสนักศึกษาออกได้ไหม อยากเป็นนักศึกษาแต่ไม่มีรหัสนักศึกษาได้ไหม

00:28:26.054 --> 00:28:29.710
ไม่ได้ ก็ต้องเข้าใจตรงกันนะคะ

00:28:33.881 --> 00:28:39.654
อันแรกนะคะ แบบจำลองข้อมูลนี่ จะมีอยู่ 2 ประเภท ประเภทแรก ก็คือ

00:28:40.000 --> 00:28:44.475
เป็นแบบจำลองที่ใช้การบรรยายนะคะ

00:28:44.475 --> 00:28:50.618
บรรยายโดยรวมทั้งหมดของระบบ ว่ามีอะไรบ้างนะคะ

00:28:51.043 --> 00:28:54.744
ซึ่งจะนำเสนอในลักษณะของการวาดภาพ

00:28:55.903 --> 00:29:00.449
โดยที่ในฐานข้อมูล 1 ฐานข้อมูลนี่ จะหมายถึง

00:29:01.530 --> 00:29:05.074
การเก็บตารางกี่ตารางนะคะ

00:29:05.074 --> 00:29:10.723
ก็คือ Entity นี่แหละนะคะ กับแต่ละตารางมีความสัมพันธ์อะไรบ้าง

00:29:10.955 --> 00:29:13.683
เราจะต้องวาดรูป โยงเส้น

00:29:14.571 --> 00:29:15.671
ขีดเส้นใต้

00:29:17.100 --> 00:29:22.458
ตีกรอบ เดี๋ยวอันนี้จะเป็น... ในครั้งถัด ๆ ไปจะเป็นการวาดรูป

00:29:22.728 --> 00:29:29.901
เดี๋ยวถ้าวันไหนจะวาดรูป อาจารย์จะให้ถือกระดาษ A4 มาด้วยนะคะ

00:29:30.210 --> 00:29:35.396
ถ้าใครเคยเรียนสมัยมัธยมได้วาด Mind map วาดแผนภาพ

00:29:36.207 --> 00:29:40.047
การวาดในฐานข้อมูลก็จะไม่ค่อยต่างกันค่ะ

00:29:40.047 --> 00:29:44.060
แต่ว่าสัญลักษณ์แต่ละสัญลักษณ์ ที่เอามาใช้ในการวาดรูปของเรา

00:29:44.562 --> 00:29:49.846
มันมีความหมายนะคะ ไม่ใช่อยากวาด อยากใส่วงรี อยากใส่สี่เหลี่ยม

00:29:49.846 --> 00:29:56.015
อยากใส่สามเหลี่ยม อยากใส่วงกลม นึกอยากใส่อะไรก็ใส่ไม่ได้นะคะ มันจะมีกฎอยู่

00:29:56.942 --> 00:30:00.702
โดยการวาดแบบนี้นี่ หรือการสร้างแบบจำลองแบบนี้นี่

00:30:00.702 --> 00:30:06.429
จะนำเสนอเพื่อให้เกิดความเข้าใจตรงกัน ระหว่างคนออกแบบกับคนใช้งาน

00:30:06.892 --> 00:30:11.017
ให้เห็นภาพคร่าว ๆ ว่าระบบที่เรากำลังจะทำขึ้นมานี่

00:30:11.249 --> 00:30:16.815
มันทำงานอย่างไรนะคะ เก็บข้อมูลแบบไหน ใช้ข้อมูลอะไรได้บ้างนะคะ

00:30:19.403 --> 00:30:24.755
ต่อมาจะเป็นแบบจำลองที่ใช้เพื่ออธิบาย โครงสร้างของฐานข้อมูลนะคะ

00:30:25.103 --> 00:30:30.951
คุณสมบัติของแบบจำลองข้อมูลที่ดี จะต้องเป็นรูป หรือเป็นแบบจำลองที่

00:30:31.182 --> 00:30:39.560
เอามาวาง แล้วถึงแม้ว่าเขาจะไม่มีความรู้ ทางด้านคอมพิวเตอร์เลย เขาก็จะเข้าใจนะคะ

00:30:40.000 --> 00:30:45.179
มีสาระสำคัญ ไม่มีการซ้ำซ้อนกันนะคะ

00:30:45.720 --> 00:30:51.649
ซึ่งในที่นี้ ก็คือในแต่ละตาราง มันไม่ควรจะมีการเก็บข้อมูลที่ซ้ำซ้อนกัน

00:30:51.649 --> 00:30:59.310
อย่างเช่น ตารางนี้เก็บข้อมูลนักศึกษาไปแล้ว อีกตารางหนึ่งก็ยังจะเก็บอีก อันนี้ไม่ทำนะคะ

00:30:59.310 --> 00:31:03.942
จะต้องไม่ซ้ำซ้อนกันของแต่ละตาราง แล้วก็มีความยืดหยุ่น

00:31:04.135 --> 00:31:11.891
ง่ายในการแก้ไขในอนาคตนะคะ และแบบจำลองของข้อมูล ไม่ควรจะ

00:31:12.316 --> 00:31:17.366
ตายตัวเลยว่าโปรแกรมที่เรา... หรือฐานข้อมูลที่เรากำลังจะออกแบบ

00:31:17.366 --> 00:31:22.550
ต้องใช้โปรแกรมนี้เท่านั้น เราจะไม่ทำแบบนี้นะคะ

00:31:22.782 --> 00:31:28.534
จะต้องเป็นฐานข้อมูลที่สามารถทำร่วมกับโปรแกรมใดก็ได้นะคะ

00:31:28.534 --> 00:31:33.053
เพราะมันจะ... ไม่อย่างนั้น มันจะขัดกับกฎความเป็นอิสระของข้อมูลก็คือ

00:31:33.362 --> 00:31:37.549
ถ้าสมมติเปลี่ยนโปรแกรมแล้วระบบเราพังนี่ อันนี้ยอมรับไม่ได้นะคะ

00:31:44.460 --> 00:31:46.967
โดยแบบจำลองนี่ ก็จะมีหลายรูปแบบ

00:31:46.967 --> 00:31:52.707
แบบแรกจะเป็นเชิง Record ก็คือจะเป็นการเก็บเป็นแถว เป็นแถว ไปเรื่อย ๆ นะคะ

00:31:52.939 --> 00:32:00.785
แต่ละแถวก็ หรืออาจจะเรียกว่า "รายการข้อมูล" แต่ละแถวจะต้องไม่ซ้ำกัน จะต้องแตกต่างกันนะคะ

00:32:00.785 --> 00:32:08.697
ก็จะมีอยู่ 3 แบบ แบบจากบนลงล่าง แบบเครือข่าย และก็แบบมีความสัมพันธ์นะคะ

00:32:13.602 --> 00:32:19.520
กับแบบจำลองเชิงวัตถุนะคะ จะมองทุกอย่างให้เหมือนเป็นวัตถุ

00:32:20.000 --> 00:32:25.017
ตารางก็เป็นวัตถุชนิดหนึ่ง นักศึกษาก็เป็นวัตถุชนิดหนึ่ง

00:32:26.407 --> 00:32:35.060
นักศึกษา 1 คน จะมีวัตถุในตัวเอง เก็บอะไรบ้างนะคะ เช่น วัตถุที่ชื่อว่า รหัสนักศึกษา

00:32:35.562 --> 00:32:38.648
วัตถุที่ชื่อว่า ชื่อ-นามสกุล

00:32:38.957 --> 00:32:42.727
วัตถุที่มันหมายถึงเบอร์โทรศัพท์นะคะ

00:32:42.727 --> 00:32:47.923
ซึ่งส่วนใหญ่เวลาเราวาด หรือโครงสร้างฐานข้อมูลเราจะใช้

00:32:47.923 --> 00:32:52.400
แบบจำลองเชิงวัตถุนะคะ ก็คือตัวแรกเลย

00:32:54.137 --> 00:32:56.958
สิ่งที่เราจะวาดเรียกว่า "ER Diagram"

00:32:59.391 --> 00:33:04.622
นะคะ ER Diagram อันนี้คือ อย่างน้อยทุกคนจะต้องวาดได้

00:33:04.776 --> 00:33:09.322
เข้าใจสัญลักษณ์แต่ละอัน ว่ามันมีความสำคัญอย่างไรนะคะ

00:33:09.515 --> 00:33:14.435
ระดับปริญญาตรีนี่ วาด ER Diagram ได้ ก็ถือว่าเก่งมากแล้วนะคะ

00:33:19.340 --> 00:33:27.439
แบบจำลองข้อมูลจะมีส่วนประกอบอยู่ 3 ส่วนนะคะ ส่วนโครงสร้างก็จะเป็นส่วนประกอบที่เก็บสัญลักษณ์

00:33:27.825 --> 00:33:31.480
รวมทั้งกฎระเบียบที่ทุกคนจะต้องตกลงร่วมกัน

00:33:32.214 --> 00:33:34.837
เพื่อใช้ในการสร้างฐานข้อมูลนะคะ

00:33:35.378 --> 00:33:40.134
มาตรฐานเลยก็คือข้อมูลทุกอย่างที่เราจะเก็บ จะอยู่ในรูปแบบของตาราง

00:33:40.134 --> 00:33:41.778
ในรูปแบบของแถวกับคอลัมน์

00:33:42.647 --> 00:33:45.783
อันนี้น่าจะเคยใช้งาน Excel มาแล้ว

00:33:46.324 --> 00:33:52.482
รวมถึงรู้จักว่าตารางคืออะไร นะคะ ตารางก็จะเป็นแบบนี้ เหมือนเวลาเรา

00:33:52.482 --> 00:33:58.006
ใส่ข้อมูลทั่ว ๆ ไปอย่างนี้นะคะ เป็นตีเส้น ตีกรอบอย่างนี้ อันนี้คือตารางนะคะ

00:33:59.358 --> 00:34:00.788
มีแถวกับคอลัมน์

00:34:02.294 --> 00:34:08.960
ส่วนของการปรับปรุงก็จะเป็นส่วนที่ชนิดของการทำงานต่าง ๆ

00:34:09.192 --> 00:34:13.343
ตั้งแต่การปรับปรุงข้อมูล หรือการเรียกดูข้อมูลในฐานข้อมูล

00:34:13.497 --> 00:34:18.613
การเปลี่ยนแปลงโครงสร้างฐานข้อมูล เช่น เราอาจจะเพิ่มในส่วนของ

00:34:20.000 --> 00:34:25.288
Social Media ของนักศึกษาเข้ามา มหาวิทยาลัยอยากรู้ว่าชื่อ Facebook คุณชื่อว่าอะไร

00:34:27.181 --> 00:34:30.682
แต่จะต้องไม่กระทบกับฐานข้อมูลหลักนะคะ

00:34:31.029 --> 00:34:35.614
ซึ่งนิยมใช้ชุดคำสั่งของภาษา SQL

00:34:36.348 --> 00:34:40.985
อันนี้ก็เราก็จะเรียนเหมือนกันนะคะ ภาษา SQL ในการจัดการกับข้อมูล

00:34:41.796 --> 00:34:49.536
รวมถึงกฎของความคงสภาพ เพื่อใช้สำหรับควบคุมความถูกต้องของข้อมูล

00:34:49.536 --> 00:34:55.004
แล้วก็เพื่อให้มั่นใจว่าข้อมูลที่ได้มาถูกต้อง เช่น รหัสนักศึกษาจะต้องเป็นตัวเลขเท่านั้น

00:34:55.583 --> 00:34:58.065
เป็นตัวหนังสือไม่ได้นะคะ

00:34:59.069 --> 00:35:04.526
ความแน่นอนของข้อมูลที่ถูกต้อง ที่บันทึกลงในฐานข้อมูลนะคะ

00:35:04.526 --> 00:35:08.572
เวลาเราเรียกดูข้อมูลปึ๊บ เราจะได้มั่นใจได้ว่าข้อมูลที่เราได้มา

00:35:08.572 --> 00:35:12.923
เป็นข้อมูลที่ตรงกับความจริงที่เกิดขึ้นนะคะ

00:35:15.009 --> 00:35:16.574
นี่ก็จะซ้ำ ๆ กัน

00:35:19.702 --> 00:35:24.814
แบบจำลองฐานข้อมูลนะคะ ในการตัดสินใจ เลือกใช้แบบจำลองฐานข้อมูลนี่

00:35:24.814 --> 00:35:30.721
มันก็จะเป็นสิ่งสำคัญมาก ๆ สำหรับการออกแบบฐานข้อมูลนะคะ

00:35:32.150 --> 00:35:39.275
ซึ่งเราก็จะแบ่งเป็นประมาณ 5 รูปแบบ

00:35:39.275 --> 00:35:44.865
เพื่อให้เราตัดสินใจว่า เราจะออกแบบฐานข้อมูล ด้วยแบบจำลองแบบไหนนะคะ

00:35:45.366 --> 00:35:49.561
อันแรกเลย เป็นแบบลำดับชั้นนะคะ

00:35:50.000 --> 00:35:53.816
เป็นรูปแบบสถาปัตยกรรมฐานข้อมูลที่เก่าแก่ที่สุด

00:35:54.125 --> 00:35:56.781
ใช้มานานมากนะคะ

00:35:57.515 --> 00:36:02.573
โครงสร้างของข้อมูลหรือไฟล์จะถูกจัดเก็บไว้จากบนลงล่างนะคะ

00:36:02.573 --> 00:36:05.251
ลักษณะคล้าย ๆ กับรากของต้นไม้

00:36:06.448 --> 00:36:07.464
นะคะ

00:36:08.855 --> 00:36:14.712
โดยไฟล์ต่าง ๆ จะต้องมีพ่อ ก็คือเป็น ถ้าเป็นภาษาอังกฤษก็คือ One Parent

00:36:14.712 --> 00:36:20.923
ก็คือมันจะออกจากข้อมูลเดียวเท่านั้น แล้วค่อย ๆ แตกสาขาออกไปนะคะ

00:36:22.236 --> 00:36:25.635
ความถูกต้องในการเก็บข้อมูลค่อนข้างที่จะสูง

00:36:26.253 --> 00:36:29.949
ความคงสภาพของข้อมูลก็คือ การเปลี่ยนแปลงข้อมูลมีน้อยมาก

00:36:30.000 --> 00:36:37.121
แต่ปัจจุบันไม่นิยมใช้ เพราะมันยากต่อการไล่ลำดับของข้อมูลนะคะ

00:36:37.352 --> 00:36:42.615
มันเวลาจะหาข้อมูลทีหนึ่งก็ต้องวิ่งไปข้างบน แล้วค่อยลงมาข้างล่างใหม่

00:36:43.117 --> 00:36:46.539
จะหาข้อมูลทีหนึ่งก็ต้องเริ่มตั้งแต่ข้างบน แล้วค่อยมาข้างล่าง

00:36:47.157 --> 00:36:49.421
เหมือนเวลาคุณอะไรล่ะ

00:36:50.696 --> 00:36:53.501
สมมติตึกนี้มี 10 ชั้น อยากไปชั้น 3

00:36:54.003 --> 00:36:55.745
คุณจะขึ้นจากข้างล่าง

00:36:56.170 --> 00:37:03.119
ไปชั้น 3 เลยไม่ได้ คุณต้องขึ้นไปชั้น 10 ก่อน แล้วค่อยเดินลงมาชั้น 3 ทุกครั้งนะคะ

00:37:03.119 --> 00:37:11.213
แบบจำลองข้อมูลตัวนี้ ถามว่าดีไหม ดี แต่ทำงานช้านะคะ ลักษณะก็จะเป็นแบบนี้นะคะ

00:37:11.483 --> 00:37:13.085
เริ่มจากตรงนี้

00:37:13.548 --> 00:37:18.300
กว่าจะลงมาถึงตรงนี้ได้ ต้องผ่านทุกชั้นนะคะ

00:37:18.570 --> 00:37:23.411
ถ้าเราอยากดูข้อมูลตรงนี้เลยนี่ ตรงนี้ ที่อาจารย์วง ๆ ไว้นี่ เข้ามาตรงนี้เลยได้ไหม

00:37:23.681 --> 00:37:28.327
ไม่ได้ เพราะกฎของมันคือต้องเริ่มจากบนสุด ค่อยลงมาข้างล่าง

00:37:29.061 --> 00:37:31.910
มันดีค่ะ แต่มันช้านะคะ

00:37:35.324 --> 00:37:37.471
จะเป็นประมาณนี้นะคะ

00:37:38.003 --> 00:37:40.865
เป็น Root ลง มาตรงนี้

00:37:43.800 --> 00:37:48.844
เหมือนข้อมูลแบบนี้ค่ะ อันนี้คือแบบจำลองที่เราวาดกันจริง ๆ นะคะ

00:37:49.114 --> 00:37:53.773
สมมติอาจารย์อยากดูข้อมูลของคนนี้นะคะ

00:37:54.854 --> 00:37:56.479
ระดับล่างสุดเลย

00:37:57.445 --> 00:38:02.425
อาจารย์จะเข้ามาดูข้อมูลคนนี้โดยตรงไม่ได้ อาจารย์จะต้องสั่งผ่านจากด้านบน

00:38:02.425 --> 00:38:05.752
ค่อย ๆ ลงมาตามลำดับชั้น ตามลำดับชั้นเรื่อย ๆ จนถึงตรงนี้

00:38:06.486 --> 00:38:11.964
ถามว่าถ้าเราเป็นผู้ใช้งานจริงนี่ เราอาจจะไม่รู้สึกว่ามันหาข้อมูลช้า

00:38:12.234 --> 00:38:15.773
แต่ในทางการทำงานทางกายภาพของคอมพิวเตอร์นี่

00:38:15.773 --> 00:38:20.608
มันทำงานโดยคิดเป็นหน่วยใหญ่ ๆ ก็คือเป็นวินาที

00:38:20.917 --> 00:38:23.900
ยิ่งใช้เวลาในการหาข้อมูลนานเท่าไร

00:38:24.827 --> 00:38:29.823
ก็ยิ่งมีค่าใช้จ่ายที่เพิ่มขึ้นตามไปด้วยนะคะ

00:38:29.823 --> 00:38:34.364
เพราะฉะนั้น เหมือนในยุคปัจจุบัน ทำไมทุกคนอยากได้คอมพิวเตอร์ที่เร็ว

00:38:34.364 --> 00:38:38.147
คิดเร็ว หาข้อมูลเร็วนะคะ

00:38:39.460 --> 00:38:43.825
ถามว่าอันนี้มันช้าจนเราทนไม่ได้ไหม

00:38:43.825 --> 00:38:47.979
ถ้าข้อมูลมันมีแค่นี้มันทนได้ค่ะ แต่ถ้าข้อมูลมันมากกว่านี้ล่ะ

00:38:48.558 --> 00:38:50.001
หลายลำดับชั้นกว่านี้ล่ะ

00:38:51.005 --> 00:38:57.244
แค่หาชื่อคน อาจจะรอเป็นชั่วโมงก็ได้ ถ้าจำนวนข้อมูลมันเยอะนะคะ

00:38:57.244 --> 00:39:05.094
อันนี้ก็เป็นแบบจำลองข้อมูลที่ถามว่าทำงานได้ดีค่ะ แต่ว่าอาจจะเสียเวลานะคะ

00:39:09.227 --> 00:39:13.968
ข้อดี ก็คือเข้าใจง่าย ลักษณะเหมือนรากของต้นไม้ อย่างที่บอกนะคะ

00:39:14.200 --> 00:39:16.913
ข้อมูลมีความสัมพันธ์แบบ 1 ต่อ

00:39:18.612 --> 00:39:23.980
มากกว่า 1 จริง ๆ อยากพูดภาษาอังกฤษมากกว่า เป็นความสัมพันธ์แบบ One-to-Many ก็คือ

00:39:24.637 --> 00:39:28.219
พ่อ 1 คน มีลูกได้หลายคนประมาณนี้นะคะ

00:39:28.798 --> 00:39:32.665
ความสามารถในการควบคุมความถูกต้องของข้อมูลมีสูงนะคะ

00:39:32.974 --> 00:39:37.300
ข้อมูลที่เหมาะจะใช้งานในการแบบจำลองแบบนี้ ควรน่าจะเป็น

00:39:37.570 --> 00:39:42.749
ข้อมูลแบบที่เป็นการเรียงลำดับแบบต่อเนื่องนะคะ ที่จะเหมาะ ที่จะใช้

00:39:43.715 --> 00:39:46.005
แต่มันก็มีข้อเสียอย่างที่บอกนะคะ

00:39:46.739 --> 00:39:50.000
มันไม่สามารถรองรับข้อมูล ที่มีความสัมพันธ์แบบ Many-to-Many ได้

00:39:50.000 --> 00:39:54.810
เดี๋ยวเรื่อง One-to-One One-to-Many, Many-to-Many นะคะ

00:39:54.810 --> 00:40:00.139
1 ต่อ 1, 1 ต่อหลายสิ่ง หรือหลายสิ่งต่อหลายสิ่งอะไรพวกนี้

00:40:00.796 --> 00:40:03.484
เดี๋ยวเราจะเรียนในบทถัด ๆ ไปนะคะ บางคนก็

00:40:03.716 --> 00:40:07.896
คืออะไรนะคะ เดี๋ยวจะอธิบายโดยละเอียดในบทถัด ๆ ไป

00:40:08.282 --> 00:40:12.783
โดยแบบจำลองแบบลำดับชั้นนี่ ความยืดหยุ่นมันก็จะน้อยนะคะ

00:40:12.783 --> 00:40:18.180
การปรับเปลี่ยนโครงสร้างมีความยุ่งยาก เพราะทุกอย่างจะต้องเริ่มจากด้านบน

00:40:18.952 --> 00:40:22.546
ถ้าเปลี่ยนตรงใดตรงหนึ่ง ต้องไล่ดูทั้งหมด

00:40:23.550 --> 00:40:27.089
เพราะมันอาจจะกระทบกับอีกส่วนอื่นก็ได้นะคะ

00:40:27.089 --> 00:40:34.878
อย่างที่บอกค่ะ การค้นหาข้อมูลระดับล่าง ๆ จะต้องทำตั้งแต่บนลงล่างลงมา

00:40:34.878 --> 00:40:38.908
เข้าไปหาโดยตรงไม่ได้นะคะ เสียเวลา

00:40:39.758 --> 00:40:41.732
แล้วก็ทำให้การเขียนโปรแกรม

00:40:43.161 --> 00:40:45.023
ในอนาคตมันยาก

00:40:45.255 --> 00:40:51.436
เพราะทุกอย่างจะต้องวนกลับมาจุดเริ่มต้น วนกลับมาจุดเริ่มต้น เสียเวลามากนะคะ

00:40:52.285 --> 00:40:58.214
มันก็เลยมีการพัฒนาแบบจำลองข้อมูลแบบเครือข่ายขึ้นมานะคะ

00:40:58.986 --> 00:41:04.505
โดยแบบจำลองข้อมูลแบบเครือข่ายนี่ จะใช้ตัวชี้ตำแหน่ง ที่เรียกว่า "Pointer"

00:41:04.505 --> 00:41:09.561
ก็คือใช้ลูกศรนะคะ ใช้ลูกศร

00:41:10.000 --> 00:41:18.147
ก็จะมีการเชื่อมโยงความสัมพันธ์ระหว่างข้อมูลในแต่ละแถวเข้าด้วยกันนะคะ

00:41:19.068 --> 00:41:22.657
ก็จะเป็นความสัมพันธ์ที่สามารถเชื่อมโยงกันได้นะคะ

00:41:23.661 --> 00:41:26.400
ข้อมูลสามารถวิ่งผ่านกันได้

00:41:26.400 --> 00:41:31.344
ไม่จำเป็นต้องจากบนลงล่างมา อาจจะเลี้ยวซ้ายเลี้ยวขวาได้แล้วคราวนี้นะคะ

00:41:31.614 --> 00:41:35.620
ลักษณะของแบบจำลองเชิงเครือข่ายก็จะเป็นแบบนี้นะคะ

00:41:36.817 --> 00:41:42.234
แต่ก่อนเราจะเริ่มจากบนลงล่างใช่ไหมคะ คราวนี้ถ้าใบส่งของนี่ มันสามารถไปหาใครได้บ้าง

00:41:42.234 --> 00:41:44.666
ใบส่งของ 1 ใบ มีข้อมูลอะไรบ้าง

00:41:45.708 --> 00:41:53.155
ก็คือรายการในใบส่งของ ใครเป็นคนขาย ใครเป็นคนซื้อ เขาจ่ายเงินแบบไหน

00:41:53.773 --> 00:42:01.145
อันนี้ไม่ต้องจากบนลงล่างใช่ไหมคะ หรือจะดูว่าพนักงาน วันนี้ขายของอะไรได้บ้าง

00:42:01.956 --> 00:42:07.264
ก็สามารถดูได้ ลูกค้าคนนี้ อยู่ในใบส่งของไหน ใครเป็นคนขาย

00:42:07.706 --> 00:42:12.150
ลูกค้าจ่ายเงินอย่างไร ก็ดูได้ ดูได้ทุกตำแหน่งนะคะ

00:42:12.150 --> 00:42:15.316
โดยที่ไม่ต้องเริ่มจากบนลงล่าง สามารถเข้าไปดูได้โดยตรง

00:42:15.509 --> 00:42:19.306
ข้อดีแบบจำลองข้อมูลแบบเครือข่ายนะคะ

00:42:19.306 --> 00:42:24.731
ก็ความซ้ำซ้อนในการเกิดขึ้นของข้อมูล ก็น้อยกว่าลำดับชั้น

00:42:24.963 --> 00:42:28.109
เรียกดูข้อมูลแบบไป-กลับได้ง่ายนะคะ เพราะว่า

00:42:28.495 --> 00:42:36.258
การค้นหาข้อมูลทำได้ดีกว่า เพราะว่ามีตัวชี้ตำแหน่ง หรือว่า Pointer ในการเข้าถึงข้อมูลได้ในทันทีนะคะ

00:42:37.108 --> 00:42:40.880
แต่ถามว่าสิ่งที่มีข้อดี มันก็ต้องมีข้อเสียนะคะ

00:42:41.343 --> 00:42:46.233
ข้อเสียก็คือ การป้องกันความปลอดภัยของข้อมูลมีน้อย

00:42:47.314 --> 00:42:53.376
นะคะ แล้วก็สิ้นเปลืองพื้นที่ในการเก็บตัวชี้ตำแหน่ง

00:42:54.035 --> 00:42:58.808
ถ้าตารางข้อมูลมันมีแค่นี้น่ะค่ะ มันก็ไม่เปลืองหรอก

00:42:59.001 --> 00:43:02.854
แต่ถ้าสมมติว่ามันเป็นระดับห้างสรรพสินค้าล่ะ

00:43:04.206 --> 00:43:05.448
ร้านค้าใหญ่ ๆ

00:43:06.529 --> 00:43:09.323
ข้อมูลเกิดขึ้นแทบจะทุกนาที

00:43:10.636 --> 00:43:15.479
มันก็ต้องมีตัวชี้ตำแหน่งเก็บทุก ๆ ๆ ๆ สิ่งที่เกิดขึ้น

00:43:16.135 --> 00:43:20.246
ทำไมถึงบอกว่าเปลืองไม่ได้ เพราะถ้าในเชิงธุรกิจ

00:43:21.173 --> 00:43:27.646
อะไรที่เป็นสิ่งที่เราต้องจ่ายเพิ่ม เช่น การซื้อฮาร์ดดิสก์เพิ่มเพื่อเก็บข้อมูลทุกอย่าง

00:43:27.646 --> 00:43:31.473
เป็นต้นทุน หมายความว่า คุณจะต้องลงทุกเพิ่มขึ้น

00:43:32.863 --> 00:43:36.152
ในสิ่งที่อาจจะไม่ได้จำเป็นขนาดนั้นนะคะ

00:43:36.924 --> 00:43:43.344
แล้วก็การเปลี่ยนแปลงเชิงโครงสร้าง ก็อาจจะมีความยุ่งยาก

00:43:43.344 --> 00:43:45.907
เพราะหลาย ๆ อย่างมันเชื่อมต่อกันอยู่

00:43:46.757 --> 00:43:50.599
เช่น อยู่ดี ๆ อาจารย์อยากบอกว่า อาจารย์อยากตัดใบส่งของออก

00:43:51.024 --> 00:43:56.904
แล้วพนักงานกับลูกค้าเขาจะเชื่อมโยงกันอย่างไร ผ่านสินค้าหรือ

00:43:56.904 --> 00:43:59.008
แล้วคุณไม่ต้องไปส่งของลูกค้าหรือ

00:44:00.708 --> 00:44:09.246
นะคะ อันนี้ก็จะมีข้อสงสัย กับข้อที่ต้องมาคิดตามเหมือนกันว่า

00:44:09.246 --> 00:44:15.692
ถ้าเราจะมีการเปลี่ยนแปลงตำแหน่งบางตำแหน่ง สำหรับการชี้ตำแหน่งนะคะ

00:44:15.885 --> 00:44:23.542
มันต้องทำอย่างไร มันก็เลยมีการพัฒนาขึ้นมาอีก เป็นแบบจำลองฐานข้อมูลเชิงสัมพันธ์นะคะ

00:44:24.199 --> 00:44:29.663
ก็จะเป็นแบบจำลองข้อมูลที่ได้รับความนิยมมากในปัจจุบัน

00:44:30.822 --> 00:44:39.472
เพราะว่านำเสนอข้อมูลในลักษณะที่เป็นตาราง เข้าใจง่าย มีแถว มีคอลัมน์นะคะ

00:44:39.665 --> 00:44:44.898
สามารถแสดงให้เห็นถึงความสัมพันธ์ กับตารางอื่น ๆ ได้ง่ายนะคะ

00:44:45.284 --> 00:44:48.754
แต่เราจะใช้สิ่งที่เรียกว่า "กุญแจ "หรือ "Key"

00:44:49.217 --> 00:44:51.501
เพื่ออ้างอิงไปยังตารางอื่น ๆ

00:44:52.428 --> 00:44:57.282
เหมือนอย่างนี้ อันนี้คือตารางพนักงานขาย ตารางลูกค้าอะไรพวกนี้ค่ะ

00:44:57.977 --> 00:45:01.598
เราไม่รู้ว่าเราจะอ้างอิงด้วยอะไร ใช่ไหมคะ

00:45:01.898 --> 00:45:04.641
อย่างเช่นใบส่งของนี้ มีของอยู่ 5 อย่าง

00:45:05.645 --> 00:45:12.496
เราก็รู้ว่าแค่ 5 อย่าง ไม่ได้มีจุดสังเกตใด ๆ ให้รู้นะคะ

00:45:12.496 --> 00:45:18.123
มันก็เลยมีการพัฒนาสิ่งที่เรียกว่า "Key" หรือกุญแจขึ้นมานะคะ

00:45:18.663 --> 00:45:25.682
โดยกุญแจของ 1 คนนี่ มันสามาถเป็นได้ทั้ง กุญแจหลักหรือคีย์หลัก แล้วก็คีย์รองได้

00:45:25.682 --> 00:45:31.217
เดี๋ยวรายละเอียดของคีย์หลักคีย์รอง คีย์ภายนอกนะคะ

00:45:32.393 --> 00:45:39.043
จะอธิบายโดยละเอียดในบทถัด ๆ ไปนะคะ อันนี้เอาให้เห็นคร่าว ๆ ก่อน

00:45:40.665 --> 00:45:45.505
อย่างเช่น นะคะ ตารางนี้

00:45:48.170 --> 00:45:53.862
นะคะ อันแรกจะเป็นตารางเก็บข้อมูลเกี่ยวกับสาขา สมมติว่าเราเปิดร้าน... ร้านค้า

00:45:54.210 --> 00:45:58.937
มีตารางเกี่ยวกับเก็บข้อมูลสาขาที่เราเปิด กับตารางพนักงาน

00:45:59.709 --> 00:46:02.496
ทำไมรหัสสาขาอาจารย์ต้องขีดเส้นใต้ด้วย

00:46:03.655 --> 00:46:06.474
ทำไมรหัสพนักงานก็ต้องขีดเส้นใต้ด้วย

00:46:08.135 --> 00:46:14.687
ความสำคัญมีอยู่นะคะว่า ไม่ใช่ขีดเฉย ๆ เพื่อเน้นให้พวกคุณอ่าน ไม่ใช่

00:46:15.459 --> 00:46:18.903
มันแสดงให้เห็นว่าในตารางนี้

00:46:19.366 --> 00:46:25.129
สิ่งใดที่ขีดเส้นใต้ ข้อนั้น ข้อมูลในตารางนั้นจะซ้ำกันไม่ได้

00:46:26.751 --> 00:46:28.558
เราเรียกสิ่งนี้ว่า "คีย์หลัก"

00:46:30.682 --> 00:46:38.935
นะคะ รหัสพนักงานขีดเส้นใต้ ก็แสดงว่ารหัสพนักงานแต่ละคนจะต้องไม่ซ้ำกัน

00:46:39.398 --> 00:46:41.663
เพราะรหัสพนักงานเป็นคีย์หลัก

00:46:47.186 --> 00:46:52.857
แต่ถ้าสังเกตดี ๆ ในตารางพนักงาน ทำไมมีรหัสสาขาโผล่ขึ้นมาตรงนี้ด้วย

00:46:54.827 --> 00:46:57.062
แล้วทำไมไม่ขีดเส้นใต้ล่ะ ในตารางนี้

00:46:58.646 --> 00:47:02.436
เพราะในตารางพนักงาน รหัสสาขา

00:47:03.633 --> 00:47:10.872
ไว้สำหรับเป็นคีย์นอกในการเชื่อมต่อกันว่า 2 ตารางนี้ มันมีความสัมพันธ์กันอย่างไร

00:47:12.880 --> 00:47:16.204
นะคะ เดี๋ยวจะอธิบายอีกทีหนึ่ง

00:47:16.474 --> 00:47:19.127
ว่าทำไมต้องมีความสัมพันธ์กันล่ะ

00:47:19.590 --> 00:47:22.791
เอาง่าย ๆ เลยค่ะ พนักงานคนที่ 1

00:47:23.602 --> 00:47:28.605
ถ้าอาจารย์ไม่มีรหัสสาขา คุณจะรู้ไหมว่า พนักงานคนนี้ทำงานที่สาขาไหน

00:47:30.227 --> 00:47:31.223
ไม่รู้เลย

00:47:32.613 --> 00:47:34.954
หรืออาจจะบอกว่าสาขาอุดรฯ

00:47:35.997 --> 00:47:42.549
มีใครทำงานบ้าง รู้ไหม ถ้าไม่เชื่อมกับตารางพนักงาน ก็ไม่รู้เลยนะคะ

00:47:42.549 --> 00:47:48.784
เดี๋ยวจะอธิบายอีกทีหนึ่ง ในบทของการวาดความสัมพันธ์นะคะ

00:47:50.406 --> 00:47:52.874
ข้อดีของแบบจำลองเชิงสัมพันธ์ที่เป็นตาราง

00:47:53.608 --> 00:47:57.951
อ่านง่าย เข้าใจง่าย เพราะนำเสนอในลักษณะของตาราง

00:47:58.260 --> 00:48:01.311
สามารถเลือกดูข้อมูลได้ตามสิ่งที่เราสนใจ

00:48:01.697 --> 00:48:09.110
ความซับซ้อนข้อมูลก็มีน้อย เพราะว่าข้อมูล ในเชิง 2 มิตินี่ พอมันมองนี่ มันมองง่าย

00:48:09.651 --> 00:48:15.163
ความปลอดภัยค่อนข้างดีนะคะ เพราะว่าผู้ใช้งาน ก็จะไม่รู้ว่าเราเก็บข้อมูลอย่างไร

00:48:15.163 --> 00:48:18.535
รู้แค่ว่าอยากเรียกใช้ข้อมูลอะไรได้บ้างนะคะ

00:48:18.767 --> 00:48:22.488
แล้วก็โครงสร้างของข้อมูล แน่นอน ถ้าเราเปลี่ยนโปรแกรม

00:48:23.106 --> 00:48:25.608
ก็ยังสามารถทำงานได้นะคะ

00:48:26.998 --> 00:48:34.454
แต่ข้อเสียของมันก็มีนะคะ ก็คือค่าใช้จ่ายค่อนข้างสูงนะคะ

00:48:34.454 --> 00:48:40.745
เพราะว่าทรัพยากรที่ใช้ในการจัดการนี่ ต้องมีสมรรถนะที่สูงนิดหนึ่ง

00:48:41.170 --> 00:48:43.404
ประมวลผลต้องเร็วนะคะ

00:48:43.983 --> 00:48:47.464
การปรับปรุงแก้ไขข้อมูลก็อาจจะมีความยุ่งยาก

00:48:47.464 --> 00:48:54.268
เพราะว่าไม่รู้ว่าข้อมูลภายในที่เก็บจริง ๆ แล้วนี่ มันเป็นอย่างไร มีคนเดียวที่รู้

00:48:54.268 --> 00:48:56.601
ก็คือคนจัดการฐานข้อมูลเท่านั้น

00:48:57.450 --> 00:49:02.879
บางครั้งผู้ใช้งานนี่อาจจะคนที่ต้องคีย์ข้อมูลเข้าไป ก็อาจจะเริ่มงงว่า

00:49:03.111 --> 00:49:08.532
สรุปว่าฉันต้องกรอกข้อมูลอะไร ทำไมข้อมูลมันไม่ผ่าน

00:49:10.463 --> 00:49:17.970
นะคะ อย่างเช่น อาจจะไม่มี อันนี้มันก็จะเกี่ยวเนื่องไปถึงการออกแบบระบบด้วย

00:49:18.550 --> 00:49:21.705
เหมือนบางคนใส่เลขบัตรประชาชนไม่ครบ 13 หลัก

00:49:22.864 --> 00:49:31.762
ถ้าผู้ดูแลระบบออกแบบไม่ดี มันก็จะไม่มีแจ้งเตือน ว่าเลขบัตรประชาชนคุณน่ะไม่ครบ

00:49:33.616 --> 00:49:38.623
คนใช้งานก็จะเริ่มงงแล้วว่า เอ้า ฉันผิดอะไรนะคะ

00:49:38.623 --> 00:49:43.759
มันตั้งแต่การออกแบบเลย เพราะฉะนั้น คนดูแลระบบก็ต้องป้องกันสิ่งที่จะเกิดขึ้นด้วย

00:49:43.759 --> 00:49:47.193
คืออาจจะมีการแจ้งเตือนว่าเราผิดพลาดตรงไหน

00:49:47.425 --> 00:49:50.533
ข้อมูลจะเป็นอะไรได้บ้างนะคะ

00:49:50.765 --> 00:49:53.351
เหมือนการเก็บข้อมูลรูปภาพ

00:49:54.510 --> 00:49:56.331
รูปภาพต้องขนาดเท่าไร

00:49:57.296 --> 00:49:58.863
ต้องเป็นภาพสีไหม

00:49:59.288 --> 00:50:03.948
หรือต้องเป็นภาพขาวดำเท่านั้น จะต้องอธิบายให้ชัดเจนนะคะ เพราะว่า

00:50:03.948 --> 00:50:08.387
ถ้ามีการปรับปรุงข้อมูลทีหนึ่งนี่ บางทีถ้าผู้ใช้งานไม่เข้าใจ

00:50:08.387 --> 00:50:12.390
มันก็จะไม่สามารถบันทึกลงฐานข้อมูลได้นะคะ

00:50:14.060 --> 00:50:18.577
กับแบบจำลองข้อมูลเชิงวัตถุนะคะ

00:50:18.771 --> 00:50:25.193
ส่วนมากจะเป็นการออกแบบ เพื่อเขียนแอปพลิเคชัน

00:50:26.390 --> 00:50:30.972
นะคะ มองทุกอย่างให้เป็นวัตถุชนิดหนึ่งนะคะ

00:50:31.667 --> 00:50:38.128
มันก็จะมีการห่อหุ้มวัตถุนั้น ๆ ไว้ด้วยอะไรบ้างนะคะ

00:50:38.476 --> 00:50:42.385
อันนี้ก็พอเรียนปีสูงขึ้น ทุกคนก็จะได้เรียน

00:50:43.814 --> 00:50:47.181
การทำงานเชิงวัตถุมากขึ้นนะคะ

00:50:47.413 --> 00:50:53.366
อันนี้ปี 1 ก็ฐานข้อมูลเชิงสัมพันธ์นี้ก็เต็มที่แล้วนะคะ

00:50:53.791 --> 00:50:56.380
อันนี้อาจารย์เอามาให้รู้จักเฉย ๆ

00:50:57.037 --> 00:51:01.849
เพราะว่าถ้าเป็นฐานข้อมูล หรือการเขียนโปรแกรมเชิงวัตถุใด ๆ ก็ตาม

00:51:02.312 --> 00:51:06.133
มันจะทำงานซับซ้อนได้ดีกว่า

00:51:07.021 --> 00:51:13.834
มันเหมาะกับการทำงานเกี่ยวกับภาพกราฟิก การเก็บวีดิโอ เสียง อย่างเช่นเราเล่น Facebook

00:51:13.834 --> 00:51:18.502
มีหมดเลย ทั้งภาพ ทั้งวิดีโอ ทั้งเสียง

00:51:18.734 --> 00:51:27.471
ที่เราต้องเก็บข้อมูล แล้วก็สามารถเอาข้อมูลที่มีอยู่ หรือนานมาแล้วนี่ เรียกกลับมาใช้ซ้ำได้

00:51:28.398 --> 00:51:31.698
ง่ายกว่ารูปแบบจัดการฐานข้อมูลชนิดอื่น ๆ

00:51:33.204 --> 00:51:37.057
แต่ข้อเสียของการทำงานเชิงวัตถุ ก็คือ

00:51:38.061 --> 00:51:45.934
จะต้องมีความชำนาญมาก ๆ แล้วก็เข้าใจ ในการมองโปรแกรม หรือมองข้อมูลนะคะ

00:51:46.166 --> 00:51:48.395
มองทุกอย่างให้เป็นวัตถุชนิดหนึ่ง

00:51:49.515 --> 00:51:53.824
อาจจะต้องใช้ประสบการณ์ ในการจัดการกับข้อมูลที่มีความซับซ้อนมาก ๆ

00:51:56.180 --> 00:52:00.000
พอเราอายุเท่านี้ อาจจะยังไม่เห็นความซับซ้อนของข้อมูลนะคะ

00:52:00.193 --> 00:52:05.003
แต่ถ้ามันไปทำงานจริง ๆ นี่ ถ้าคุณต้องดูแลระบบใหญ่ ๆ ใด ๆ ก็ตามนี่

00:52:05.312 --> 00:52:12.147
ข้อมูลมันก็จะเริ่มซับซ้อนขึ้น มีส่วนย่อย ๆ เกิดขึ้นมากมายนะคะ

00:52:12.147 --> 00:52:16.685
เพราะฉะนั้น การที่เราจะเป็นคนที่ออกแบบข้อมูล หรือดูแลฐานข้อมูลนี่

00:52:16.917 --> 00:52:24.894
เราจะต้องมองภาพโดยรวมทั้งหมดให้ได้นะคะ เหมือนที่อาจารย์ยกตัวอย่างตอนแรก

00:52:25.937 --> 00:52:28.143
ครั้งหน้า ๆ ถ้ามี

00:52:30.306 --> 00:52:37.448
ให้วาดรูป อาจารย์ก็จะเริ่มถามแล้ว ว่าเคยไปห้องสมุดไหมนะคะ

00:52:37.641 --> 00:52:42.594
เคยยืมหนังสือหรือเปล่า การที่เราจะยืมหนังสือห้องสมุดได้

00:52:43.289 --> 00:52:45.262
มันจะต้องเกี่ยวข้องกับอะไรบ้าง

00:52:46.073 --> 00:52:50.313
เช่น เราเป็นสมาชิกห้องสมุดไหมนะคะ

00:52:50.699 --> 00:52:58.040
แล้วเราไปห้องสมุด เราจะยืมหนังสือ มันจะต้องมีข้อมูลหนังสือที่เราจะยืมไหมนะคะ

00:52:58.040 --> 00:53:02.139
ชื่อหนังสืออะไร หนังสือมีรหัสหนังสือหรือเปล่า

00:53:02.950 --> 00:53:07.156
ยืมได้กี่วันนะคะ

00:53:07.542 --> 00:53:12.096
ใครเป็นคนแต่งหนังสือเล่มนั้น นี่แค่การยืมหนังสือเล่มเดียว

00:53:12.830 --> 00:53:16.527
ข้อมูลที่เกิดขึ้นก็มีเยอะแล้ว ใครเป็นคนยืม ใครเป็นคนแต่ง

00:53:16.759 --> 00:53:18.820
ยืมได้กี่วัน หนังสือชื่ออะไร

00:53:19.244 --> 00:53:22.113
เลขหนังสืออะไร นักศึกษาคนไหนเป็นคนยืม

00:53:22.576 --> 00:53:26.083
นะคะ อันนี้ก็แค่ยืมหนังสือเฉย ๆ

00:53:26.894 --> 00:53:33.875
ในข้อสอบหรือในชีวิตจริง พวกคุณจะต้องเจออะไรที่เยอะกว่านี้เยอะนะคะ

00:53:35.999 --> 00:53:43.338
กับอีกอันหนึ่งนะคะ เป็นแบบจำลองฐานข้อมูลแบบหลายมิตินะคะ

00:53:44.226 --> 00:53:50.887
ใครเคยเล่นรูบิกลักษณะหลาย ๆ มิติ จะเป็นแบบนั้นเลยนะคะ เป็นก้อน ๆ นะคะ

00:53:51.505 --> 00:53:58.088
เช่น การเก็บข้อมูลส่วนมาก จะเป็นเกี่ยวกับเชิงธุรกิจเสียมากกว่านะคะ

00:53:58.551 --> 00:54:02.319
อาจจะเป็นเกี่ยวกับการเก็บข้อมูลผลิตภัณฑ์สินค้า

00:54:02.319 --> 00:54:06.160
อาจจะเกี่ยวข้องกับขายที่ไหน วันที่เท่าไร

00:54:06.160 --> 00:54:10.700
มาประมวลผลเป็นตาราง เพราะว่าทุกอย่างจะทับซ้อนกันไปอีกเยอะมาก

00:54:11.163 --> 00:54:15.140
ขายอะไร ขายที่ไหน ขายเมื่อไร

00:54:16.183 --> 00:54:19.549
ในสินค้าชนิดเดียวนะคะ

00:54:20.321 --> 00:54:25.279
เหมือนข้อมูลเวลาเราซื้อของ วันหมดอายุเท่าไร ผลิตที่ไหน ส่วนประกอบอะไร

00:54:25.897 --> 00:54:29.368
หลาย ๆ ทุกอย่าง ข้อมูลหลาย ๆ ตาราง จะซ้อนกันเป็นมิติ

00:54:29.677 --> 00:54:35.152
เวลาเราดูขนม 1 ห่อ ส่วนประกอบมีอะไรนะคะ ผลิตที่ไหน

00:54:35.538 --> 00:54:41.337
ต้องบริโภควันที่เท่าไร ใครเป็นคนผลิต ใครเป็นคนนำเข้า หลาย ๆ อย่างซ้อนทับกัน

00:54:41.337 --> 00:54:47.841
จนเป็นหลาย ๆ มิตินะคะ ลักษณะคล้าย ๆ รูปทรงแบบนี้นะคะ

00:54:47.841 --> 00:54:51.866
แค่ของชิ้นเดียวเก็บข้อมูลเยอะมากนะคะ

00:54:52.445 --> 00:54:53.507
เป็นแบบนี้

00:54:54.472 --> 00:55:02.822
จริง ๆ วันนี้ก็จะไม่มีอะไรมาก เพราะว่าเป็นแค่แนะนำ เพื่อปูทางในการวาดภาพ

00:55:03.556 --> 00:55:07.389
แผนภาพ ER ของเรา ในบทต่อไปนะคะ

00:55:07.389 --> 00:55:14.522
วันนี้ก็มีการบ้านเหมือนกันค่ะ 10 ข้อ เหมือนเดิม ทำใส่กระดาษรายงานส่งนะคะ

00:55:14.947 --> 00:55:20.247
เนื้อหาที่จะตอบ ก็อยู่ในสไลด์อาจารย์หมดแล้วนะคะ

00:55:20.981 --> 00:55:26.928
ก็ไม่น่าจะมีปัญหาอะไร มีอะไรสงสัยไหมคะ

00:55:27.276 --> 00:55:29.277
เดี๋ยวจะได้ปล่อยทำงาน

00:55:33.294 --> 00:55:37.226
ไม่มี อย่างนั้นเดี๋ยวจะให้นั่งทำงานนะคะ

00:55:39.427 --> 00:55:44.402
ก็เนื้อหาประมาณนี้ค่ะล่าม วันนี้เนื้อหาไม่เยอะ ขอบคุณมากนะคะวันนี้

00:55:47.222 --> 00:55:49.008
โอเค ขอบคุณค่ะ