﻿1
00:00:04,000 --> 00:00:04,000

2
00:00:04,000 --> 00:00:04,000

3
00:00:04,000 --> 00:00:08,000
(อาจารย์เกวลี) วันนี้จะเป็นเนื้อหาบทที่ 2

4
00:00:08,012 --> 00:00:12,012
นะคะ จะเกี่ยวข้องกับฐานข้อมูล แล้วก็

5
00:00:12,016 --> 00:00:16,016
ทฤษฎีเกี่ยวกับแบบจำลองข้อมูล ข้อมูลที่

6
00:00:16,020 --> 00:00:20,020
ใช้ปัจจุบันนี่บางคนก็ไม่รู้ว่าทำไมเราต้อง

7
00:00:20,022 --> 00:00:24,022
เก็บเหมือนนักศึกษา 1 คนทำไมต้องถามด้วยล่ะ

8
00:00:24,024 --> 00:00:28,024
ชื่ออะไร นามสกุลอะไร เรียนจบที่ไหนมา

9
00:00:28,029 --> 00:00:32,029
นะคะ เกรดเฉลี่ยตอนจบ ม. 6 หรือ

10
00:00:32,033 --> 00:00:36,033
จบสายอาชีพ ได้เกรดเฉลี่ยเท่าไร เทอมที่แล้ว

11
00:00:36,037 --> 00:00:40,037
เราเรียนไปกี่วิชานะคะ ได้คะแนนเท่าไร

12
00:00:40,041 --> 00:00:44,041
ได้เกรดเท่าไร ทำไมต้องดเก็บแบบนี้

13
00:00:44,043 --> 00:00:48,043
นะคะ ทุกอย่างก็จะมีเหตุมีผล เพราะว่าข้อมูลทุกรูปแบบนี่ก็จะมี

14
00:00:48,047 --> 00:00:52,047
เนื้อหาความสำคัญ

15
00:00:52,053 --> 00:00:56,053
ของชุดข้อมูลนั้น ๆ อยู่นะคะ

16
00:00:56,057 --> 00:01:00,057
โดยที่เราจะเรียกสิ่งนั้น ๆ ว่า "แนวคิด

17
00:01:00,061 --> 00:01:04,061
เกี่ยวกับการออกแบบฐานข้อมูล" หรือว่า "สถาปัตยกรรมฐานข้อมูล

18
00:01:04,064 --> 00:01:08,064
" นะคะ มันก็จะเป็นข้อกำหนดแล้วก็

19
00:01:08,068 --> 00:01:12,068
ข้อตกลง รวมถึงขอบเขตหรืออาจจะเป็นกรอบ

20
00:01:12,072 --> 00:01:16,072
ความคิดนะคะ ในการบรรยายว่า

21
00:01:16,076 --> 00:01:20,076
ฐานข้อมูลนั้น ๆ ควรจะเป็นอย่างไรนะคะ โครงสร้าง ก็คือข้อมูลที่เรา

22
00:01:20,078 --> 00:01:24,078
จะเก็บมีอะไรบ้าง ส่วนประกอบที่เอามาประกอบกันไป

23
00:01:24,080 --> 00:01:28,080
จนเป็นระบบฐานข้อมูลมีอะไรนะคะ

24
00:01:28,084 --> 00:01:32,084
โดยที่สถาปัตยกรรมฐานข้อมูลนี่

25
00:01:32,086 --> 00:01:36,086
มันจะมีส่วนประกอบสำคัญอยู่ 3 ส่วนนะคะ ก็คือในตัวสถาปัตยกรรมระบบเอง

26
00:01:36,090 --> 00:01:40,090
นะคะ และก็ความเป็นอิสระของข้อมูล

27
00:01:40,094 --> 00:01:44,094
นะคะ เดี๋ยวจะอธิบายว่าแต่ละอันคืออะไร

28
00:01:44,095 --> 00:01:48,095
กับภาษาที่ใช้ในการจัดการ

29
00:01:48,099 --> 00:01:52,099
ฐานข้อมูลนะคะ 3 อย่างนี้จะต้องทำงานร่วมกัน

30
00:01:52,103 --> 00:01:56,103
โดยสถานปัตยกรรมของฐานข้อมูลนี่

31
00:01:56,107 --> 00:02:00,107
กับขอบเขตนะคะ หรือกรอบถ้าเป็น

32
00:02:00,111 --> 00:02:04,111
ภาษาทางวิชาการเรียกว่ากรอบ

33
00:02:04,113 --> 00:02:08,113
เชิงวิชาการเขาเรียกว่า "กรอบ" ที่ใช้ประโยชน์ในการบรรยายว่า

34
00:02:08,115 --> 00:02:12,115
ทำไมเราถึงสร้างฐานข้อมูลแบบนี้ ทำไมเรา

35
00:02:12,120 --> 00:02:16,120
เก็บข้อมูลแบบนี้ และในฐานข้อมูลนี่เรามีโครงสร้าง

36
00:02:16,124 --> 00:02:20,124
เก็บข้อมูลแบบไหนบ้างนะคะ ซึ่งหลัก ๆ แล้วนี่

37
00:02:20,126 --> 00:02:24,126
โครงสร้างที่ใช้ในการสร้างฐานข้อมูลนี่มันจะมีอยู่ 3 ระดับ

38
00:02:24,129 --> 00:02:28,129
นะคะ มีระดับภายนอก ระดับภายใน แล้วก็ระดับแนวคิด

39
00:02:28,134 --> 00:02:32,134
เดี๋ยวจะอธิบายไปทีละอย่าง ทีละอย่างนะคะ

40
00:02:32,136 --> 00:02:36,136
ความเป็นอิสระของข้อมูลคืออะไร

41
00:02:36,140 --> 00:02:40,140
นะคะ ก็คือการที่ผู้ใช้งานสามารถ

42
00:02:40,143 --> 00:02:44,143
เปลี่ยนแปลงข้อมูล อาจจะเป็นในระดับของการ

43
00:02:44,145 --> 00:02:48,145
ออกแบบฐานข้อมูล หรือระดับถึงขั้นการ

44
00:02:48,147 --> 00:02:52,147
เก็บข้อมูลแล้วก็ได้ โดยที่ถ้าเรามีการเปลี่ยนแปลงข้อมูล

45
00:02:52,151 --> 00:02:56,151
หรือเปลี่ยนแปลงการจัดเก็บข้อมูล โปรแกรม

46
00:02:56,152 --> 00:03:00,152
ที่ใช้งานจะไม่ได้รับผลกระทบจากการเปลี่ยนแปลง

47
00:03:00,155 --> 00:03:04,155
นะคะ โปรแกรมก็อยู่ส่วนของโปรแกรม ข้อมูลก็จะอยู่ของข้อมูล

48
00:03:04,157 --> 00:03:08,157
จะแยกออกจากกันนะคะ โดยที่

49
00:03:08,161 --> 00:03:12,161
ผู้ใช้งานนี่จะมองเห็นแค่ว่า

50
00:03:12,164 --> 00:03:16,164
การเก็บข้อมูลระดับภายนอก ก็คือเราเก็บอะไรบ้าง

51
00:03:16,169 --> 00:03:20,169
เหมือนเวลาคุณอยากเล่น TikTok

52
00:03:20,172 --> 00:03:24,172
อยากเล่น Facebook อยากเล่น

53
00:03:24,173 --> 00:03:28,173
Instagram

54
00:03:28,179 --> 00:03:32,179
เขาก็จะถามว่าคุณชื่ออะไร มีเบอร์โทรศัพท์ไหม มีโปรไฟล์

55
00:03:32,184 --> 00:03:36,184
อันนี้คือข้อมูลระดับ

56
00:03:36,188 --> 00:03:40,188
ภายนอกที่ผู้ใช้งานอย่างเรา ๆ นี่

57
00:03:40,191 --> 00:03:44,191
ให้ข้อมูลไป แล้วก็เป็นสิ่งที่เราเป็นคนเห็นเองว่าข้อมูล

58
00:03:44,192 --> 00:03:48,192
ที่กรอกลงไปนี่มีอะไรบ้างนะคะ แต่ถามว่าถ้า

59
00:03:48,196 --> 00:03:52,196
เราอยากเปลี่ยนแปลงได้ไหม ว่านอกจากรูปภาพนี่

60
00:03:52,200 --> 00:03:56,200
อยากให้เขาขอเกี่ยวกับอะไรดีล่ะ

61
00:03:56,206 --> 00:04:00,206
สถานะการเรียน เราจะไปบอกเขาว่า

62
00:04:00,210 --> 00:04:04,210
อยากบอก อยากให้เพิ่มเมนูตรงนี้ได้ไหม เราทำไม่ได้

63
00:04:04,212 --> 00:04:08,212
นะคะ เพราะอันนั้นเป็นระดับโครงสร้าง ระดับแนวคิด ระดับ

64
00:04:08,217 --> 00:04:12,217
ภายใน ซึ่งผู้ใช้งานธรรมดานี่จะแก้ไขไม่ได้

65
00:04:12,220 --> 00:04:16,220
นะคะ โดยที่... เพราะฉะนั้นนี่

66
00:04:16,224 --> 00:04:20,224
สมมติเรามีการเปลี่ยนแปลงข้อมูล จะมีการเปลี่ยนแปลง

67
00:04:20,226 --> 00:04:24,226
ข้อมูลส่วนตัวเรานี่ล่ะนะคะ ถ้าเราเปลี่ยนแปลงเฉพาะ

68
00:04:24,227 --> 00:04:28,227
ข้อมูลเราตัวเองนี่ มันจะไม่กระทบกับคนอื่น

69
00:04:28,232 --> 00:04:32,232
รวมถึงไม่ได้กระทบกับ Facebook ไม่ได้กระทบกับ Instagram

70
00:04:32,234 --> 00:04:36,234
Tiktok ใช้งานปกติได้ ถึงแม้คุณจะบอกว่า จะ

71
00:04:36,239 --> 00:04:40,239
เปลี่ยนแปลงรูปโปร์ไฟล์ ถามว่าโปรแกรมมันจะพังไหม

72
00:04:40,244 --> 00:04:44,244
ไม่นะคะ นี่คือการเปลี่ยนแปลง

73
00:04:44,244 --> 00:04:48,244
ระดับต่ำ ก็คือเป็นการเปลี่ยนแปลงของผู้ใช้งานโดยตรงนะคะ

74
00:04:48,249 --> 00:04:52,249

75
00:04:52,253 --> 00:04:56,253
ความเป็นอิสระของข้อมูลเชิง

76
00:04:56,256 --> 00:05:00,256
ตรรกะ ก็คือการเปลี่ยนแปลงมุมมอง

77
00:05:00,260 --> 00:05:04,260
ของผู้ใช้งาน อย่างเช่น คุณอยาก

78
00:05:04,262 --> 00:05:08,262
จะ... วันนี้เราอัปรูปไป 4 รูปนะคะ

79
00:05:08,266 --> 00:05:12,266
คุณอยากจะสลับตำแหน่งนะคะ

80
00:05:12,272 --> 00:05:16,272
ย้ายจากรูปสุดท้ายมารูปที่ 1 ถามว่า

81
00:05:16,274 --> 00:05:20,274
โปรแกรมนั้นจะพังไหม ไม่พังนะคะ เพราะมันถือว่า

82
00:05:20,278 --> 00:05:24,278
เป็นการเปลี่ยนแปลงภายนอก ไม่ได้เปลี่ยนแปลงโค้ดโปรแกรม

83
00:05:24,281 --> 00:05:28,281
ไม่ได้บอกให้

84
00:05:28,284 --> 00:05:32,284
ผู้ดูแลระบบลบเมนูตรงนี้ออก

85
00:05:32,288 --> 00:05:36,288
ไม่ใช่นะคะ อันนี้ก็คือ

86
00:05:36,292 --> 00:05:40,292
ถ้าผู้ใช้งานอยากเปลี่ยนแปลงข้อมูลของตัวเองอย่างนี้ เปลี่ยนแปลงได้เลย

87
00:05:40,296 --> 00:05:44,296
นะคะ ไม่กระทบกับคนอื่น ไม่กระทบกับระบบโดยรวม

88
00:05:44,298 --> 00:05:48,298
นะคะ รวมถึงความเป็นอิสระของข้อมูล

89
00:05:48,300 --> 00:05:52,300
เชิงกายภาพนะคะ ถ้าสมมติว่าวันหนึ่ง

90
00:05:52,305 --> 00:05:56,305
Facebook ย้ายเครื่องคอมพิวเตอร์ในการ

91
00:05:56,307 --> 00:06:00,307
เก็บข้อมูลคนใช้งาน ถามว่า

92
00:06:00,309 --> 00:06:04,309
ย้ายจากเครื่องหนึ่งไปอีกเครื่องหนึ่ง ถามว่าเราใช้ Facebok เ

93
00:06:04,310 --> 00:06:08,310
ได้ไหม ได้ มันไม่กระทบกับเรานะคะ มันถือว่าเป็น

94
00:06:08,311 --> 00:06:12,311
โครงสร้างของข้อมูลระดับภายใน ส่วนของ

95
00:06:12,315 --> 00:06:16,315
บริการเขาอาจจะมีการปรับเปลี่ยนย้ายจากเครื่อง A

96
00:06:16,319 --> 00:06:20,319
ไปเครื่อง B แต่ผู้ใช้งานก็ยังสามารถทำงาน ใช้งาน

97
00:06:20,322 --> 00:06:24,322
ได้ตามปกติ ไม่ได้รู้สึกถึงความผิดปกติใด ๆ

98
00:06:24,325 --> 00:06:28,325
อาจจะมีช่วงที่แบบ ช่วงที่ Restart เครื่อง

99
00:06:28,331 --> 00:06:32,331
อะไรอย่างนี้นะคะ แต่ถามว่า Facebook เราหายไปไหม ไม่หายนะคะ

100
00:06:32,332 --> 00:06:36,332
อันนี้คือตัวอย่างคร่าว ๆ

