﻿1
00:00:04,019 --> 00:00:04,020

2
00:00:04,020 --> 00:00:04,020

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

4
00:00:08,031 --> 00:00:12,031
เกี่ยวกับสถาปัตยกรรมฐานข้อมูล แล้วก็

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

53
00:03:24,192 --> 00:03:28,192
Instargram

54
00:03:28,199 --> 00:03:32,199
หรือเปล่า มีเบอร์โทรศัพท์ไหม มีโปรไฟล์

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

112
00:07:20,367 --> 00:07:24,367
ว่าได้ทำ Project เกี่ยวกับร้าน

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

169
00:11:08,532 --> 00:11:12,532
โดยระบบฐานข้อ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

195
00:12:52,609 --> 00:12:56,609
ให้... อันนี้ระดับ

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

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

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

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

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

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

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

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

204
00:13:28,637 --> 00:13:32,637
อาจจะค้นหาคำอธิบายรายวิชา ถามว่าเขาใช้โปรแกรมเดียวกันไหมระบบ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

251
00:16:36,782 --> 00:16:40,782

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

276
00:18:16,859 --> 00:18:20,859
ฮ. นกฮูก หรือว่าเรียง

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

316
00:20:56,987 --> 00:21:00,987
ใด ๆ ก็ตาม ในระดับแนวคิดนะคะ ก็

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

382
00:25:21,187 --> 00:25:25,187
ฮาร์ดดิสก์ ไม่จำเป็นต้องรู้ ถ้า

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

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

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

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

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

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

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

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

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

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

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

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

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

396
00:26:17,226 --> 00:26:21,226
ทั้งมหาวิทยาลัยก็ไม่ได้ ข้อมูลต้องเป็นอิสระ ไม่

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

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

399
00:26:29,236 --> 00:26:33,236
อยากบอกว่าเปลี่ยนไปใช้

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

440
00:29:13,370 --> 00:29:17,370
มัธยมได้วาด Mindmap

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

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

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

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

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

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

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

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,400 --> 00:30:01,400
นะคะ ต่อมาจะเป็น

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

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

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

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

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

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

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

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

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

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

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

463
00:30:45,451 --> 00:30:49,451
ง่ายในการแก้ไขในอนาคตนะคะ

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

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

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

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

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

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

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

471
00:31:17,475 --> 00:31:21,475
ยอมรับไม่ได้นะคะ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

512
00:34:01,603 --> 00:34:05,603
Socail media  ก

513
00:34:05,607 --> 00:34:09,607
ชื่อ Facebook คุณชื่ออะไร แต่

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

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

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

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

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

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

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

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

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

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

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

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

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

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

528
00:35:05,655 --> 00:35:09,655
ใจฐานข้อมูลนี่ มันก็จะเป็นสิ่งสำคัญมาก ๆ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

553
00:36:45,731 --> 00:36:49,731
ข้อมูลตัวนี้ถามว่าดีไหม ดี แต่ว่าทำงานช้า

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

572
00:38:01,796 --> 00:38:05,796
วินาที ยิ่งใช้เวลาหาข้อมูลนานเท่า

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

595
00:39:33,883 --> 00:39:37,883
many ได้ One to many

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

628
00:41:45,999 --> 00:41:49,999
คนนี้ อยู่ในใส่งของไหน ใครเป็นคนขาย

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

715
00:47:34,282 --> 00:47:38,282
ตารางอ่านง่าย เข้าใจง่ายเพราะนำ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

737
00:49:02,358 --> 00:49:06,358
13 หลัก ถ้าผู้

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

775
00:51:34,492 --> 00:51:38,492
ความซับซ้อนมาก ๆ

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

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

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

779
00:51:50,507 --> 00:51:54,507
ส่วนย่อย ๆ เกิดขึ้นมากมายนะคะ

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

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

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

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

784
00:52:10,524 --> 00:52:14,524
มีให้วาดรูป อาจารยื

785
00:52:14,527 --> 00:52:18,527
ก็จะเริ่มถามแล้วว่าเคยไปห้องสมุดไหม

786
00:52:18,531 --> 00:52:22,531
นะคะ เคยยืมหนังสือหรือเปล่า การที่

787
00:52:22,536 --> 00:52:26,536
เราจะยืมหนังสือห้องสมุดได้มันจะต้องเกี่ยวข้อง

788
00:52:26,538 --> 00:52:30,538
กับอะไรบ้าง เช่น เราเป็นสมาชิกห้องสมุดไหม

789
00:52:30,542 --> 00:52:34,542
นะคะ แล้วเราไปห้องสมุด เรา

790
00:52:34,543 --> 00:52:38,543
ยืมหนังสือ มันจะต้องมีข้อมูลหนังสือที่เราจะยืมไหม

791
00:52:38,547 --> 00:52:42,547
นะคะ ชื่อหนังสืออะไร

792
00:52:42,551 --> 00:52:46,551
หนังสือมีรหัสหนังสือหรือเปล่า ยืมได้กี่วั

793
00:52:46,555 --> 00:52:50,555
นะคะ ใครเป็นคน