101
00:06:36,336 --> 00:06:40,336
เชิงตรรกะเป็นอย่างไร เชิงกายภาพเป็นอย่างไร

102
00:06:40,340 --> 00:06:44,340
ต่อมาภาษาหลักของระบบ

103
00:06:44,342 --> 00:06:48,342
ฐานข้อมูลนะคะ ก็จะมีอยู่ 3 ภาษาหลัก ๆ

104
00:06:48,343 --> 00:06:52,343
นะคะ อันนี้หมายถึงว่าภาษา

105
00:06:52,348 --> 00:06:56,348
เชิงโครงสร้างที่ใช้ ไม่ได้หมายถึงชื่อภาษาทางโปรแกรม

106
00:06:56,352 --> 00:07:00,352
อันแรก คือ ภาษาสำหรับนิยามข้อมูล

107
00:07:00,357 --> 00:07:04,357
นะคะ ก็จะเป็นภาษาที่ใช้ในการกำหนดโครงสร้าง

108
00:07:04,358 --> 00:07:08,358
ของฐานข้อมูลนะคะ ว่า

109
00:07:08,358 --> 00:07:12,358
ระดับแนวคิด ก็คือคุณวางแผนไว้ว่าอย่างไร อย่างเช่น

110
00:07:12,362 --> 00:07:16,362
อาจารย์อาจจะ... พอคุณเรียนปีสูง ๆ ขึ้น อาจจะ

111
00:07:16,366 --> 00:07:20,366
ได้ทำ Project อาจจะเขียนโปรแกรมเป็นของตัวเอง สมมติ

112
00:07:20,370 --> 00:07:24,370
ว่าได้ทำโปรเจกต์เกี่ยวกับร้าน

113
00:07:24,372 --> 00:07:28,372
ในร้านหนังสือร้านหนึ่งเราต้องเก็บข้อมูลอะไรบ้าง เราต้องเขียนออกมาให้ได้

114
00:07:28,373 --> 00:07:32,373
นะคะ สิ่งนี้เราจะเรียกว่าระดับแนวคิด

115
00:07:32,376 --> 00:07:36,376
เราจะมาให้ความหมายว่าในฐานข้อมูลเรา

116
00:07:36,380 --> 00:07:40,380
นี่ ระหว่างผู้ใช้งาน สมาชิก

117
00:07:40,384 --> 00:07:44,384
เจ้าของร้าน สามารถทำอะไรได้บ้าง สิ่งเหล่านี้จะ

118
00:07:44,386 --> 00:07:48,386
เรียกว่า "View" หรือจะเรียกว่ามุมมองของแต่ละคน

119
00:07:48,392 --> 00:07:52,392
เอาง่าย ๆ ยกตัวอย่างอีกแล้ว Facebook Facebook หน้าที่คุณ

120
00:07:52,394 --> 00:07:56,394
ดู กับหน้าที่เพื่อนดูอาจจะไม่เหมือนกัน

121
00:07:56,399 --> 00:08:00,399
ใน Facebook สามารถกำหนดว่ารูปนี้จะเก็บไว้ดู

122
00:08:00,401 --> 00:08:04,401
คนเดียว หรือรูปนี้จะให้เพื่อนดูได้

123
00:08:04,403 --> 00:08:08,403
รูปนี้จะให้ใครก็ได้มาดู

124
00:08:08,407 --> 00:08:12,407
ไม่ปิดกั้น อย่างนี้ก็มี อันนี้คือ

125
00:08:12,412 --> 00:08:16,412
การกำหนดสถานะมุมมองของการดูข้อมูลของเรา

126
00:08:16,416 --> 00:08:20,416
นะคะ เราจะกำหนดตั้งแต่การกำหนดโครงสร้างของฐานข้อมูล

127
00:08:20,421 --> 00:08:24,421
เลยว่าผู้ใช้งานแต่ละคนดูข้อมูลส่วนไหน

128
00:08:24,423 --> 00:08:28,423
ได้บ้างนะคะ ต่อมาเป็นภาษาในการจัดการข้อมูล

129
00:08:28,427 --> 00:08:32,427
อันนี้จะ เป็นภาษาในการจัดการข้อมูล อันนี้จะเป็นภาษาเชิง Programing

130
00:08:32,429 --> 00:08:36,429
ซึ่งไว้สำหรับจัดการข้อมูลในฐานข้อมูล

131
00:08:36,433 --> 00:08:40,433
ก็จะเป็นตั้งแต่การค้นหาข้อมูล การเพิ่ม

132
00:08:40,440 --> 00:08:44,440
การลบ การแก้ไข ในฐานข้อมูล

133
00:08:44,441 --> 00:08:48,441
นะคะ อันนี้ก็จะสามารถทำได้ตามสิทธิ์

134
00:08:48,443 --> 00:08:52,443
ของผู้ใช้งานแต่ละคน บางคนค้นหา

135
00:08:52,447 --> 00:08:56,447
ได้ แต่เพิ่มไม่ได้ บางคนเพิ่ม

136
00:08:56,452 --> 00:09:00,452
ได้ แต่ห้ามลบนะคะ อันนี้ก็เป็น

137
00:09:00,456 --> 00:09:04,456
คำสั่งที่ใช้ภายในฐานข้อมูล ต่อมา

138
00:09:04,458 --> 00:09:08,458
เป็นภาษาควบคุมนะคะ มันจะเป็นภาษา

139
00:09:08,463 --> 00:09:12,463
ที่เอาไว้สำหรับควบคุมความถูกต้องของข้อมูล

140
00:09:12,469 --> 00:09:16,469
เช่นอะไรบ้าง อย่างเช่น อาจารย์ให้กรอกช

141
00:09:16,473 --> 00:09:20,473
ื่อนะคะ กรอกชื่อ แต่ว่านักศึกษา

142
00:09:20,476 --> 00:09:24,476
บางคนลืมเปลี่ยนภาษา หรือลืมเปลี่ยนปุ่ม

143
00:09:24,477 --> 00:09:28,477
หรือเปิดปุ่มตัวเลขไว้

144
00:09:28,481 --> 00:09:32,481
นะคะ กลายเป็นว่าพิมพ์ชื่อตัวเองเป็นตัวเลข

145
00:09:32,483 --> 00:09:36,483
ภาษาระดับควบคุม ก็คือมันจะเป็นการตรวจสอบว่าข้อมูลที่นักศึกษาใส่

146
00:09:36,488 --> 00:09:40,488
มา ถูกหรือผิด เช่น อาจารย์ให้

147
00:09:40,492 --> 00:09:44,492
กรอกได้เฉพาะตัวหนังสือเท่านั้น ใส่ตัวเลขไม่ได้

148
00:09:44,493 --> 00:09:48,493
นะคะ หรือการเกิดภาวะพร้อมกัน อย่างเช่น

149
00:09:48,495 --> 00:09:52,495
จองตั๋วคอนเสิร์ต

150
00:09:52,499 --> 00:09:56,499
ดังมาก เข้ามาจองพร้อมกันสัก 50,000 คน

151
00:09:56,503 --> 00:10:00,503
เราจะมีการจัดการคน 50,000 คน

152
00:10:00,504 --> 00:10:04,504
อย่างไรนะคะ ให้สามารถ

153
00:10:04,506 --> 00:10:08,506
ทำงานได้ อันนี้คือการเกิดภาวะพร้อมกัน ก็คือเข้ามาใช้งานพร้อมกัน

154
00:10:08,507 --> 00:10:12,507
ทั้งหมดนะคะ

155
00:10:12,511 --> 00:10:16,511
โดยสถาปัตยกรรมฐานข้อมูลนี่

156
00:10:16,513 --> 00:10:20,513
มันก็จะมีการศึกษาทั้งโครงสร้างองค์ประกอบหลักนะคะ

157
00:10:20,516 --> 00:10:24,516
ทั้งฐานข้อมูล หน้าที่แต่ละองค์ประกอบ แต่ละคน แต่ละผู้ใช้งาน

158
00:10:24,518 --> 00:10:28,518
นะคะ รวมถึงการเขียนโปรแกรมเพื่อ

159
00:10:28,520 --> 00:10:32,520
สื่อสารแล้วก็ติดต่อกับส่วนอื่น ๆ นะคะ

160
00:10:32,521 --> 00:10:36,521
ในระบบฐานข้อมูลอาจจะไม่ได้มีแค่โปรแกรมเดียวที่ทำงานนะคะ

161
00:10:36,524 --> 00:10:40,524
อาทิตย์ที่แล้วเคยบอกว่าระบบบัญชี ระบบบุคคล

162
00:10:40,528 --> 00:10:44,528
ระบบการเงิน ก็ใช้ฐานข้อมูลร่วมกันนะคะ

163
00:10:44,529 --> 00:10:48,529
โดยที่ถ้าสมมติว่าเรามีการเปลี่ยนแปลงโปรแกรม

164
00:10:48,531 --> 00:10:52,531
นะคะ โครงสร้างของฐานข้อมูลจะยังอยู่นะคะ

165
00:10:52,535 --> 00:10:56,535
ข้อมูลจะไม่หายไปไหน เพราะเราเปลี่ยนแค่ตัวโปรแกรม

166
00:10:56,537 --> 00:11:00,537
เราไม่ได้เปลี่ยนทั้งโครงสร้าง ถ้าเปลี่ยนโปรแกรมใหม่

167
00:11:00,539 --> 00:11:04,539
มันก็จะมีการเชื่อมต่อที่ทำให้ข้อมูลมันสามารถทำงาน

168
00:11:04,540 --> 00:11:08,540
ได้นะคะ

169
00:11:08,545 --> 00:11:12,545
โดยระบบฐาน

170
00:11:12,547 --> 00:11:16,547
ข้อมูลนี่ มันจะเป็นข้อมูลที่มีอยู่ในองค์กร หรือข้อมูลเพิ่มเติม

171
00:11:16,548 --> 00:11:20,548
นะคะ ที่มีความเกี่ยวข้องกันมารวมไว้ที่เดียวกันนะคะ

172
00:11:20,552 --> 00:11:24,552
โดยผู้ใช้งานในฐานข้อมูลนี่จะมอง

173
00:11:24,553 --> 00:11:28,553
มุมมองหรือ View ที่แตกต่างกันไปตามสิทธิ์ของการใช้งาน

174
00:11:28,555 --> 00:11:32,555
นะคะ โดยที่

175
00:11:32,556 --> 00:11:36,556
ผู้ใช้งานนี่ไม่จำเป็นต้องรู้ว่า... ถ้าคุณเป็นผู้ใช้งาน

176
00:11:36,560 --> 00:11:40,560
ทั่วไป เขาจำเป็นจะต้องรู้ไหมว่าโปรแกรมเมอร์

177
00:11:40,564 --> 00:11:44,564
เขียนโปรแกรมอย่างไร โปรแกรมเมอร์ใช้วิธีอะไรในการแสดงภาพ

178
00:11:44,565 --> 00:11:48,565
โปรแกรมเมอร์ทำอย่างไรให้เราดู YouTube ได้

179
00:11:48,568 --> 00:11:52,568
อันนี้ไม่จำเป็นต้องรู้นะคะ

180
00:11:52,572 --> 00:11:56,572
โดยที่สิ่งเหล่านี้มันซ่อนรายละเอียดไว้ได้

181
00:11:56,573 --> 00:12:00,573
แต่ว่าให้แสดงออกมาได้ไหม แสดงได้ แต่ User

182
00:12:00,576 --> 00:12:04,576
หรือผู้ใช้งานไม่จำเป็นต้องรู้ เพราะฉะนั้น เราซ่อนมันไว้ได้เ

183
00:12:04,577 --> 00:12:08,577
นะคะ ยกเว้นบางอย่างนี่ ที่เป็นภาษาโปรแกรม

184
00:12:08,579 --> 00:12:12,579
นี่ เหมือนเวลาเราใช้ Google

185
00:12:12,580 --> 00:12:16,580
Chrome เราก็สามารถดูได้ว่าโค้ดโปรแกรมที่

186
00:12:16,584 --> 00:12:20,584
ผู้ดูแลระบบเขียนไว้นี่ เขาเขียนอย่างไรบ้าง ดู

187
00:12:20,589 --> 00:12:24,589
ได้นะคะ แต่ถามว่าพ่อแม่เราจะอยากรู้ไหมว่า Google เขียนโปรแกรมอย่างไร

188
00:12:24,590 --> 00:12:28,590
ก็คงไม่นะคะ  อยากรู้มั้ยว่า Google เขียนโปรแกรมอย่างไร

189
00:12:28,593 --> 00:12:32,593
ไม่จำเป็นต้องเปิดดู แต่ถามว่าเปิดดูได้ไหม บางส่วนก็เปิดดูได้

190
00:12:32,595 --> 00:12:36,595
นะคะ

191
00:12:36,596 --> 00:12:40,596
โดยสถาปัตยกรรมฐานข้อมูลนี่มีอยู่ 3 ระดับ

192
00:12:40,599 --> 00:12:44,599
นะคะ เหมือนที่พูดไปตอนต้น ก็คือมี

193
00:12:44,601 --> 00:12:48,601
ระดับภายนอก ระดับแนวคิด และระดับภายใน มี 3 ระดับ โดยแสดง

194
00:12:48,604 --> 00:12:52,604
เป็นแผนภาพแบบนี้นะคะ

195
00:12:52,606 --> 00:12:56,606
ให้... ขีดเส้นให้ด้วย อันนี้ระดับ

196
00:12:56,610 --> 00:13:00,610
ภายนอกนะคะ เดี๋ยวเติมเส้นแบบนี้

197
00:13:00,613 --> 00:13:04,613
ระดับภายนอก ก็คือเราอาจจะมีผู้ใช้งาน 1 คน

198
00:13:04,615 --> 00:13:08,615
2 คน หรือหลายคน แต่ละคนอาจ

199
00:13:08,616 --> 00:13:12,616
ใช้ระบบเดียวกัน แต่หน้าจอที่ดู

200
00:13:12,619 --> 00:13:16,619
อยู่ไม่เหมือนกันก็ได้นะคะ อย่างเช่น นักศึกษา

201
00:13:16,623 --> 00:13:20,623
เข้าไปใช้ระบบทะเบียน

202
00:13:20,627 --> 00:13:24,627
คนหนึ่งดูเกรด คนที่ 2 พิมพ์

203
00:13:24,628 --> 00:13:28,628
ใบลงทะเบียน คนที่ 3

204
00:13:28,630 --> 00:13:32,630
อาจจะค้นหาคำอธิบายรายวิชา ถามว่าเขาใช้ระบบ

205
00:13:32,635 --> 00:13:36,635
เดียวกันไหม ระบบเดียวกันไหม ใช่ ระบบเดียวกัน แต่เขาอาจจะทำงาน

206
00:13:36,637 --> 00:13:40,637
ไม่เหมือนกันก็ได้นะคะ คุณอยากดูตรงไหนก็ได้

207
00:13:40,642 --> 00:13:44,642
หรืออาจจะดูเหมือนกันก็ได้ แต่จะต้องเป็นข้อมูลของตัวเอง

208
00:13:44,644 --> 00:13:48,644
อย่างเช่น เกรดคุณจะดูของเพื่อนไม่ได้ เพราะ

209
00:13:48,645 --> 00:13:52,645
แต่ละคนมีสิทธิ์ของตัวเองเท่านั้น จะไปละเมิด

210
00:13:52,651 --> 00:13:56,651
ความเป็นส่วนตัวของคนอื่นไม่ได้นะคะ

211
00:13:56,653 --> 00:14:00,653
อันนี้ก็มันจะมีกฎหมายอยู่

212
00:14:00,658 --> 00:14:04,658
เวลาเราจะดูข้อมูลใคร หรือโพสต์รูปใคร

213
00:14:04,661 --> 00:14:08,661
หรือพิมพ์ถึงใคร มีกฎหมายกำหนดนะ

214
00:14:08,662 --> 00:14:12,662
คะ ต่อมาเป็นในระดับแนวคิด

215
00:14:12,663 --> 00:14:16,663
ก็จะดูแล้วว่าโครงสร้างฐานข้อมูลที่เราออกแบบ

216
00:14:16,669 --> 00:14:20,669
ไว้สำหรับการทำงาน มันจะเป็นเหมือน

217
00:14:20,673 --> 00:14:24,673
ตัวที่ไว้จัดการว่า User หรือผู้ใช้งานแต่ละคนนี่

218
00:14:24,674 --> 00:14:28,674
เรียกเข้า... เรียกข้อมูลอะไรเข้าไปดู เป็นการจัดการ

219
00:14:28,678 --> 00:14:32,678
หลังจากนั้นก็จะทำหน้าที่เชื่อมต่อกับระบบภายใน

220
00:14:32,683 --> 00:14:36,683
เพื่อดึงข้อมูลจากฐานข้อมูลไปแสดงผล

221
00:14:36,683 --> 00:14:40,683
การทำงานจะมีส่วนหลัก ๆ 3 ส่วนแบบนี้ที่เราใช้งานกัน

222
00:14:40,687 --> 00:14:44,687
แต่ถามว่า User จำเป็นต้องรู้แนวคิดเกี่ยวกับ

223
00:14:44,690 --> 00:14:48,690
ระดับภายในไหม ไม่จำเป็นนะคะ

224
00:14:48,694 --> 00:14:52,694
เขาก็จะดูแต่เฉพาะข้อมูลที่ตนเองสนใจภายนอก

225
00:14:52,696 --> 00:14:56,696
เท่านั้นนะคะ เหตุผลที่ว่า

226
00:14:56,699 --> 00:15:00,699
ทำไมเราต้องแยกออกเป็น 3 ระดับ แยกออกจากกัน ทำไมเราไม่รวม

227
00:15:00,703 --> 00:15:04,703
กันไว้นะคะ อันแรกก็คือผู้ใช้งานแต่ละคน

228
00:15:04,704 --> 00:15:08,704
นี่ก็อาจจะเข้าถึงข้อมูลเดียวกันได้ แต่

229
00:15:08,707 --> 00:15:12,707
อาจจะเรียกดูผลไม่เหมือนกัน เหมือนบางคน

230
00:15:12,711 --> 00:15:16,711
อย่างที่บอกค่ะ เข้าไปใช้ระบบทะเบียน บางคนดูเกรด

231
00:15:16,715 --> 00:15:20,715
คนหนึ่งดูลงทะเบียน คนหนึ่งค้นหารายวิชา

232
00:15:20,716 --> 00:15:24,716
หน้าตาแตกต่างกัน แต่ก็ใช้ฐานข้อมูล

233
00:15:24,718 --> 00:15:28,718
เดียวกันนะคะ ผู้ใช้งานจะไม่สามารถ

234
00:15:28,719 --> 00:15:32,719
เข้าถึงข้อมูลโดยตรงได้ ก็คือคุณจะไม่สามารถ

235
00:15:32,724 --> 00:15:36,724
พิมพ์หรือเรียกใช้

236
00:15:36,727 --> 00:15:40,727
ข้อมูลในฐานข้อมูลได้โดยตรง จะต้องผ่านระบ

237
00:15:40,729 --> 00:15:44,729
บจัดการฐานข้อมูลเท่านั้นนะคะ Admin นะคะ

238
00:15:44,732 --> 00:15:48,732
ในฐานข้อมูล ก็คือผู้บริหารฐานข้อมูล หรือว่า Databaseadmin

239
00:15:48,736 --> 00:15:52,736
ตัวย่อก็คือ DBA

240
00:15:52,740 --> 00:15:56,740
โครงสร้างของฐานข้อมูลได้

241
00:15:56,744 --> 00:16:00,744
เข้าไปดูข้อมูลที่เก็บไว้ได้นะคะ แต่จะต้อง

242
00:16:00,749 --> 00:16:04,749
ไม่สร้างผลกระทบให้กับผู้ใช้งาน ก็คือคุณ

243
00:16:04,751 --> 00:16:08,751
อาจจะปรับปรุงเปลี่ยนแปลงฐานข้อมูลอยู่

244
00:16:08,752 --> 00:16:12,752
ผู้ใช้งานก็ยังใช้งานได้ปกติ

245
00:16:12,756 --> 00:16:16,756
นะคะ โครงสร้างระดับภายในฐานข้อมูลนะคะ

246
00:16:16,761 --> 00:16:20,761
จะไม่ได้รับผลกระทบถ้าคุณมีการเปลี่ยนโปรแกรม

247
00:16:20,766 --> 00:16:24,766
ซึ่งจะอยู่ในลักษณะของเชิงกายภาพนะคะ ซึ่ง

248
00:16:24,768 --> 00:16:28,768
ถ้าเปลี่ยนโปรแกรมปุ๊บ เปลี่ยนจากกโปรแกรม A ไป B

249
00:16:28,772 --> 00:16:32,772
ข้อมูลจะต้องไม่หายไปไหน อันนี้คือเหตุผลที่

250
00:16:32,776 --> 00:16:36,776
3 ส่วนนี้เราจำเป็นจะต้องแยกออกจากกันนะคะ

251
00:16:36,778 --> 00:16:40,778
มา

252
00:16:40,783 --> 00:16:44,783
มาดูรายละเอียด

253
00:16:44,785 --> 00:16:48,785
เพิ่มเติมสำหรับระดับภายใน ก็จะเป็นระดับที่

254
00:16:48,787 --> 00:16:52,787
จัดเก็บข้อมูลอยู่ในโครงสร้างที่เราออกแบบไว้แล้ว

255
00:16:52,792 --> 00:16:56,792
นะคะ ถ้าเราเก็บข้อมูลได้ดี มันก็จะ

256
00:16:56,799 --> 00:17:00,799
มีผลต่อความเร็วแล้วก็ประสิทธิภาพในการใช้ข้อ

257
00:17:00,805 --> 00:17:04,805
มูลนะคะ ในระดับภายในนี่มันก็จะเป็นการ

258
00:17:04,806 --> 00:17:08,806
ดูว่าเรามีการสำรองข้อมูลหรือเปล่า

259
00:17:08,810 --> 00:17:12,810
เราเก็บข้อมูลอย่างไรนะคะ

260
00:17:12,815 --> 00:17:16,815
ส่วนมากข้อมูล ในฐานข้อมูลนี่

261
00:17:16,818 --> 00:17:20,818
อาจจะเก็บข้อมูลอยู่ในฮาร์ดดิสก์ก็ได้

262
00:17:20,820 --> 00:17:24,820
นะคะ มีการทำงานร่วมกับระบบปฏิบัติการ สามารถอ่านเขียนข้อมูล

263
00:17:24,822 --> 00:17:28,822
ได้ร่วมกับระบบปฏิบัติการได้ ทำไมถึงบอกว่า

264
00:17:28,826 --> 00:17:32,826
การจัดเก็บข้อมูลที่ดีมีผลต่อความเร็ว

265
00:17:32,831 --> 00:17:36,831
แล้วก็ประสิทธิภาพในการเข้าถึงข้อมูลนะคะ

266
00:17:36,832 --> 00:17:40,832
เวลาเราเก็บข้อมูลนี่ จะเห็นได้ว่าทำไม

267
00:17:40,833 --> 00:17:44,833
เราต้องเรียงลำดับตามรหัสนักศึกษาด้วย

268
00:17:44,835 --> 00:17:48,835
เอา 207 ขึ้นก่อน

269
00:17:48,836 --> 00:17:52,836
201 ได้ไหม ได้ แต่ถามว่าเวลาเราค้นหา

270
00:17:52,840 --> 00:17:56,840
ข้อมูล ถ้าเราเรียงตามลำดับ แน่นอนว่ามันหาข้อมูลได้เร็วกว่า

271
00:17:56,844 --> 00:18:00,844
เราก็มาตกลงกันเลยว่าเราจะเรียงลำดับนักศึกษา

272
00:18:00,847 --> 00:18:04,847
ในห้องนี้อย่างไร อย่างเช่น

273
00:18:04,850 --> 00:18:08,850
ซึ่งมาตรฐานทั่วไปก็จะเรียงลำดับตามรหัสนักศึกษาจากน้อยไปมาก

274
00:18:08,851 --> 00:18:12,851
ใช่ไหมคะ แต่ถ้าเราไม่มีรหัสนักศึกษาล่ะ

275
00:18:12,855 --> 00:18:16,855
โดยหลักทั่วไปก็จะเรียงตาม ก ไก่ ถึง

276
00:18:16,861 --> 00:18:20,861
ฮ นกฮูก ใช่ไหมคะ หรือว่าเรียง

277
00:18:20,866 --> 00:18:24,866
อย่างไร หรือบางฐานข้อมูลก็จะบอกว่าเรียงตามอายุ ใครอายุมากขึ้น

278
00:18:24,868 --> 00:18:28,868
ก่อน หรืออะไรอีกล่ะ เพศชาย

279
00:18:28,869 --> 00:18:32,869
ขึ้นก่อน เพศหญิงตามมา คนเกิดวันอาทิตย์ขึ้นก่อน

280
00:18:32,874 --> 00:18:36,874
หรือคนเกิดวันจันทร์ขึ้นก่อน แล้วแต่

281
00:18:36,878 --> 00:18:40,878
โครงสร้างที่เรากำหนดไว้ ทำไม เพื่อให้มันหาข้อมูลได้เร็ว เพราะ

282
00:18:40,883 --> 00:18:44,883
เรารู้แล้วว่า เกณฑ์ในการจัดเรียงข้อมูลมันคืออะไร

283
00:18:44,885 --> 00:18:48,885
เพราะว่าข้อมูลที่เก็บอยู่ใน Hard disk

284
00:18:48,889 --> 00:18:52,889
มันไม่เรียง 1 2 3 4 5 ให้เรานะคะ มันจะเรียง

285
00:18:52,893 --> 00:18:56,893
กระจัดกระจาย อยู่ตรงไหนก็ได้ที่มันมีพื้นที่

286
00:18:56,897 --> 00:19:00,897
ว่าง แต่มันจะใช้เลขแทนตำแหน่ง

287
00:19:00,902 --> 00:19:04,902
อย่างเช่น สินสมุทร

288
00:19:04,904 --> 00:19:08,904
อาจารย์กำหนดให้เป็น 001

289
00:19:08,906 --> 00:19:12,906
001 ในฮาร์ดดิสก์อาจจะเก็บตรงไหนก็ได้ แต่ถ้าสมมติอาจารย์ไม่ใส่ 001

290
00:19:12,908 --> 00:19:16,908
ล่ะ ใส่คำว่า  "สินสมุทร" มันจะหาข้อมูลเร็ว

291
00:19:16,913 --> 00:19:20,913
ขึ้นไหม ถ้าแทนด้วยตัวเลขเรียงตามลำดับ

292
00:19:20,916 --> 00:19:24,916
มันก็จะค้นหาข้อมูลได้เร็วขึ้น เหมือนอาจารย์เรียง

293
00:19:24,917 --> 00:19:28,917
ลำดับรหัสนักศึกษาจากน้อยไปหามาก เวลาเช็กชื่อ ก็เช็ก

294
00:19:28,919 --> 00:19:32,919
ว่ารหัสคนไหนหายไป หรือว่าอาจารย์ ห้องนี้

295
00:19:32,924 --> 00:19:36,924
นักศึกษาไม่เยอะมันก็ง่าย แต่

296
00:19:36,928 --> 00:19:40,928
บางวิชาอาจารย์สอน 50-60 คนขึ้นไป

297
00:19:40,933 --> 00:19:44,933
จำไม่ได้ จำไม่ไหวนะคะ การเรียงลำดับ

298
00:19:44,935 --> 00:19:48,935
จากน้อยไปหามาก ก็ทำให้รู้ว่า

299
00:19:48,937 --> 00:19:52,937
ใครมา ใครขาดนะคะ เพราะฉะนั้น

300
00:19:52,938 --> 00:19:56,938
อีกอย่างหนึ่งก็คือ เวลาเราทำ