794
00:52:50,559 --> 00:52:54,559
แต่งหนังสือเล่มนั้น นี่ การยืมหนังสือเล่มเดียว

795
00:52:54,561 --> 00:52:58,561
ข้อมูลที่เกิดขึ้นก็มีเยอะแล้ว ใครเป็นคนยืม ใครเป็นคนแต่ง

796
00:52:58,562 --> 00:53:02,562
ยืมได้กี่วัน หนังสือชื่ออะไร เลขหนังสืออะไร

797
00:53:02,566 --> 00:53:06,566
นักศึกษาคนไหนเป็นคนยืมนะคะ อันนี้ก็

798
00:53:06,570 --> 00:53:10,570
แค่ยืมหนังสือเฉย ๆ ใน

799
00:53:10,572 --> 00:53:14,572
ข้อสอบหรือในชีวิตจริง พวกคุณจะต้องเจออะไร

800
00:53:14,575 --> 00:53:18,575
ที่เยอะกว่านี้อีกเยอะนะคะ

801
00:53:18,579 --> 00:53:22,579
กับอีกอันหนึ่งนะคะ เป็นแบบจำลองฐานข้อมูล

802
00:53:22,584 --> 00:53:26,584
แบบหลายมิตินะคะ ใคร

803
00:53:26,587 --> 00:53:30,587
เคยเล่นรูบิกลักษณะหลาย ๆ มิติจะเป็นแบบนั้นเลย

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

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

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

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

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

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

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

811
00:53:58,611 --> 00:54:02,611

812
00:54:02,615 --> 00:54:06,615

813
00:54:06,620 --> 00:54:10,620

814
00:54:10,624 --> 00:54:14,624

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

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

817
00:54:22,635 --> 00:54:26,635
ซ้อนทับกันจะเป็นหลาย ๆ มิตินะคะ ลักษณะ

818
00:54:26,641 --> 00:54:30,641
คล้าย ๆ รูปทรงแบบนี้นะคะ แค่ของชิ้น

819
00:54:30,647 --> 00:54:34,647
เดียวเก็บข้อมูลเยอะมากนะคะ

820
00:54:34,648 --> 00:54:38,648
เป็นแบบนี้ จริง ๆ วันนี้ก็จะไม่มีอะไรมาก

821
00:54:38,652 --> 00:54:42,652
เพราะว่าเป็นแค่แนะนำเพื่อปู

822
00:54:42,655 --> 00:54:46,655
ทางในการวาดภาพ แผนภาพ ER

823
00:54:46,659 --> 00:54:50,659
ของเราในบทต่อไปนะคะ วันนี้ก็มีการบ้าน

824
00:54:50,663 --> 00:54:54,663
เหมือนกันค่ะ 10 ข้อ เหมือนเดิมทำใส่

825
00:54:54,667 --> 00:54:58,667
กระดาษรายงาน ส่งนะคะ เนื้อหาที่

826
00:54:58,669 --> 00:55:02,669
จะตอบก็อยู่ใน สไลด์อาจารย์หมดแล้วนะคะ

827
00:55:02,674 --> 00:55:06,674
ก็ไม่น่าจะมีปัญหาอะไร

828
00:55:06,680 --> 00:55:10,680
มีอะไรสงสัยไหมคะ เดี๋ยว

829
00:55:10,683 --> 00:55:14,683
จะได้ปล่อยทำงาน

830
00:55:14,685 --> 00:55:18,685
ไม่มีอย่างนั้นเดี๋ยวจะให้นั่งทำงาน

831
00:55:18,689 --> 00:55:22,689
นะคะ ก็เนื้อหา

832
00:55:22,691 --> 00:55:26,691
ประมาณนี้ค่ะ ล่ามวันนี้เนื้อหาไม่เยอะ

833
00:55:26,696 --> 00:55:30,696
โอเค ขอบคุณค่ะ

834
00:55:30,701 --> 00:55:34,701

835
00:55:34,704 --> 00:55:38,704

836
00:55:38,705 --> 00:55:42,705

837
00:55:42,707 --> 00:55:46,707

838
00:55:46,716 --> 00:55:50,716

839
00:55:50,720 --> 00:55:54,720

840
00:55:54,725 --> 00:55:58,725

841
00:55:58,731 --> 00:56:02,731

842
00:56:02,736 --> 00:56:06,736

843
00:56:06,741 --> 00:56:10,741

844
00:56:10,746 --> 00:56:14,746

845
00:56:14,749 --> 00:56:18,749

846
00:56:18,754 --> 00:56:22,754

847
00:56:22,762 --> 00:56:26,762

848
00:56:26,767 --> 00:56:30,767

849
00:56:30,772 --> 00:56:34,772

850
00:56:34,775 --> 00:56:38,775

851
00:56:38,781 --> 00:56:42,781

852
00:56:42,786 --> 00:56:46,786

853
00:56:46,788 --> 00:56:50,788

854
00:56:50,793 --> 00:56:54,793

855
00:56:54,798 --> 00:56:58,798

856
00:57:02,808 --> 00:57:06,808

857
00:57:06,814 --> 00:57:10,814

858
00:57:10,821 --> 00:57:14,821

859
00:57:14,825 --> 00:57:18,825