301
00:19:56,943 --> 00:20:00,943
กิจกรรมใด ๆ ก็ตาม ทำไมเวลา... เหมือน

302
00:20:00,947 --> 00:20:04,947
สอบบรรจุก็ได้ค่ะ สอบบรรจุคุณครู ทำไมเขาถึงไม่เรียงลำดับตามคะแนน

303
00:20:04,950 --> 00:20:08,950
เพราะมันก็จะมีข้อสังเกต

304
00:20:08,950 --> 00:20:12,950
หรือข้อสงสัยเกิดขึ้น เขา

305
00:20:12,952 --> 00:20:16,952
เลยตัดปัญหาโดยการเรียงลำดับตามเลขที่สมัคร

306
00:20:16,956 --> 00:20:20,956
เพื่อให้มันค้นหาข้อมูลของผู้สมัครคนนั้นได้ง่าย

307
00:20:20,957 --> 00:20:24,957
แล้วก็ประกาศผลได้ก็ง่ายนะคะ แต่ว่า แต่ก็

308
00:20:24,959 --> 00:20:28,959
แล้วแต่ถ้ามีผู้ดูแลระบบข้อมูล เขาอยากดูแบบไหน

309
00:20:28,964 --> 00:20:32,964
ก็แล้วแต่สิ่งที่เขาจะเรียกขึ้นมาดูนะคะ อันนี้คือระดับ

310
00:20:32,969 --> 00:20:36,969
ภายใน

311
00:20:36,974 --> 00:20:40,974
ต่อมา ระดับแนวคิด ก็จะเป็น

312
00:20:40,979 --> 00:20:44,979
โครงสร้าง ของฐานข้อมูลโดยรวม

313
00:20:44,980 --> 00:20:48,980
เราจะเก็บข้อมูลอะไรในฐานข้อมูลของเรา แต่ละข้อมูล

314
00:20:48,982 --> 00:20:52,982
มีส่วนอะไรที่มีความสัมพันธ์กันเกี่ยวข้องกันบ้าง

315
00:20:52,986 --> 00:20:56,986
นะคะ โดยการกระทำ

316
00:20:56,990 --> 00:21:00,990
ใด ๆ ก็ตามที่เกิดขึ้นในระดับแนวคิดนะคะ ก็

317
00:21:00,993 --> 00:21:04,993
จะทำอยู่บนโครงสร้างฐานข้อมูลที่กำหนดไว้แล้วเท่านั้น

318
00:21:04,994 --> 00:21:08,994
นะคะ ในระดับแนวคิด จะมีอะไรเกิดขึ้นบ้าง

319
00:21:08,995 --> 00:21:12,995
นะคะ อย่างเช่น

320
00:21:12,999 --> 00:21:16,999
จำนวน Entity Entity ก็คือ

321
00:21:17,003 --> 00:21:21,003
ส่วนของคอลัมน์นะคะ

322
00:21:21,006 --> 00:21:25,006
อย่างเช่นนักศึกษา 1 คนจะมีทั้งหมดกี่ Entity

323
00:21:25,008 --> 00:21:29,008
ที่เข้ามาเกี่ยวข้องนะคะ ก็จะ

324
00:21:29,013 --> 00:21:33,013
มี Entity ของอาจารย์

325
00:21:33,013 --> 00:21:37,013
นะคะ เป็นคอลัมน์อาจารย์... ไม่ใช่สิ เป็นตารางของอาจารย์

326
00:21:37,018 --> 00:21:41,018
ตารางนักศึกษา ตารางรายวิชา

327
00:21:41,022 --> 00:21:45,022
มาเกี่ยวข้องกัน ใน 1 ตาราง จะประกอบ

328
00:21:45,024 --> 00:21:49,024
ไปด้วย

329
00:21:49,031 --> 00:21:53,031
นักศึกษา 1 คนจะมีกี่ Attribute

330
00:21:53,032 --> 00:21:57,032
อาจารย์ดูง่าย ๆ เลย

331
00:21:57,034 --> 00:22:01,034
สมมติว่าจะมี 3 คอลัมน์ 3 Attribute

332
00:22:01,039 --> 00:22:05,039
คอลัมน์ที่ 1 รหัสนักศึกษา

333
00:22:05,040 --> 00:22:09,040
คอลัมน์ที่ 2 ชื่อ-นามสกุล คอลัมน์ที่ 3 อาจจะเป็นที่อยู่

334
00:22:09,042 --> 00:22:13,042
หรือเบอร์โทรศัพท์ หรือชื่อเล่นก็ได้

335
00:22:13,046 --> 00:22:17,046
นะคะ โดยแต่ละตารางหรือแต่ละ Entity จะ

336
00:22:17,050 --> 00:22:21,050
มีความสัมพันธ์ระหว่างกัน หรือว่า

337
00:22:21,055 --> 00:22:25,055
Relationship นะคะ เช่น ทำไมตารางอาจารย์กับตารางนักศึกษาต้องมีความสัมพันธ์กัน

338
00:22:25,057 --> 00:22:29,057
เช่น อาจารย์สอนวิชานี้ ในใบลงทะเบียนเรียน

339
00:22:29,061 --> 00:22:33,061
ของทุกคนมีไหม มี แล้ว

340
00:22:33,064 --> 00:22:37,064
ลงทะเบียนวิชานี้มีชื่ออาจารย์ไหม

341
00:22:37,065 --> 00:22:41,065
มี อาจารย์ก็สามารถดูได้เหมือนกันว่าวิชานี้มีใครลงทะเบียนบ้าง

342
00:22:41,068 --> 00:22:45,068
เพราะฉะนั้น อาจารย์กับนักศึกษาจะต้องมีความเกี่ยวข้องกันอย่างน้อย 3 ตาราง

343
00:22:45,070 --> 00:22:49,070
ก็คือตารางอาจารย์ ก็คือเก็บข้อมูลอาจารย์ ตารางนักศึกษา

344
00:22:49,074 --> 00:22:53,074
ก็จะเก็บข้อมูลนักศึกษา ตารางลงทะเเรยนก็จะ

345
00:22:53,077 --> 00:22:57,077
ก็จะรู้แล้วว่าเทอมนี้อาจารย์สอนวิชาอะไรบ้าง นักศึกษาลงวิชาอะไรบ้าง

346
00:22:57,081 --> 00:23:01,081
นะคะ อันนี้ก็เป็นความสัมพันธ์แบบง่าย ๆ

347
00:23:01,085 --> 00:23:05,085
อันนี้ก็เหมือนกัน

348
00:23:05,087 --> 00:23:09,087
ระดับภายนอกจะเป็นส่วนที่ผู้ใช้งาน

349
00:23:09,090 --> 00:23:13,090
เรียกดูข้อมูลนะคะ ผู้ใช้งานแต่ละคนอาจจะดู

350
00:23:13,092 --> 00:23:17,092
ข้อมูลเหมือนกันหรือต่างกันก็ได้นะคะ โดยที่

351
00:23:17,096 --> 00:23:21,096
ฐานข้อมูลนี่สามารถมีมุมมองหรือ

352
00:23:21,098 --> 00:23:25,098
เค้าร่างภายนอกได้หลาายรูปแบบ แล้วแต่

353
00:23:25,100 --> 00:23:29,100
อย่างเช่น ตัวอย่างนี้ มีผู้ใช้งาน 3 คน

354
00:23:29,103 --> 00:23:33,103
นะคะ เรียกดูข้อมูลในฐานข้อมูล

355
00:23:33,104 --> 00:23:37,104
เดียวกันแต่อาจจะเป็นคนละตาราง เพราะว่า

356
00:23:37,109 --> 00:23:41,109
ใน 1 ในฐานข้อมูล 1 ฐานข้อมูล จะมีตาราง

357
00:23:41,114 --> 00:23:45,114
ได้เยอะมากนะคะ แต่ทุกตารางจะต้องมีความสัมพันธ์กัน

358
00:23:45,116 --> 00:23:49,116
อย่าง User หรือผู้ใช้งานคนที่ A

359
00:23:49,117 --> 00:23:53,117
อาจจะเรียกดูแค่ชื่อกับเบอร์โทรศัพท์

360
00:23:53,120 --> 00:23:57,120
เท่านั้นก็ได้นะคะ User

361
00:23:57,123 --> 00:24:01,123
หรือผู้ใช้งานคนที่ B อาจจะขอดู

362
00:24:01,128 --> 00:24:05,128
ข้อมูลรหัสนักศึกษา ชื่อ ที่อยู่

363
00:24:05,130 --> 00:24:09,130
เบอร์โทรศัพท์ ก็ได้แล้วแต่

364
00:24:09,131 --> 00:24:13,131
นะคะ คนที่ C

365
00:24:13,135 --> 00:24:17,135
อาจจะไม่อยากดูข้อมูลของทุกคน อาจจะอยากดู

366
00:24:17,139 --> 00:24:21,139
ว่าเทอมนี้มีวิชาอะไรเปิดสอนบ้าง รหัสวิชา

367
00:24:21,144 --> 00:24:25,144
อะไร ชื่อวิชาอะไร มีกี่หน่วยกิตก็ได้

368
00:24:25,148 --> 00:24:29,148
จากในฐานข้อมูลเดียวกัน แต่

369
00:24:29,152 --> 00:24:33,152
แค่เอามาจากคนละตารางแค่นั้นเองนะคะ

370
00:24:33,153 --> 00:24:37,153

371
00:24:37,157 --> 00:24:41,157
ประโยชน์ของสถาปัตยกรรมทั้ง 3 ระดับภายใน

372
00:24:41,161 --> 00:24:45,161
สถาปัตยกรรมทั้ง 3 ระดับนะคะ

373
00:24:45,163 --> 00:24:49,163
แล้วก็แนวคิด แน่นอน มุมมองของผู้ใช้งานแต่ละคน

374
00:24:49,164 --> 00:24:53,164
สามารถทำงานได้โดยอิสระ แยกจากกัน

375
00:24:53,168 --> 00:24:57,168
นะคะ อาจจะมีการ

376
00:24:57,172 --> 00:25:01,172
นำข้อมูลหลาย ๆ ตารางมารวมกัน

377
00:25:01,175 --> 00:25:05,175
นะคะ เพื่อให้สามารถ

378
00:25:05,177 --> 00:25:09,177
ครอบคลุมในการเรียกดูข้อมูลได้ อาจจะมองใน

379
00:25:09,182 --> 00:25:13,182
คนละมุมกัน แต่ใช้

380
00:25:13,186 --> 00:25:17,186
ฐานข้อมูลเดียวกัน แล้วก้ผู้ใช้งาน

381
00:25:17,190 --> 00:25:21,190
ไม่จำเป็นต้องรู้ว่าข้อมูลที่เก็บไว้นี่อยู่ตำแหน่งไหนของ

382
00:25:21,194 --> 00:25:25,194
Hard disk ไม่จำเป็นต้องรู้ ถ้า

383
00:25:25,197 --> 00:25:29,197
อยากเรียกข้อมูลขึ้นมาดูได้ก็ต้องดูได้นะคะ

384
00:25:29,198 --> 00:25:33,198
โดยที่แอดมินนี่ จะเป็นคนดูแลดูเองว่า

385
00:25:33,200 --> 00:25:37,200
ที่ถูกเก็บไว้นี่จะต้องจัดเก็บไว้ตรงไหน แล้วก็เป็นคนที่

386
00:25:37,202 --> 00:25:41,202
ดึงข้อมูลนั้น ๆ เข้ามา ให้ผู้ใช้งานสามารถใช้งานได้

387
00:25:41,205 --> 00:25:45,205
นะคะ

388
00:25:45,206 --> 00:25:49,206
ประโยชน์ข้อต่อมา ก็คืออิสระที่

389
00:25:49,211 --> 00:25:53,211
มีการเปลี่ยนแปลงข้อมูล อย่างที่บอก ก็คือถ้ามีการเปลี่ยนแปลงโปรแกรม ทุกอย่างต้องไม่

390
00:25:53,212 --> 00:25:57,212
ได้รับผลกระทบนะคะ งานต้องยังสามารถ

391
00:25:57,213 --> 00:26:01,213
เก็บได้ หรือโปรแกรมก็ยังทำงานได้ ถ้ามีการเปลี่ยนแปลง

392
00:26:01,216 --> 00:26:05,216
ของข้อมูลนะคะ ไม่ใช่ว่า

393
00:26:05,217 --> 00:26:09,217
มีคนหนึ่งเปลี่ยนนามสกุล ฐานข้อมูลทั้งมหาวิทยาลัย

394
00:26:09,221 --> 00:26:13,221
ผิดพลาดหมดเลย อันนี้ไม่ได้นะคะ หรือ

395
00:26:13,225 --> 00:26:17,225
บางคนเพิ่มที่อยู่ กลายเป็นว่าที่อยู่เหมือนกัน

396
00:26:17,229 --> 00:26:21,229
ทั้งมหาวิทยาลัยอย่างนี้ก็ไม่ได้ ข้อมูลต้องไม่

397
00:26:21,234 --> 00:26:25,234
หรือว่าวันนี้อาจารย์บอกว่าฐานข้อ

398
00:26:25,235 --> 00:26:29,235
มูลอาจารย์ อยากใช้ Microsoft access

399
00:26:29,240 --> 00:26:33,240
วันดีคืนดีบางคนอยากบอกว่าเปลี่ยนไปใช้

400
00:26:33,243 --> 00:26:37,243
โปรแกรมอื่นได้ไหม ต้องเปลี่ยนได้นะคะ ไม่ใช่

401
00:26:37,247 --> 00:26:41,247
ว่าใช้โปรแกรมเดียวไปตลอด ไม่ได้

402
00:26:41,249 --> 00:26:45,249
ถ้าสมมติมีโปรแกรมที่ดีกว่า แล้วเราอยากเปลี่ยน

403
00:26:45,250 --> 00:26:49,250
เราก็ต้องเปลี่ยนได้ โดยที่ข้อมูลเราไม่หายนะคะ อันนี้คือความเป็นอิสระของข้อมูล

404
00:26:49,251 --> 00:26:53,251

405
00:26:53,255 --> 00:26:57,255
อันนี้พูดไปแล้วนะคะ

406
00:26:57,259 --> 00:27:01,259
อันนี้พูดไปแล้วนะ

407
00:27:01,263 --> 00:27:05,263
เดี๋ยวนะ Mapping

408
00:27:05,265 --> 00:27:09,265
อันนี้พูดไปแล้ว ต่อมา แบบจำลอง

409
00:27:09,269 --> 00:27:13,269
ข้อมูลนะคะ

410
00:27:13,275 --> 00:27:17,275
แบบจำลองข้อมูลนี่มันก็จะเป็นแบบจำลองที่

411
00:27:17,279 --> 00:27:21,279
ใช้สำหรับอธิบาย แล้วก็การจัดการข้อมูลที่จะ

412
00:27:21,281 --> 00:27:25,281
เกิดขึ้นในฐานข้อมูล ความสัมพันธ์ระหว่างข้อมูล

413
00:27:25,282 --> 00:27:29,282
แต่ละตารางจะเกิดขึ้นอย่างไรบ้าง ข้อบังคับ

414
00:27:29,287 --> 00:27:33,287
ของข้อมูลในระบบที่จะมีการเพิ่ม ลบ เปลี่ยนแปลงข้อมูล

415
00:27:33,288 --> 00:27:37,288
ใด  ๆ จะต้องมีกฎเกณฑ์ใดบ้างนะคะ

416
00:27:37,292 --> 00:27:41,292
ทั้งนี้ก็เพื่อใช้สำหรับการ

417
00:27:41,294 --> 00:27:45,294
เป็นข้อตกลง แล้วก็สื่อสารระหว่างคนออกแบบฐานข้อมูลกับก็

418
00:27:45,296 --> 00:27:49,296
คนที่ใช้งานฐานข้อมูลให้มีความเข้าใจตรงกัน

419
00:27:49,298 --> 00:27:53,298
นะคะ ว่าถ้าเรามีระบบนี้คุณจะ

420
00:27:53,300 --> 00:27:57,300
สามารถทำอะไรได้บ้าง ทำอะไรไม่ได้ เรียกข้อมูลบแบบไหน

421
00:27:57,302 --> 00:28:01,302
แก้ไขข้อมูลอย่างไร ทำอย่างไรถึงจะบันทึกข้อมูลได้

422
00:28:01,306 --> 00:28:05,306
ถ้า อยากลบรหัสนักศึกษาออกได้ไหม

423
00:28:05,307 --> 00:28:09,307
เป็นนักศึกษาแต่ไม่มีรหัสนักศึกษาได้ไหม ไม่ได้ ก็ต้องเข้าใจ

424
00:28:09,314 --> 00:28:13,314
ตรงกันนะคะ

425
00:28:13,316 --> 00:28:17,316
อันแรกนะคะ แบบ

426
00:28:17,318 --> 00:28:21,318
จำลองข้อมูลนี่จะมีอยู่ 2 ประเภท ประเภทแรก ก็คือ

427
00:28:21,321 --> 00:28:25,321
เป็นแบบจำลองที่ใช้การบรรยาย

428
00:28:25,322 --> 00:28:29,322
นะคะ บรรยายโดยรวมทั้งหมดของระบบว่า

429
00:28:29,326 --> 00:28:33,326
มีอะไรบ้างนะคะ ซึ่งจะ

430
00:28:33,329 --> 00:28:37,329
นำเสนอในลักษณะของการวาดภาพ

431
00:28:37,333 --> 00:28:41,333
โดยที่ในฐานข้อมูล 1 ฐานข้อมูลนี่

432
00:28:41,337 --> 00:28:45,337
จะหมายถึงการเก็บตารางกี่ตาราง

433
00:28:45,341 --> 00:28:49,341
นะคะ ก็คือ Entity นี่แหละนะคะ

434
00:28:49,342 --> 00:28:53,342
กับแต่ละตารางมีความสัมพันธ์อะไรบ้าง เราจะต้องวาดรูป

435
00:28:53,347 --> 00:28:57,347
โยงเส้น ขีดเส้นใต้

436
00:28:57,353 --> 00:29:01,353
ตีกรอบ เดี๋ยวอันนี้จพะเป็น

437
00:29:01,356 --> 00:29:05,356
ในครั้งถัด ๆ ไปจะเป็นการวาดรูป เดี๋ยวถ้า

438
00:29:05,358 --> 00:29:09,358
วันไหนจะวาดรูป อาจารย์จะให้ถือกระดาษ A4

439
00:29:09,363 --> 00:29:13,363
มาด้วยนะคะ ถ้าใครเคยเรียนสมัย

440
00:29:13,367 --> 00:29:17,367
มัธยมได้วาด Mind map

441
00:29:17,368 --> 00:29:21,368
วาดแผนภาพ การวาดในฐานข้อมูลก็จะไม่ต่างกันค่ะ

442
00:29:21,374 --> 00:29:25,374
แต่ว่าสัญลักษณ์แต่ละสัญลักษณ์ที่เอามาใช้ในการวาดรูปของเรา

443
00:29:25,376 --> 00:29:29,376
มันมีความหมายนะคะ ไม่ใช่อยากวาด อยากใส่

444
00:29:29,381 --> 00:29:33,381
วงรี อยากใส่สี่เหลี่ยม อยากใส่สามเหลี่ยม

445
00:29:33,385 --> 00:29:37,385
อยากใส่วงกลม นึกอยากใส่อะไรก็ใส่ไม่ได้ มันจะมีกฎอยู่

446
00:29:37,389 --> 00:29:41,389
โดยการวาดแบบนี้นี่ หรือการจำลอง

447
00:29:41,393 --> 00:29:45,393
แบบนี้นี่ จะนำเสนอเพื่อให้เกิดความเข้าใจง

448
00:29:45,395 --> 00:29:49,395
ตรงกันระหว่างคนออกแบบกับคนใช้งาน ให้เห็นภาพ

449
00:29:49,395 --> 00:29:53,395
คร่าว ๆ ว่าระบบที่เรากำลังจะทำขึ้นมานี่ มันทำงาน

450
00:29:53,399 --> 00:29:57,399
อย่างไรนะคะ เก็บข้อมูลแบบไหน ใช้ข้อมูลอะไรได้บ้าง

451
00:29:57,404 --> 00:30:01,404
นะคะ ต่อมาจะเป็น

452
00:30:01,408 --> 00:30:05,408
แบบจำลองที่ใช้เพื่ออธิบายโครงสร้างของฐานข้อมูล

453
00:30:05,409 --> 00:30:09,409
นะคะ คุณสมบัติของแบบจำลองข้อมูลที่ดี

454
00:30:09,412 --> 00:30:13,412
จะต้องเป็นรูปหรือเป็นแบบจำลองที่เอามาวาง

455
00:30:13,416 --> 00:30:17,416
แล้วถึงแม้ว่าเขาจะไม่มีความรู้ทางด้านคอมพิวเตอร์เลย

456
00:30:17,417 --> 00:30:21,417
เขาก็จะเข้าใจนะคะ

457
00:30:21,420 --> 00:30:25,420
มีสาระสำคัญ ไม่มีการซ้ำซ้อนกัน

458
00:30:25,421 --> 00:30:29,421
นะคะ ซึ่งในที่นี้ ก็คือในแต่ละตาราง

459
00:30:29,426 --> 00:30:33,426
มันไม่ควรจะมีการเก็บข้อมูลที่ซ้ำกัน

460
00:30:33,431 --> 00:30:37,431
อย่างเช่น ตารางนี้เก็บข้อมูลนักศึกษาไปแ

461
00:30:37,435 --> 00:30:41,435
ล้ว อีกตารางหนึ่งก็ยังจะเก็บอีก อันนี้ไม่ทำนะคะ จะต้องไม่

462
00:30:41,440 --> 00:30:45,440
ซ้ำซ้อนกันในแต่ละตาราง แล้วก็มีความยืดหยุ่น ง่ายในการแก้ไข

463
00:30:45,441 --> 00:30:49,441
ง่ายในกในอนาคตนะคะ

464
00:30:49,443 --> 00:30:53,443
และ แบบจำลองของวข้อมูล ไม่ควรจะ

465
00:30:53,444 --> 00:30:57,444
ตายตัวเลยว่าโปรแกรมที่เรา... หรือฐานข้อมูลที่เรากำลัง

466
00:30:57,446 --> 00:31:01,446
จะออกแบบต้องใช้โปรแกรมนี้เท่านั้น เราจะ

467
00:31:01,448 --> 00:31:05,448
ไม่ทำแบบนี้นะคะ จะต้องเป็นฐานข้อมูล

468
00:31:05,453 --> 00:31:09,453
ที่สามารถทำร่วมกับโปรแกรมใดก็ได้

469
00:31:09,456 --> 00:31:13,456
นะคะ เพราะมันจะ... ไม่อย่างนั้นมันจะขัดกับกฎความเป็นอิสระ

470
00:31:13,460 --> 00:31:17,460
ของข้อมูล ก็คือถ้าสมมติเปลี่ยนโปรแกรมแล้วข้อมูลมันพังอย่างนี้

471
00:31:17,464 --> 00:31:21,464
ไม่ได้นะคะ

472
00:31:21,468 --> 00:31:25,468

473
00:31:25,470 --> 00:31:29,470
โดยแบบจำลองนี่ก็จะมีหลายรูปแบบ แบบแรกเป็น

474
00:31:29,475 --> 00:31:33,475
เชิง Record ก็คือเป็นการเก็บเป็นแถวเป็นแถวไปเรื่อย ๆ

475
00:31:33,481 --> 00:31:37,481
นะคะ แต่ละแถวก็หรืออาจจะเรียกว่ารายการ

476
00:31:37,484 --> 00:31:41,484
ข้อมูลแต่ละแถวจะต้องไม่ซ้ำกัน จะต้องต่างกัน

477
00:31:41,489 --> 00:31:45,489
นะคะ ก็จะมีอยู่ 3 แบบ แบบจากบนลงล่าง

478
00:31:45,491 --> 00:31:49,491
แบบเครือข่าย และก็แบบมีความสัมพันธ์

479
00:31:49,494 --> 00:31:53,494
นะคะ

480
00:31:53,496 --> 00:31:57,496
กับแบบจำลองเชิงวัตถุ

481
00:31:57,500 --> 00:32:01,500
นะคะ จะมองทุกอย่างให้เหมือนเป็นวัตถุ

482
00:32:01,501 --> 00:32:05,501
ตารางก็เป็นวัตถุชนิดหนึ่ง นักศึกษาก็เป็นวัตถุ

483
00:32:05,502 --> 00:32:09,502
ชนิดหนึ่ง นักศึกษา 1

484
00:32:09,509 --> 00:32:13,509
คน จะมีวัตถุในตัวเองเก็บอะไรบ้าง

485
00:32:13,513 --> 00:32:17,513
นะคะ เช่น วัตถุที่ชื่อว่ารหัสนักศึกษา วัตถุ

486
00:32:17,516 --> 00:32:21,516
ที่ชื่อว่าชื่อนามสกุล วัตถุที่เป็น

487
00:32:21,520 --> 00:32:25,520
หมายถึงเบอร์โทรศัพท์นะคะ

488
00:32:25,521 --> 00:32:29,521
ซึ่งส่วนใหญ่เวลาเราวาด หรือโครงสร้างฐานข้อมูลเราจะใช้

489
00:32:29,525 --> 00:32:33,525
แบบจำลองเชิงวัตถุนะคะ ก็คือตัวแรกเลย

490
00:32:33,531 --> 00:32:37,531
สิ่งที่เราจะวาดเรียกว่า ER

491
00:32:37,533 --> 00:32:41,533
diagram

492
00:32:41,536 --> 00:32:45,536
ER Diagram นะ ทุกคนต้อง

493
00:32:45,539 --> 00:32:49,539
วาดได้ เข้าใจสัญลักษณ์แต่ละอันว่ามันมีความสำคัญอย่างไร

494
00:32:49,541 --> 00:32:53,541
นะคะ ระดับปริญญาตรีนี่วาด ER Diagram

495
00:32:53,548 --> 00:32:57,548
ได้ก็ถือว่าเก่งมากแล้วนะคะ

496
00:32:57,551 --> 00:33:01,551
แบบจำลอง

497
00:33:01,555 --> 00:33:05,555
ข้อมูลจะมีส่วนประกอบอยู่ 3 ส่วนนะคะ ส่วนของ

498
00:33:05,558 --> 00:33:09,558
โครงสร้าง ก็จะเป็นส่วนประกอบที่เก็บสัญลักษณ์

499
00:33:09,560 --> 00:33:13,560
รวมทั้งกฎระเบียบที่ทุกคนจะต้องตกลงร่วมกัน

500
00:33:13,566 --> 00:33:17,566
เพื่อใช้ในการสร้างฐานข้อมูล

501
00:33:17,570 --> 00:33:21,570
มาตรฐานเลย ก็คือข้อมูลทุกอย่างที่จะเก็บจะอยู่

502
00:33:21,575 --> 00:33:25,575
ในรูปแบบตาราง ในรูปแบบของแถวกับคอลัมน์ อันนี้น่าจะเคย

503
00:33:25,577 --> 00:33:29,577
ใช้งาน Excel มาแล้ว รวมถึงน่าจะรู้ว่าตาราง

504
00:33:29,581 --> 00:33:33,581
คืออะไรนะคะ ตารางก็จะเป็นแบบนี้

505
00:33:33,585 --> 00:33:37,585
เหมือนเวลาเราใส่ข้อมูลทั่ว ๆ ไปนะคะ ตีเส้น ตีกรอบ อันนี้

506
00:33:37,590 --> 00:33:41,590
คือตารางนะคะ มีแถวกับ

507
00:33:41,594 --> 00:33:45,594
คอลัมน์ ส่วนของการปรับปรุง

508
00:33:45,597 --> 00:33:49,597
ก็จะเป็นส่วนที่กำหนดชนิดของ

509
00:33:49,601 --> 00:33:53,601
การทำงานต่าง ๆ ตั้งแต่การปรับปรุงข้อม

510
00:33:53,606 --> 00:33:57,606
มูล หรือการเรียกดูข้อมูลในฐานข้อมูล การเปลี่ยนแปลงโครงสร้างในฐานข้อมูล เช่น

511
00:33:57,610 --> 00:34:01,610
เราอาจจะเพิ่มในส่วนของ

512
00:34:01,613 --> 00:34:05,613
Socail me

513
00:34:05,615 --> 00:34:09,615
dia ของนักศึกษา ชื่อ Facebook คุณชื่ออะไร แต่

514
00:34:09,617 --> 00:34:13,617
จะต้องไม่กระทบกับฐานข้อมูลหลัก ซึ่งนิยม

515
00:34:13,620 --> 00:34:17,620
ใช้ชุดคำสั่งของภาษา SQL

516
00:34:17,624 --> 00:34:21,624
อันนี้เราก็จะเรียนเหมือนกันนะคะ ภาษา SQL

517
00:34:21,628 --> 00:34:25,628
จัดการกับข้อมูล รวมถึงกฎของ

518
00:34:25,630 --> 00:34:29,630
ความคงสภาพ เพื่อใช้สำหรับควบคุมคุณภาพ

519
00:34:29,632 --> 00:34:33,632
ของข้อมูลและเพื่อ

520
00:34:33,636 --> 00:34:37,636
ถูกต้อง เช่น รหัสนักศึกษาจะต้องเป็นตัวเลขเท่านั้น

521
00:34:37,641 --> 00:34:41,641
เป็นตัวหนังสือไม่ได้นะคะ ความแน่นอนของ

522
00:34:41,645 --> 00:34:45,645
ข้อมูลที่ถูกต้องที่บันทึกลงในฐานข้อมูล

523
00:34:45,647 --> 00:34:49,647
นะคะ เวลาเราเรียกดูข้อมูลปุ๊บ เราจะ

524
00:34:49,649 --> 00:34:53,649
ได้มั่นใจว่าข้อมูลที่เราได้มาตรงกับความจริงที่เกิดขึ้นนะคะ

525
00:34:53,651 --> 00:34:57,651
นี่ก็จะซ้ำ ๆ กัน

526
00:34:57,655 --> 00:35:01,655

527
00:35:01,656 --> 00:35:05,656
แบบจำลองฐานข้อมูลนะคะ ในการตัดสิน

528
00:35:05,659 --> 00:35:09,659
ใจเลือกใช้ มันก็จะเป็นสิ่งสำคัญมาก ๆ

529
00:35:09,660 --> 00:35:13,660
สำหรับการออกแบบฐานข้อมูลนะคะ

530
00:35:13,661 --> 00:35:17,661
ซึ่งเราก็จะแบ่งเป็นประมาณ

531
00:35:17,665 --> 00:35:21,665
5 รูปแบบ เพื่อให้เรา

532
00:35:21,669 --> 00:35:25,669
ตัดสินใจว่าเราจะออกแบบฐานข้อมูลแบบไหน

533
00:35:25,672 --> 00:35:29,672
นะคะ อันแรกเลย เป็นแบบลำดับชั้น

534
00:35:29,677 --> 00:35:33,677
นะคะ เป็นรูปแบบสถาปัตยกรรมฐานข้อมูล

535
00:35:33,681 --> 00:35:37,681
ที่เก่าแก่ที่สุด ใช้มานานมาก

536
00:35:37,686 --> 00:35:41,686
นะคะ โครงสร้างของข้อมูลหรือไฟล

537
00:35:41,691 --> 00:35:45,691
์จะถูกจัดเก็บไว้จากบนลงล่างนะคะ ลักษณะคล้าย ๆ กับ

538
00:35:45,693 --> 00:35:49,693
รากของต้นไม้นะคะ

539
00:35:49,696 --> 00:35:53,696
โดยไฟล์ต่าง ๆ จะต้องมี

540
00:35:53,699 --> 00:35:57,699
พ่อ ก็คือเป็น ถ้าเป็นภาษาอังกฤษ ก็คือ On

541
00:35:57,704 --> 00:36:01,704
e ข้อมูลเดียวเท่านั้น แล้วค่อย ๆ แตกสาขาออกไป

542
00:36:01,708 --> 00:36:05,708
นะคะ ความถูกต้องในการเก็บ

543
00:36:05,711 --> 00:36:09,711
เก็บข้อมูลค่อนข้างมี

544
00:36:09,715 --> 00:36:13,715
การเปลี่ยนแปลงข้อมูลน้อยมาก แต่  ปัจจุบัน

545
00:36:13,719 --> 00:36:17,719
ไม่นิยมใช้ เพราะมันยากต่อการไล่ลำดับของข้อมูล

546
00:36:17,724 --> 00:36:21,724
นะคะ มันเวลาจะหาข้อมูลทีหนึ่ง

547
00:36:21,727 --> 00:36:25,727
ก็ต้องวิ่งจากข้างบนแล้วก็ลงมาข้างล่าง ใ

548
00:36:25,730 --> 00:36:29,730
ห้ต้องเริ่มจากข้างบน แล้วค่อยมาข้างล่าง

549
00:36:29,731 --> 00:36:33,731
คุณอะไรล่ะ สมมติตึกนี้มี 10 ชั้น

550
00:36:33,737 --> 00:36:37,737
อยากไปชั้น 3 คุณจะขึ้นจากข้างล่าง

551
00:36:37,741 --> 00:36:41,741
ไปชั้น 3 เลยไม่

552
00:36:41,746 --> 00:36:45,746
ทุกครั้งนะคะ แบบจำลองข้อมูลตัวนี้

553
00:36:45,748 --> 00:36:49,748
ถามว่าดีไหม ดี แต่ว่าทำงานช้า

554
00:36:49,749 --> 00:36:53,749
นะคะ ลักษณะก็จะเป็นแบบนี้นะคะ เริ่มจาก

555
00:36:53,751 --> 00:36:57,751
ตรงนี้กว่าจะลงมาถึงตรงนี้ได้

556
00:36:57,755 --> 00:37:01,755
ต้องผ่านทุกชั้นนะคะ ถ้าเราอยากดูข้อมูล

557
00:37:01,759 --> 00:37:05,759
ตรงนี้เลยนี่ที่อาจารย์วง ๆ ไว้นี่ เข้ามาตรงนี้เลยได้ไหม ไม่ได้

558
00:37:05,761 --> 00:37:09,761
เพราะกฎของมัน คือ ต้องเริ่มจากบนสุดแล้วค่อยลงมาข้างล่าง

559
00:37:09,762 --> 00:37:13,762
มันดีค่ะ แต่มันช้านะคะ

560
00:37:13,766 --> 00:37:17,766

561
00:37:17,769 --> 00:37:21,769
จะเป็นประมาณนี้นะคะ เป็น Root ลงมา

562
00:37:21,774 --> 00:37:25,774
ตรงนี้ เหมือนข้อมูล

563
00:37:25,776 --> 00:37:29,776
แบบนี้ค่ะ อันนี้คือแบบจำรองที่เรา

564
00:37:29,780 --> 00:37:33,780
กันจริง ๆ นะคะ สมมติอาจารย์อยากดูข้อมูลคนนี้

565
00:37:33,784 --> 00:37:37,784
นะคะ ระดับล่างสุดเลย

566
00:37:37,785 --> 00:37:41,785
อาจารย์จะเข้ามาดูข้อมูลคนนี้โดยตรงไม่ได้

567
00:37:41,790 --> 00:37:45,790
อาจารย์จะต้องสั่งจากข้างบค่อยนลงมาตาม

568
00:37:45,792 --> 00:37:49,792
ลำดับชั้นเรื่อย ๆ จนถึงตรงนี้ ถามว่าเราเป็นผู้ใช้งานจ่

569
00:37:49,795 --> 00:37:53,795
เราอาจจะไม่รู้สึกว่ามันหาข้อมูลช้า

570
00:37:53,800 --> 00:37:57,800
แต่ในทางการทำงานทางกายภาพของคอมพิวเตอร์นี่

571
00:37:57,804 --> 00:38:01,804
มันทำงานโดยคิดเป็นหน่วยใหญ่ ๆ

572
00:38:01,808 --> 00:38:05,808
ก็คือเป็นวินาที ยิ่งใช้เวลาหาข้อมูลนานเท่าไหร่

573
00:38:05,812 --> 00:38:09,812
ก็ยิ่งมีค่าใช้จ่ายที่เพิ่มขึ้นตาม

574
00:38:09,814 --> 00:38:13,814
ไปด้วยนะคะ เพราะฉะนั้น เหมือนในยุ

575
00:38:13,816 --> 00:38:17,816
คปัจจุบันทำไมทุกคนอยากได้คอมพิวเตอร์ที่เร็ว คิดเร็ว

576
00:38:17,820 --> 00:38:21,820
เร็วนะคะ ถามว่า

577
00:38:21,824 --> 00:38:25,824
อันนี้มันช้าจนเราทนไม่ได้ไหม

578
00:38:25,826 --> 00:38:29,826
ถ้าข้อมูลมันมีแค่นี้มันทนได้ค่ะ แต่ถ้าข้อมูล

579
00:38:29,827 --> 00:38:33,827
มันมากกว่านี้ล่ะ หลายลำดับชั้นกว่านี้ล่ะ แค่หาชื่อคน

580
00:38:33,831 --> 00:38:37,831
อาจจะรอเป็นชั่วโมงก็ได้ ถ้าจำนวนข้อมูลมันเยอะ

581
00:38:37,835 --> 00:38:41,835
นะคะ อันนี้ก็เป็นแบบจำลอง

582
00:38:41,839 --> 00:38:45,839
ข้อมูลที่ถามว่าทำงานได้ดีค่ะ แต่ว่าอาจจะเสียเวลา

583
00:38:45,841 --> 00:38:49,841
นะคะ

584
00:38:49,845 --> 00:38:53,845
ข้อดี ก็คือเข้าใจง่าย ลักษณะ

585
00:38:53,853 --> 00:38:57,853
เหมือนรากของต้นไม้อย่างที่บอกนะคะ ข้อมูลมีความสัมพันธ์แบบ 1

586
00:38:57,856 --> 00:39:01,856
ต่อ มากกว่า 1

587
00:39:01,857 --> 00:39:05,857
จริง ๆ อยากพูดภาษาอังกฤษมากกว่า เป็นความสัมพันธ์แบบ 1แบบ

588
00:39:05,860 --> 00:39:09,860
พ่อ 1 คน มีลูกได้หลายคนประมาณนี้

589
00:39:09,864 --> 00:39:13,864
ความสามารถในการควบคุมความถูกต้องของข้อมูลมีสูง

590
00:39:13,868 --> 00:39:17,868
นะคะ ข้อมูลที่เหมาะกับข้อมูลแบบจำลองแบบนี้

591
00:39:17,874 --> 00:39:21,874
ควรน่าจะเป็นข้อมูลที่เป็นการเรียงลำดับอย่างต่อ

592
00:39:21,878 --> 00:39:25,878
เนื่องนะคะ ที่จะเหมาะ ที่จะใช้

593
00:39:25,879 --> 00:39:29,879
แต่มันก็มีข้อเสียอย่างที่บอกนะคะ มันไม่สามารถรองรับข้อมูล

594
00:39:29,885 --> 00:39:33,885
ที่มีความสัมพันธ์แบบ Many to one

595
00:39:33,890 --> 00:39:37,890
many to many

596
00:39:37,896 --> 00:39:41,896
1 ต่อ หลายสิ่ง หรือหลายสิ่ง ต่อหลายสิ่ง

597
00:39:41,900 --> 00:39:45,900
อะไรพวกนี้ เดี๋ยวเราจะเรียนในบทถัด ๆ ไป นะคะ บางคนเขา... มันคืออะไร

598
00:39:45,902 --> 00:39:49,902
นะคะ เดี๋ยวจะอธิบายโดยละเอียดในบทถัด ๆ ไป

599
00:39:49,903 --> 00:39:53,903
โดยแบบจำลองแบบลำดับชั้นนี่ ความยืดหยุ่นมันก็จะน้อย

600
00:39:53,912 --> 00:39:57,912
นะคะ การปรับเปลี่ยนโครงสร้างมีความยุ่งยาก

601
00:39:57,916 --> 00:40:01,916
เพราะทุกอย่างจะต้องเริ่มจากด้านบน ถ้าเปลี่ยน

602
00:40:01,920 --> 00:40:05,920
ตรงใดตรงหนึ่งต้องไล่ดูทั้งหมด เพราะมันอาจจะ

603
00:40:05,922 --> 00:40:09,922
กระทบกับอีกส่วนอื่นก็ได้นะคะ

604
00:40:09,926 --> 00:40:13,926
อย่างที่บอกค่ะ การค้นหาข้อมูลระดับล่าง ๆ

605
00:40:13,929 --> 00:40:17,929
จะต้องทำตั้งแต่บนลงล่างลงมา เข้าไปหาโดยตรง

606
00:40:17,933 --> 00:40:21,933
ไม่ได้นะคะ เสียเวลา แล้ว

607
00:40:21,937 --> 00:40:25,937
ก็ทำให้การเขียนโปรแกรมในอนาคต

608
00:40:25,939 --> 00:40:29,939
มันยาก เพราะว่าทุกอย่างจะต้อง

609
00:40:29,943 --> 00:40:33,943
วนกลับมาจุดเริ่มต้น วนกลับมาจุดเริ่มต้น เสียเวลามากนะคะ

610
00:40:33,948 --> 00:40:37,948
มันก็เลยมีการพัฒนาแบบจำลองข้อมูลแบบเครือข่าย

611
00:40:37,954 --> 00:40:41,954
ขึ้นมานะคะ โดยแบบจำลองข้อมูล

612
00:40:41,955 --> 00:40:45,955
แบบเครือข่ายนี่ จะใช้ตัวชี้ตำแหน่งที่เรียกว่า

613
00:40:45,958 --> 00:40:49,958
"Pointer" ก็คือใช้ลูกศร

614
00:40:49,960 --> 00:40:53,960
นะคะ ใช้ลูกศร ก็จะมีการเชื่อมโยงความสัมพันธ์ของ

615
00:40:53,964 --> 00:40:57,964
ข้อมูลในแต่ละแถวเข้า

616
00:40:57,968 --> 00:41:01,968
ด้วยกันนะคะ ก็จะเป็น

617
00:41:01,972 --> 00:41:05,972
... สามารถเชื่อมโยงกันได้นะคะ ข้อมูล

618
00:41:05,974 --> 00:41:09,974
สามารถวิ่งผ่านกันได้ ไม่จำเป็นต้องจากบนลงล่าง

619
00:41:09,976 --> 00:41:13,976
มา อาจจะเลี้ยวซ้ายเลี้ยวขวาได้แล้วตรงนี้นะคะ ลักษณะ

620
00:41:13,980 --> 00:41:17,980
ของแบบจำลองเชิงเครือข่ายก็จะเป็นแบบนี้นะคะ

621
00:41:17,983 --> 00:41:21,983
แต่ก่อนเราจะเริ่มจากบนลงล่างใช่ไหม คราวนี้ถ้าใบส่งของ

622
00:41:21,985 --> 00:41:25,985
นี่มันสามารถไปหาใครได้บ้าง ใบส่งของ 1 ใบมีข้อมูลอะไร

623
00:41:25,987 --> 00:41:29,987
บ้าง ก็คือรายการในใบส่งของ

624
00:41:29,991 --> 00:41:33,991
ใครเป็นคนขาย ใครเป็นคนซื้อ

625
00:41:33,995 --> 00:41:37,995
เขาจ่ายเงินแบบไหน อันนี้ไม่ต้องจากบนลงล่าง

626
00:41:38,000 --> 00:41:42,000
ใช่ไหมคะ หรือจะดูว่าพนักงานวันนี้ขายของอะไร

627
00:41:42,004 --> 00:41:46,004
ได้บ้าง ก็สามารถดูได้ ลูกค้า

628
00:41:46,006 --> 00:41:50,006
คนนี้อยู่ในใบส่งของไหน ใครเป็นคนขาย

629
00:41:50,007 --> 00:41:54,007
ลูกค้าจ่ายเงินอย่างไรก็ดูได้ ดูได้ทุกตำแหน่ง

630
00:41:54,010 --> 00:41:58,010
โดยที่ไม่ต้องเริ่มจากบนลงล่าง สามารถเข้าไปดูได้โดยตรง

631
00:41:58,015 --> 00:42:02,015
ข้อดีของแบบจำลองข้อมูลแบบเครือข่ายนะคะ ก็

632
00:42:02,020 --> 00:42:06,020
ความซ้ำซ้อนในการเกิดขึ้นของข้อมูลเกิดขึ้นก็น้อยกว

633
00:42:06,022 --> 00:42:10,022
่าลำดับชั้น เรียกดูข้อมูลแบบไป-กลับได้ง่ายนะคะ เพราะว่า

634
00:42:10,023 --> 00:42:14,023
การค้นหาข้อมูลทำได้ดีกว่า เพราะว่ามีตัวชี้ตำแหน่งหรือว่า Pointer

635
00:42:14,027 --> 00:42:18,027
ในการเข้าถึงข้อมูลได้ในทันที

636
00:42:18,031 --> 00:42:22,031
นะคะ แต่ถามว่าสิ่งที่มีข้อดีก็ต้องมีข้อเสีย

637
00:42:22,035 --> 00:42:26,035
นะคะ ข้อเสีย ก็คือการป้องกันความปลอดภัย

638
00:42:26,038 --> 00:42:30,038
ของข้อมูลมีน้อยนะคะ แล้ว

639
00:42:30,039 --> 00:42:34,039
ก็สิ้นเปลืองพื้นที่ในตัว

640
00:42:34,042 --> 00:42:38,042
เก็บตัวชี้ตำแหน่ง ถ้าตารางข้อมูล

641
00:42:38,043 --> 00:42:42,043
มันมีแค่นี้น่ะค่ะ มันก็ไม่เปลืองหรอก แต่ถ้าสมมติ

642
00:42:42,048 --> 00:42:46,048
มันเป็นระดับห้างสรรพสินค้าล่ะ

643
00:42:46,049 --> 00:42:50,049
ร้านค้าใหญ่ ๆ ข้อมูลเกิดขึ้น

644
00:42:50,052 --> 00:42:54,052
แทบจะทุกนาที มันก็ต้องมี

645
00:42:54,057 --> 00:42:58,057
ตัวชี้ตำแหน่งเก็บทุก ๆ ๆ ๆ สิ่งที่เกิดขึ้น

646
00:42:58,061 --> 00:43:02,061
ทำไมถึงบอกว่าเปลืองไม่ได้ เพราะว่าใช้เชิงธุรกิจ

647
00:43:02,068 --> 00:43:06,068
อะไรที่เป็นสิ่งที่เราต้องจ่ายเพิ่ม เช่น

648
00:43:06,070 --> 00:43:10,070
ซื้อฮาร์ดดิสก์เพิ่ม เพื่อเก็บข้

649
00:43:10,075 --> 00:43:14,075
อมูล เป็นต้น ทุก หมายความว่าคุณจะต้องลงทุกเพิ่มขึ้น

650
00:43:14,079 --> 00:43:18,079
ในสิ่งที่อาาจจะไม่ได้จำเป็นขนาดนั้นนะคะ

651
00:43:18,082 --> 00:43:22,082
แล้วก็การเปลี่ยนแปลง

652
00:43:22,084 --> 00:43:26,084
เชิงโครงสร้างก็อาจจะมีความยุ่งยาก เพราะ

653
00:43:26,087 --> 00:43:30,087
หลาย ๆ อย่างมันเชื่อมต่อกันอยู่ เช่น อยู่ดี ๆ อาจารย์

654
00:43:30,092 --> 00:43:34,092
อยากบอกว่าอาจารย์อยากตัดใบส่งของออก แล้วพนักงาน

655
00:43:34,097 --> 00:43:38,097
กับลูกค้าจะเชื่อมโยงกันอย่างไร ผ่านสินค้า

656
00:43:38,101 --> 00:43:42,101
หรือ แล้วคุณไม่ต้องไปส่งของลูกค้าหรือ

657
00:43:42,105 --> 00:43:46,105
นะคะ อันนี้ก็จะมีข้อ

658
00:43:46,107 --> 00:43:50,107
สงสัยกับข้อที่ต้องมาคิดตาม

659
00:43:50,111 --> 00:43:54,111
เหมือนกัน ว่าถ้าเราจะมีการเปลี่ยนแปลง

660
00:43:54,116 --> 00:43:58,116
ตำแหน่งบางตำแหน่ง สำหรับการชี้ตำแหน่ง

661
00:43:58,122 --> 00:44:02,122
มันต้องทำอย่างไร มันก็เลยมีการพัฒนาขึ้นมาอีก เป็น

662
00:44:02,127 --> 00:44:06,127
แบบจำลองฐานข้อมูลเชิงสัมพันธ์นะคะ

663
00:44:06,129 --> 00:44:10,129
ก็จะเป็นแบบจำลองข้อมูลที่

664
00:44:10,130 --> 00:44:14,130
ได้รับความนิยมมากในปัจจุบัน

665
00:44:14,134 --> 00:44:18,134
เพราะว่านำเสนอข้อมูลในลักษณะที่เป็นตาราง เข้าใจง่าย

666
00:44:18,139 --> 00:44:22,139
มีแถว มีคอลัมน์นะคะ สามารถ

667
00:44:22,143 --> 00:44:26,143
แสดงให้เห็นถึงความสัมพันธ์กับตารางอื่น ๆ ได้ง่าย

668
00:44:26,144 --> 00:44:30,144
นะคะ แต่เราจะใช้สิ่งที่เรียกว่า "กุญแจ

669
00:44:30,146 --> 00:44:34,146
" หรือ "Key" เพื่ออ้างอิงไปยังตารางอื่น ๆ

670
00:44:34,148 --> 00:44:38,148
เหมือนอย่างนี้ อันนี้คือตารางพนักงานขาย

671
00:44:38,153 --> 00:44:42,153
อะไรพวกนี้ค่ะ เราไม่รู้ว่าเราจะอ้างอิงด้วยอะไร

672
00:44:42,156 --> 00:44:46,156
ใช่ไหมคะ อย่างเช่น ใบส่งของนี้มีของ

673
00:44:46,158 --> 00:44:50,158
อยู่ 5 อย่าง เราก็รู้ว่าแค่ 5 อย่าง

674
00:44:50,160 --> 00:44:54,160
ไม่ได้มีจุดสังเกตใด ๆ ให้รู้

675
00:44:54,162 --> 00:44:58,162
นะคะ มันก็เลยมีการพัฒนาสิ่งที่เรียกว่า "Key" หรื

676
00:44:58,163 --> 00:45:02,163
อ "กุญแจ" ขึ้นมานะคะ โดยกุญแจ

677
00:45:02,168 --> 00:45:06,168
ของ 1 คนนี่ มันสามาถเป็นได้ทั้งกุญแจหลัก

678
00:45:06,170 --> 00:45:10,170
หรือคีย์หลัก แล้วก็คีย์รองได้ เดี๋ยวรายละเอียดของคีย์หลักคีย์รอง

679
00:45:10,175 --> 00:45:14,175
คีย์ภายนอกนะคะ

680
00:45:14,180 --> 00:45:18,180
จะอธิบายโดยละเอียดในบท

681
00:45:18,181 --> 00:45:22,181
ถัด ๆ ไปนะคะ อันนี้เอาให้เห็นคร่าว ๆ ก่อน

682
00:45:22,184 --> 00:45:26,184
อย่างเช่นนะคะ ตาราง

683
00:45:26,187 --> 00:45:30,187
นี้

684
00:45:30,188 --> 00:45:34,188
นะคะ อันแรกจะเป็นตารางเก็บข้อมูลสาขา

685
00:45:34,191 --> 00:45:38,191
สมมติว่าเราเปิดร้านค้า มีตารางเกี่ยวกับ

686
00:45:38,195 --> 00:45:42,195
สาขาที่เราเปิด กับตารางพนักงาน ทำไม

687
00:45:42,199 --> 00:45:46,199
รหัสสาขาอาจารย์ต้องขีดเส้นใต้ด้วย

688
00:45:46,201 --> 00:45:50,201
ทำไมรหัสพนักงานก็ต้องขีดเส้นใต้ด้วย

689
00:45:50,203 --> 00:45:54,203
ความสำคัญมีอยู่นะคะ ไม่ใช่ว่าขีดเฉย ๆ

690
00:45:54,204 --> 00:45:58,204
เพื่อเน้นให้พวกคุณอ่าน ไม่ใช่ มันแสดงให้เห็น

691
00:45:58,208 --> 00:46:02,208
ว่าในตารางนี้สิ่งใด

692
00:46:02,212 --> 00:46:06,212
ที่ขีดเส้นใต้ ข้อนั้นข้อมูลในตารางนั้น

693
00:46:06,214 --> 00:46:10,214
จะซ้ำกันไม่ได้ เราเรียกสิ่งนี้ว่า "คีย์หลัก"

694
00:46:10,217 --> 00:46:14,217
นะคะ รหัส

695
00:46:14,222 --> 00:46:18,222
พนักงานขีดเส้นใต้  ก็แสดงว่ารหัส

696
00:46:18,226 --> 00:46:22,226
พนักงานแต่ละคนจะต้องไม่ซ้ำกัน เพราะรหั

697
00:46:22,230 --> 00:46:26,230
สพนักงานเป็นคีย์หลัก

698
00:46:26,231 --> 00:46:30,231
แต่ถ้าสังเกตดี ๆ ในตาราง

699
00:46:30,236 --> 00:46:34,236
พนักงาน ทำไมมีรหัสสาขา

700
00:46:34,241 --> 00:46:38,241
โผล่ขึ้นมาตรงนี้ด้วย แล้วทำไมไม่ขีดเส้น

701
00:46:38,244 --> 00:46:42,244
ใต้ล่ะในตารางนี้ เพราะในตารางพนักงาน

702
00:46:42,245 --> 00:46:46,245
รหัสสาขาไว้สำหรับ

703
00:46:46,248 --> 00:46:50,248
เป็นคีย์นอกในการเชื่อมต่อกันว่า 2 ตาราง

704
00:46:50,250 --> 00:46:54,250
นี้ มันมีความสัมพันธ์กันอย่างไร

705
00:46:54,252 --> 00:46:58,252
นะคะ เดี๋ยวจะอธิบายอีกทีหนึ่ง

706
00:46:58,255 --> 00:47:02,255
ว่าทำไมต้องมีความสัมพันธ์กันล่ะ เอาง่าย ๆ

707
00:47:02,259 --> 00:47:06,259
เลยค่ะ พนักงานคนที่ 1 ถ้าอาจารย์

708
00:47:06,261 --> 00:47:10,261
ไม่มีรหัสสาขา คุณจะรู้ไหมว่าพนักงานค

709
00:47:10,264 --> 00:47:14,264
นนี้ที่สาขาไหน ไม่รู้เลย

710
00:47:14,268 --> 00:47:18,268
หรืออาจจะบอกว่าสาขาอุดรฯ มีใคร

711
00:47:18,271 --> 00:47:22,271
ทำงานบ้างรู้ไหม ถ้าไม่เชื่อมกับตารางพนักงานก็ไม่

712
00:47:22,276 --> 00:47:26,276
รู้เลยนะคะ เดี๋ยวจะอธิบาย

713
00:47:26,278 --> 00:47:30,278
อีกทีหนึ่งในบทของการวาดความสัมพันธ์นะคะ

714
00:47:30,283 --> 00:47:34,283
ข้อดีของแบบจำลอง

715
00:47:34,284 --> 00:47:38,284
เชิงสัมพันธ์ที่เป็นตาราง อ่านง่าย เข้าใจง่ายเพราะนำ

716
00:47:38,285 --> 00:47:42,285
เสนอในลักษณะของตาราง สามารถเลือกดู

717
00:47:42,289 --> 00:47:46,289
สิ่งที่เราสนใจ ความซับซ้อนก็มีน้อย

718
00:47:46,293 --> 00:47:50,293
เพราะว่าข้อมูลในเชิง 2 มิตินี่ มัน

719
00:47:50,297 --> 00:47:54,297
มองนี่มันมองง่ายความปลอดภัยค่อนข้างดีนะคะ

720
00:47:54,303 --> 00:47:58,303
เพราะว่าผู้ใช้งานก็จะไม่รู้ว่าเรา

721
00:47:58,306 --> 00:48:02,306
อยากเรียกใช้ข้อมูลอะไรได้บ้างนะคะ แล้วก็โครงสร้างของข้อมูล

722
00:48:02,311 --> 00:48:06,311
แน่นอน ถ้าเราเปลี่ยนโปรแกรมก็ยังสามารถทำงานได้

723
00:48:06,314 --> 00:48:10,314
นะคะ แต่ข้อเสียของมันก็

724
00:48:10,318 --> 00:48:14,318
มีนะคะ ก็คือค่าใช้จ่ายค่อนข้างสูง

725
00:48:14,322 --> 00:48:18,322
นะคะ เพราะว่าทรัพยากร

726
00:48:18,323 --> 00:48:22,323
ที่ใช้ในการจัดการนี่ ต้องมีสมรรถที่สูงนิดหนึ่ง

727
00:48:22,328 --> 00:48:26,328
ประมวลผลต้องเร็วนะคะ

728
00:48:26,330 --> 00:48:30,330
การปรับปรุงแก้ไขข้อมูลอาจจะมีความยุ่งยาก เพราะว่า

729
00:48:30,331 --> 00:48:34,331
ไม่รู้ว่าข้อมูลภายในที่เก็บจริง ๆ แล้วนี่

730
00:48:34,335 --> 00:48:38,335
มันเป็นอย่างไร มีคนเดียวที่รู้ ก็คือคนจัดการฐานข้อมูลเท่านั้น

731
00:48:38,336 --> 00:48:42,336
บางครั้งผู้ใช้งานนี่อาจจะเป็นผู้

732
00:48:42,340 --> 00:48:46,340
ที่ต้องคีย์ข้อมูลเข้าไป ก็อาจจะเริ่มงง

733
00:48:46,342 --> 00:48:50,342
สรุปว่าฉันต้องกรอกข้อมูลอะไร ทำไมข้อมูลมันไม่ผ่าน

734
00:48:50,345 --> 00:48:54,345
นะคะ อย่างเช่น

735
00:48:54,347 --> 00:48:58,347
อาจจะไม่มีอันนี้มันก็จะเกี่ยวเนื่องไปถึงการออก

736
00:48:58,351 --> 00:49:02,351
แบบระบบด้วย เหมือนบางคนใส่เลยบัตรประชาชนไม่ใครบ

737
00:49:02,351 --> 00:49:06,351
ไม่ครบ 13 หลัก ถ้าผู้

738
00:49:06,353 --> 00:49:10,353
ดูแลระบบ ออกแบบไม่ดี มันก็จะไม่มีแจ้งเตือนว่า

739
00:49:10,357 --> 00:49:14,357
เลขบัตรประชาชนคุณน่ะไม่ครบ

740
00:49:14,360 --> 00:49:18,360
คนใช้งานก็จะเริ่มงงแล้วว่า

741
00:49:18,364 --> 00:49:22,364
ฉันผิดอะไรนะคะ มันตั้งแต่การออกแบบเลย

742
00:49:22,367 --> 00:49:26,367
เพราะฉะนั้น คนดูแลระบบ

743
00:49:26,369 --> 00:49:30,369
การแจ้งเตือนว่าเราผิดพลาดตรงไหน ข้อมูลจะเป็นอะไร

744
00:49:30,374 --> 00:49:34,374
ได้บ้างนะคะ เหมือนการ

745
00:49:34,379 --> 00:49:38,379
เก็บข้อมูลรูปภาพ รูปภาพต้องขนาดเท่าไหร่

746
00:49:38,383 --> 00:49:42,383
ต้องเป็นภาพสีไหม หรือว่าต้องเป็นภาพขาวดำ

747
00:49:42,388 --> 00:49:46,388
เท่านั้น จะต้องอธิบายให้ชัดเจนนะคะ เพราะว่าถ้า

748
00:49:46,390 --> 00:49:50,390
มีการปรับปรุงข้อมูลทีหนึ่งนี่ บางทีถ้าผู้ใช้งานไม่เข

749
00:49:50,394 --> 00:49:54,394
้าใจก็จะไม่สามารถบันทึกลงฐานข้อมูลได้นะคะ

750
00:49:54,397 --> 00:49:58,397
กับแบบจำลอง

751
00:49:58,401 --> 00:50:02,401
ข้อมูลเชิงวัตถุนะคะ ส่วนมากจะเป็นการ

752
00:50:02,406 --> 00:50:06,406
ออกแบบเพื่อเขียน

753
00:50:06,408 --> 00:50:10,408
แอปพลิเคชันนะคะ มองทุกอย่างให้เป็น

754
00:50:10,410 --> 00:50:14,410
วัตถุชนิดหนึ่งนะคะ มันก็จะมี

755
00:50:14,415 --> 00:50:18,415
การห่อหุ้มวัตถุนั้น ๆ ไว้ด้วย

756
00:50:18,419 --> 00:50:22,419
อะไรบ้าง นะคะ อันนี้ก็พอ

757
00:50:22,423 --> 00:50:26,423
เรียนปีสูงขึ้น ทุกคนก็จะได้เรียนการ

758
00:50:26,425 --> 00:50:30,425
ทำงานเชิงวัตถุมากขึ้นนะคะ อันนี้ปี 1 ก็

759
00:50:30,429 --> 00:50:34,429
ฐานข้อมูลเชิงสัมพันธ์นี้ก็เต็มที่แล้ว

760
00:50:34,432 --> 00:50:38,432
นะคะ อันนี้อาจารย์เอามาให้รู้จักเฉย ๆ

761
00:50:38,436 --> 00:50:42,436
เพราะว่าถ้าเป็นฐานข้อมูลหรือการเขียนโปรแกรม

762
00:50:42,443 --> 00:50:46,443
เชิงวัตถุใด ๆ ก็ตาม มันจะ

763
00:50:46,444 --> 00:50:50,444
ทำงานซับซ้อนได้ดีกว่า มันเหมาะกับการทำงาน

764
00:50:50,448 --> 00:50:54,448
เกี่ยวกับภาพกราฟิก การเก็บวีดิโอ เสียง

765
00:50:54,452 --> 00:50:58,452
อย่างเช่น เราเล่น Facebook มีหมดเลย ทั้งภาพ

766
00:50:58,470 --> 00:51:02,470
ทั้งวิดีโอ ทั้งเสียง ที่เราต้องเก็บข้อมูล

767
00:51:02,472 --> 00:51:06,472
แล้วก็สามารถเอาข้อมูลที่มีอยู่

768
00:51:06,474 --> 00:51:10,474
หรือนานมาแล้วนี่ เรียกกลับมาใช้ซ้ำได้

769
00:51:10,475 --> 00:51:14,475
ง่ายกว่ารูปแบบจัดการฐานข้อมูลชนิดอื่น ๆ

770
00:51:14,479 --> 00:51:18,479
แต่ข้อเสียของการทำงานเชิงวัตถุ

771
00:51:18,483 --> 00:51:22,483
ก็คือจะต้องมีความชำนาญมาก ๆ แล้วก็

772
00:51:22,488 --> 00:51:26,488
เข้าใจในการมองโปรแกรม หรือ

773
00:51:26,490 --> 00:51:30,490
มองข้อมูลนะคะ มองทุกอย่างให้เป็นวัตถุชนิดหนึ่ง

774
00:51:30,494 --> 00:51:34,494
อาจจะต้องใช้ประสบการณ์ในการจัดการกับ

775
00:51:34,498 --> 00:51:38,498
ข้อมูลที่มีความซับซ้อนมาก ๆ

776
00:51:38,504 --> 00:51:42,504
พอเราอายุเท่านี้อาจจะมองไม่เห็นความซับซ้อนข้อมู

777
00:51:42,506 --> 00:51:46,506
นะคะ แต่ถ้าไปทำงานจริง ๆ นี่ ถ้าคุณต้องดูแลระบบใหญ่ ๆ ใด ๆ ก็ตามนี่

778
00:51:46,508 --> 00:51:50,508
ข้อมูลมันก็จะเริ่มซับซ้อนขึ้น มีส่วนเกิด

779
00:51:50,512 --> 00:51:54,512
ขึ้นมากมายนะคะ

780
00:51:54,516 --> 00:51:58,516
เพราะฉะนั้นถ้าเราจะเป้นคนที่ออกแบบข้อมูล

781
00:51:58,520 --> 00:52:02,520
เราจะต้องมองภาพโดยรวมทั้งหมด

782
00:52:02,525 --> 00:52:06,525
ให้ได้นะคะ เหมือนที่อาจารย์ยกตัวอย่างตอนแรก

783
00:52:06,528 --> 00:52:10,528
ครั้งหน้า ๆ ถ้า

784
00:52:10,529 --> 00:52:14,529

785
00:52:14,532 --> 00:52:18,532

786
00:52:18,534 --> 00:52:22,534

787
00:52:22,535 --> 00:52:26,535

788
00:53:30,585 --> 00:53:34,585
นะคะ เป็นก้อน ๆ นะคะ เช่น

789
00:53:34,588 --> 00:53:38,588
การเก็บข้อมูลส่วนมากจะเป็นเกี่ยวกับเชิงธุรกิจ

790
00:53:38,592 --> 00:53:42,592
เสียมากกว่านะคะ อาจจะเป็นเกี่ยวกับการเก็บข้อมูล

791
00:53:42,596 --> 00:53:46,596
ผลิตภัณฑ์สินค้า อาจจะเป็นเกี่ยวกับขายที่ไหน

792
00:53:46,598 --> 00:53:50,598
บนที่เท่าไหร่ มาประมวลผลเป็นตาราง เพราะว่า

793
00:53:50,600 --> 00:53:54,600
มันจะทับซ้อนกันไปอีกเยอะมาก ขายอะไร

794
00:53:54,604 --> 00:53:58,604
ขายที่ไหน ขายเมื่อไหร่ ใน

795
00:53:58,605 --> 00:54:02,605
สินค้าชนิดเดียวนะคะ

796
00:54:02,607 --> 00:54:06,607
เหมือนข้อมูลเวลาเราซื้อของ วะันหมดอายุเท่าไรห่

797
00:54:06,609 --> 00:54:10,609
ส่วนประกอบอะไร หลาย ๆ ทุกอย่าง ข้อมูลทุกอย่างจะซ้อน

798
00:54:10,610 --> 00:54:14,610
กันเป็นมิติ เวลาเราดูขนมหนึ่งห่อ ส่วนประกอบคืออะไร

799
00:54:14,615 --> 00:54:18,615
นะคะ ผลิตที่ไหน ต้องบริโภค

800
00:54:18,619 --> 00:54:22,619
วันที่เท่าไหร่ ใครเป็นคนผลิต ใครเป็นคนนำเ

801
00:54:22,623 --> 00:54:26,623
ซ้อนทับกันจะเป็นหลาย ๆ มิตินะคะ ลักษณะ

802
00:54:26,628 --> 00:54:30,628
คล้าย ๆ รูปทรงแบบนี้นะคะ แค่ของชิ้น

803
00:54:30,633 --> 00:54:34,633
เดียวเก็บข้อมูลเยอะมากนะคะ

804
00:54:34,637 --> 00:54:38,637
เป็นแบบนี้ จริง ๆ วันนี้ก็จะไม่มีอะไรมาก

805
00:54:38,641 --> 00:54:42,641
เพราะว่าเป็นแค่แนะนำเพื่อปู

806
00:54:42,645 --> 00:54:46,645
ทางในการวาดภาพ แผนภาพ ER

807
00:54:46,648 --> 00:54:50,648
ของเราในบทต่อไปนะคะ วันนี้ก็มีการบ้าน

808
00:54:50,652 --> 00:54:54,652
เหมือนกันค่ะ 10 ข้อ เหมือนเดิมทำใส่

809
00:54:54,657 --> 00:54:58,657
กระดาษรายงาน ส่งนะคะ เนื้อหาที่

810
00:54:58,661 --> 00:55:02,661
จะตอบก็อยู่ใน สไลด์อาจารย์หมดแล้วนะคะ

811
00:55:02,667 --> 00:55:06,667
ก็ไม่น่าจะมีปัญหาอะไร

812
00:55:06,670 --> 00:55:10,670
มีอะไรสงสัยไหมคะ เดี๋ยว

813
00:55:10,671 --> 00:55:14,671
จะได้ปล่อยทำงาน

814
00:55:14,675 --> 00:55:18,675
ไม่มีอย่างนั้นเดี๋ยวจะให้นั่งทำงาน

815
00:55:18,679 --> 00:55:22,679
นะคะ ก็เนื้อหา

816
00:55:22,683 --> 00:55:26,683
ประมาณนี้ค่ะ ล่ามวันนี้เนื้อหาไม่เยอะ

817
00:55:26,685 --> 00:55:30,685
โอเค ขอบคุณค่ะ

818
00:55:30,689 --> 00:55:34,689

819
00:55:34,693 --> 00:55:38,693

820
00:55:38,697 --> 00:55:42,697

821
00:55:42,702 --> 00:55:46,702

822
00:55:46,708 --> 00:55:50,708

823
00:55:50,710 --> 00:55:54,710


