อาจารย์ ดร. พีรศักดิ์ สิริโยธิน คณบดีสำนักวิชาเทคโนโลยีสังคม
การออกแบบฐานข้อมูล กรณีศึกษา...
description
Transcript of การออกแบบฐานข้อมูล กรณีศึกษา...
Company LOGO
การออกแบบฐานข้อมู�ล กรณี�ศึ�กษา ระบบฐานข้อมู�ลผลงาน
คร�-อาจารย์�
THINAPHAN NITHIYUWITH
Email : [email protected]
2
Contents
Database is…1
ข้��นตอนการออกแบบฐานข้อมู�ล
2
Relation : ระบบผลงานคร�-อาจารย์�
3
Appserve / phpMyadmin4
สร�ป Q&A5
3
Database is . . .
กล�!มูข้องข้อมู�ลที่�#มู�ความูส�มูพั�นธ์�ก�น น'ามูาเก)บรวบรวมูเข้าไวด้วย์ก�นอย์!างมู�ระบบและข้อมู�ลที่�#
ประกอบก�นเป,นฐานข้อมู�ลน��น ตองตรงตามู ว�ตถุ�ประสงค�การใช้งานข้ององค�กรด้วย์เช้!นก�น
ข้อมู�ลน��นอาจจะเก�#ย์วก�บบ�คคล ส0#งข้องสถุานที่�# หร2อเหต�การณี�ใด้ ๆ ก)ได้ที่�#เราสนใจศึ�กษา หร2ออาจ
ได้มูาจากการส�งเกต การน�บหร2อการว�ด้ก)เป,นได้ รวมูที่��งข้อมู�ลที่�#เป,นต�วเลข้ ข้อความู และร�ปภาพั
ต!าง ๆ ก)สามูารถุน'ามูาจ�ด้เก)บเป,นฐานข้อมู�ลได้ และ ที่�#ส'าค�ญข้อมู�ลที่�กอย์!างตองมู�ความูส�มูพั�นธ์�ก�น
เพัราะเราตองการน'ามูาใช้ประโย์ช้น�ต!อไปในอนาคต
4
ข้��นตอนการออกแบบฐานข้อมู�ล
การรวบรวมูและว0เคราะห�ความูตองการในการใช้ข้อมู�ล
พั0จารณีาข้อมู�ล ข้จ�ด้ข้อมู�ลที่�#มู�ความูซ้ำ'�าซ้ำอน ก'าหนด้ตารางเพั2#อใช้เก)บข้อมู�ล Data
Dictionary
5
การออกแบบฐานข้อมู�ล : กรณี�ศึ�กษา ระบบฐานข้อมู�ลผลงานคร�-
อาจารย์�
นายเมอร์�โค คาสปาล
6
การออกแบบฐานข้อมู�ล : กรณี�ศึ�กษา ระบบฐานข้อมู�ลผลงานคร�-
อาจารย์�
นายเมอร์�โค คาสปาล
7
การรวบรวมูและว0เคราะห�ความูตองการในการใช้ข้อมู�ล
การ์ร์วบร์วมข้�อม�ล ได้�จากไหน ??? จากราย์งาน และความูตองการที่�#อย์ากใหระบบมู�
ความต้�องการ์ใช้�ข้�อม�ล ได้�จากไหน ??? จากส0#งที่�#เราตองการใหระบบมู� เช้!น ตองการใหมู�ระบบ login เพั2#อใหเจาหนาที่�#เข้าไป
จ�ด้การข้อมู�ลประว�ต0ส!วนต�ว ข้อมู�ลผลงาน ข้องคร�ที่�กคน โด้ย์ใหระบ� username และ password
8
การรวบรวมูและว0เคราะห�ความูตองการในการใช้ข้อมู�ล
เม��อเร์าพิ จาร์ณาจากร์ายงานทั้#$งสอง สามาร์ถแบ'งกล('มข้องข้�อม�ลได้� ด้#งน)$ ข้อมู�ลประว�ต0ข้องคร� ซ้ำ�#งประกอบด้วย์ รห�สคร� ช้2#อ-
สก�ลคร� กล�!มูสาระ อ�เมูล� และร�ปภาพั ข้อมู�ลผลงานข้องคร� ซ้ำ�#งประกอบด้วย์ รห�สผลงาน
ช้2#อผลงาน ป8ที่�#ได้ร�บ หน!วย์งานที่�#มูอบ
9
พั0จารณีาข้อมู�ล ข้จ�ด้ข้อมู�ลที่�#มู�ความูซ้ำ'�าซ้ำอน
ทั้*าไม? เร์าถ+งต้�องแบ'งข้�อม�ลปร์ะว#ต้ คร์� ก#บ ข้�อม�ลข้องคร์� แยกออกจากก#น
ลองพิ จาร์ณาจากต้#วอย'างข้�อม�ลต้'อไปน)$
10
พั0จารณีาข้อมู�ล ข้จ�ด้ข้อมู�ลที่�#มู�ความูซ้ำ'�าซ้ำอน
จะเห-นว'าม)ข้�อม�ลซ้ำ*$าเก ด้ข้+$น ค�อ ข้�อม�ลปร์ะว#ต้ ข้องคร์� เช้'น ร์ห#ส 0001 นายมน#ส ... จะม)ข้�อม�ลปร์ะว#ต้ ซ้ำ*$าถ+ง 3 แถว โด้ยในแต้'ละแถวข้�อม�ลทั้)�ไม'ซ้ำ*$าค�อ ข้�อม�ลผลงาน เทั้'าน#$น
รห�สคร�
ช้2#อ-สก�ล กล�!มูสาระ
อ�เมูล� ร�ปถุ!าย์ รห�สผลงาน
ช้2#อผลงาน
ป8ที่�#ได้ร�บ
ผ�มูอบ
0
0
0
1
นาย์มูน�ส คงอย์�!
คณี0ตศึาสตร�
xxxx 5 Xxxxxxx
1111
yyyyyy
0
0
0
1
นาย์มูน�ส คงอย์�!
คณี0ตศึาสตร�
xxxx 9 yyyyyyy
33
33
tttttttt
0
0
0
1
นาย์มูน�ส คงอย์�!
คณี0ตศึาสตร�
xxxx 11 wwwww
44
44
uuuuu
0002
นางส�ร�พัร ที่�บที่0มูพัา
ส�งคมูศึ�กษา
ttt
0003
นางอ�จฉรา แย์มูเหมู2อน
ว0ที่ย์าศึาสตร�
aaaaaaa
3 rrrr 1111
yyyy
0003
นางอ�จฉรา แย์มูเหมู2อน
ว0ที่ย์าศึาสตร�
aaaaaaa
4 kkkk 5555
uuuu
....
11
พั0จารณีาข้อมู�ล ข้จ�ด้ข้อมู�ลที่�#มู�ความูซ้ำ'�าซ้ำอน
การ์ทั้)�ม)การ์เก-บข้�อม�ลซ้ำ*$าทั้*าให�เก ด้ป0ญหา ด้#งน)$ เปล2องเน2�อที่�#ในการจ�ด้เก)บข้อมู�ล แกไข้ข้อมู�ล ก)ตองตามูแกหลาย์ที่�# หากมู�การแกไข้ไมู!ครบ
ที่��งหมูด้ ก)ที่'าใหเก0ด้ป;ญหาความูข้�ด้แย์งข้องข้อมู�ลตามูมูา ลบข้อมู�ล ก)ตองตามูลบหลาย์ที่�# หากมู�การลบไมู!ครบที่��งหมูด้
ก)ที่'าใหเก0ด้ป;ญหาความูข้�ด้แย์งข้องข้อมู�ลตามูมูา อ�กที่��งหากมู�การลบข้อมู�ลผลงานข้องคร�ออก เช้!น จะลบข้อมู�ลผลงานคร�ข้อง นางอ�จฉรา แย์มูเหมู2อน ออกที่��งสองผลงาน มู�ผลที่'าใหตองลบข้อมู�ลประว�ต0ข้อง นางอ�จฉรา ตามูไปด้วย์ ที่'าใหไมู!มู�ข้อมู�ลประว�ต0ข้องนางอ�จฉรา ซ้ำ�#งจะเห)นว!าไมู!ถุ�กตอง
การเก0ด้ค!าว!างข้��น เช้!น ข้อมู�ลข้อง นางส�ร�พัร ที่�บที่0มูพัา ย์�งไมู!มู�การที่'าผลงาน จ�งไมู!มู�ข้อมู�ลผลงาน หากในโรงเร�ย์นมู� คร�ที่�#ย์�งไมู!ข้อมู�ลผลงานจ'านวนมูาก ก)ที่'าใหข้อมู�ลตรงน��เป,นค!าว!างเก0ด้ข้��น ซ้ำ�#งที่'าใหเปล2องหน!วย์ความูจ'า
12
พั0จารณีาข้อมู�ล ข้จ�ด้ข้อมู�ลที่�#มู�ความูซ้ำ'�าซ้ำอน
ด้�วยเหต้(น)$จ+งต้�องทั้*าการ์แยกข้�อม�ลออกเป2น 2กล('ม ด้#งน)$ ข้อมู�ลประว�ต0ข้องคร� ซ้ำ�#งประกอบด้วย์ รห�สคร� ช้2#อ-
สก�ลคร� กล�!มูสาระ อ�เมูล� และร�ปภาพั ข้อมู�ลผลงานข้องคร� ซ้ำ�#งประกอบด้วย์ รห�สผลงาน
ช้2#อผลงาน ป8ที่�#ได้ร�บ หน!วย์งานที่�#มูอบ
13
พั0จารณีาข้อมู�ล ข้จ�ด้ข้อมู�ลที่�#มู�ความูซ้ำ'�าซ้ำอน
รห�ส
คร�
ช้2#อ-สก�ล กล�!มูสาระ
อ�เมูล� ร�ปถุ!าย์
0
0
0
1
นาย์มูน�ส คงอย์�!
คณี0ตศึาสตร�
xxxx
0
0
0
1
นาย์มูน�ส คงอย์�!
คณี0ตศึาสตร�
xxxx
0
0
0
1
นาย์มูน�ส คงอย์�!
คณี0ตศึาสตร�
xxxx
0002
นางส�ร�พัร ที่�บที่0มูพัา
ส�งคมูศึ�กษา
ttt
000
3
นางอ�จฉรา แย์มูเหมู2อน
ว0ที่ย์าศึาสตร�
aaaaaaa
000
3
นางอ�จฉรา แย์มูเหมู2อน
ว0ที่ย์าศึาสตร�
aaaaaaa
...
...
.
รห�สผลงาน
ช้2#อผลงาน ป8ที่�#ได้ร�บ
ผ�มูอบ
5 Xxxxxxx 1111 yyyyyy
9 yyyyyyy 33
33
tttttttt
11 wwwww 44
44
uuuuu
3 rrrr 1111 yyyy
4 kkkk 5555 uuuu
ข้อมู�ลประว�ต0ข้องคร�
ข้อมู�ลผลงานคร�
14
พั0จารณีาข้อมู�ล ข้จ�ด้ข้อมู�ลที่�#มู�ความูซ้ำ'�าซ้ำอน
เม��อเร์าแยกข้�อม�ลออกมาเป2น 2 ต้าร์าง ก-ม)ป0ญหาต้ามมา ค�อ ทั้*าให�ไม'ร์� �ว'าผลงานน)$เป2นข้องคร์�คนไหน? แล�วจะทั้*าย#งไงให�ร์� �
ก-โด้ยการ์สร์�างความส#มพิ#นธ์�ข้องทั้#$งสองต้าร์าง โด้ยเอาร์ห#สคร์�มาใส'เพิ �มทั้)�ต้าร์างผลงานคร์� เพิ��อเช้��อมความส#มพิ#นธ์�
15
การออกแบบฐานข้อมู�ล : กรณี�ศึ�กษา ระบบฐานข้อมู�ลผลงานคร�-
อาจารย์�
รห�ส
คร�
ช้2#อ-สก�ล กล�!มูสาระ
อ�เมูล� ร�ปถุ!าย์
0
0
0
1
นาย์มูน�ส คงอย์�!
คณี0ตศึาสตร�
xxxx
0002
นางส�ร�พัร ที่�บที่0มูพัา
คณี0ตศึาสตร�
ttt
000
3
นางอ�จฉรา แย์มูเหมู2อน
คณี0ตศึาสตร�
aaaaaaa
000
4
นาย์ไพัโรจน� ส0งห�โต
ส�งคมูศึ�กษา
sssss
0005
นาย์เจษฎาพัร ปาค'าว�ง
ว0ที่ย์าศึาสตร�
rrrrr
ข้อมู�ลประว�ต0ข้องคร�
ข้อมู�ลผลงานคร�รห�ส
ผลงาน
ช้2#อผลงาน
ป8ที่�#ได้ร�บ ผ�มูอบ รห�สคร�
3 rrrr 1111 yyyy 0003
4 kkkk 5555 uuuu 0003
5 Xxxxxxx
1111 yyyyyy
00
01
9 yyyyyyy
33
33
tttttttt
00
01
11 wwwww
44
44
uuuuu
00
01
16
การออกแบบฐานข้อมู�ล : กรณี�ศึ�กษา ระบบฐานข้อมู�ลผลงาน
คร�-อาจารย์� จะเห-นได้�ว'าสามาร์ถแก�ป0ญหาทั้)�ได้�กล'าวมาข้�างต้�นได้�
ลด้ความูซ้ำ'�าซ้ำอน แกไข้ข้อมู�ลหลาย์ที่�# ลบข้อมู�ลหลาย์ที่�# ความูข้�ด้แย์งข้องข้อมู�ล การเก0ด้ค!าว!าง (null)
17
การออกแบบฐานข้อมู�ล : กรณี�ศึ�กษา ระบบฐานข้อมู�ลผลงานคร�-
อาจารย์� ลองมูาพั0จารณีาข้อมู�ล
ประว�ต0คร�รห�สคร�
ช้2#อ-สก�ล กล�!มูสาระ
อ�เมูล� ร�ปถุ!าย์
00
01
นาย์มูน�ส คงอย์�! คณี0ตศึาสตร� [email protected] xxxx
0002 นางส�ร�พัร ที่�บที่0มูพัา ส�งคมูศึ�กษา [email protected] ttt
0003
นางอ�จฉรา แย์มูเหมู2อน
ว0ที่ย์าศึาสตร� [email protected] aaaaaaa
0004
นาย์ไพัโรจน� ส0งห�โต การงานอาช้�พัและเที่คโนโลย์�
[email protected] sssss
0005 นาย์เจษฎาพัร ปาค'าว�ง
การงานอาช้�พัและเที่คโนโลย์�
[email protected] rrrrr
18
การออกแบบฐานข้อมู�ล : กรณี�ศึ�กษา ระบบฐานข้อมู�ลผลงาน
คร�-อาจารย์� จะเห-นว'าม)การ์เก ด้ข้�อม�ลซ้ำ*$าทั้)�กล('มสาร์ะ เพิร์าะถ�า
เร์ามองภาพิว'าในหน'วยงานข้องเร์าในแต้'ละกล('มสาร์ะ ม)อาจาร์ย�ได้�หลายคน หากกล('มการ์งานฯ ม)อาจาร์ย�ส#งก#ด้ 10 คน ก-ทั้*าให�เก ด้ป0ญหาต้ามมา เช้'น ถ�าม)การ์เปล)�ยนช้��อกล('มสาร์ะ ก-ต้�องต้ามแก�หลายทั้)�
เม��อเป2นเช้'นน)$ ก-ควร์แยกข้�อม�ลกล('มสาร์ะ ออกมาเป2นอ)กช้(ด้หน+�ง และเม��อแยกมาแล�วจะเห-นว'าม#นด้�แล�วก-ย#งซ้ำ*$าอย�'ด้)
19
กล�!มูสาระคณี0ตศึาสตร�
ส�งคมูศึ�กษา
ว0ที่ย์าศึาสตร�
การงานอาช้�พัและเที่คโนโลย์�
การงานอาช้�พัและเที่คโนโลย์�
รห�สคร�
ช้2#อ-สก�ล กล�!มูสาระ อ�เมูล� ร�ปถุ!าย์
0
0
0
1
นาย์มูน�ส คงอย์�!
คณี0ตศึาสตร�
xxxx
0002
นางส�ร�พัร ที่�บที่0มูพัา
ส�งคมูศึ�กษา
ttt
0003
นางอ�จฉรา แย์มูเหมู2อน
ว0ที่ย์าศึาสตร�
aaaaaaa
0004
นาย์ไพัโรจน� ส0งห�โต
การงานอาช้�พัและเที่คโนโลย์�
sssss
0005
นาย์เจษฎาพัร ปาค'าว�ง
การงานอาช้�พัและเที่คโนโลย์�
[email protected] rrrrr
ข้อมู�ลประว�ต0ข้องคร�
ข้อมู�ลกล�!มูสาระ
20
รห�สกล�!มูสาระ
กล�!มูสาระ
1 คณี0ตศึาสตร�
2 ส�งคมูศึ�กษา
3 ว0ที่ย์าศึาสตร�
4 การงานอาช้�พัและเที่คโนโลย์�
รห�สคร� ช้2#อ-สก�ล รห�สกล�!มูสาระ
อ�เมูล� ร�ปถุ!าย์
0
0
0
1
นาย์มูน�ส คงอย์�!
xxxx
0002
นางส�ร�พัร ที่�บที่0มูพัา
ttt
0003
นางอ�จฉรา แย์มูเหมู2อน
aaaaaaa
0004
นาย์ไพัโรจน� ส0งห�โต
sssss
0005
นาย์เจษฎาพัร ปาค'าว�ง
rrrrr
ฉะน��น ว0ธ์�แกป;ญหา ค2อควรจะสรางข้อมู�ลที่�#เป,น รห�ส ข้��นมูาเพั2#อใช้อางอ0งข้อมู�ล และน'ารห�สน��ไปเช้2#อมูก�บข้อมู�ลในตารางประว�ต0คร� ด้�งน��ข้อมู�ลประว�ต0ข้องคร�
ข้อมู�ลกล�!มูสาระ
21
การออกแบบฐานข้อมู�ล : กรณี�ศึ�กษา ระบบฐานข้อมู�ลผลงาน
คร�-อาจารย์� สร์(ป เร์าจะได้�ข้�อม�ลออกมา 3 กล('ม ค�อ
ข้อมู�ลประว�ต0คร� ประกอบด้วย์ รห�สคร� ช้2#อ-สก�ล อ�เมูล� ร�ปถุ!าย์ และรห�สกล�!มูสาระ
ข้อมู�ลกล�!มูสาระ ประกอบด้วย์ รห�สกล�!มูสาระ ช้2#อกล�!มู ข้อมู�ลผลงานคร� ประกอบด้วย์ รห�สผลงาน ช้2#อผล
งาน ป8ที่�#ได้ร�บ หน!วย์งานที่�#มูอบ และรห�สคร� จากข้�อม�ลทั้#$ง 3 กล('ม เร์ามาพิ จาร์ณาหา ค)ย�หล#ก
ค�ย์�หล�กค2ออะไร
22
การออกแบบฐานข้อมู�ล : กรณี�ศึ�กษา ระบบฐานข้อมู�ลผลงาน
คร�-อาจารย์� ค�ย์�หล�ก ค2อ อะไร???? ค�ย์�หล�ก Primary key เป,นข้อมู�ลที่�#สามูารถุบ!งบอกความู
เป,นเอกล�กษณี� หร2อหน�#งเด้�ย์วได้ เช้!น หากมู�การเก)บข้อมู�ลประช้ากร ในหมู�!บานว�งโคง ด้�งน�� ช้2#อ-สก�ล ที่�#อย์�! เพัศึ หมูาย์เลข้บ�ตรประช้าช้น ว�นเด้2อนป8เก0ด้ จะเห)นว!า ค�ย์�หล�ก ควรเป,น หลาย์เลข้บ�ตรประช้าช้น เน2#องจากไมู!มู�ใครซ้ำ'�าก�นเลย์ สามูารถุด้�งข้อมู�ลมูาได้เพั�ย์งคนเด้�ย์ว แบบน��เร�ย์กว!า เป,นเอกล�กษณี�
ที่'าไมูตองก'าหนด้ค�ย์�หล�ก? หากเรามู�ความูตองการคนหาข้อมู�ลประว�ต0ส!วนต�วข้องคร�คนใด้คนหน�#ง เราตองหาค�ย์�เว0ร�ด้ค�ย์�เว0ร�ด้ ข้องข้อมู�ลประว�ต0ส!วนต�วคร�เพั2#อที่�#จะด้�งข้อมู�ลเพั�ย์งคนเด้�ย์วข้��นมูา ค�ย์�เว0ร�ด้ในที่�#น��ก)ค2อ ค�ย์�หล�ก น�#นเอง
ฉะน��นลองพั0จารณีาข้อมู�ลที่��ง 3 กล�!มูข้องเราว!าแต!ละกล�!มู อะไรควรเป,นค�ย์�หล�กด้�
23
ปร์ะว#ต้ คร์� ควร์ใช้� ร์ห#สคร์� เป2นค)ย�หล#ก กล('มสาร์ะ ควร์ใช้� ร์ห#สกล('มสาร์ะ เป2นค)ย�หล#ก
รห�สกล�!มูสาระ
กล�!มูสาระ
1 คณี0ตศึาสตร�
2 ส�งคมูศึ�กษา
3 ว0ที่ย์าศึาสตร�
4 การงานอาช้�พัและเที่คโนโลย์�
รห�สคร� ช้2#อ-สก�ล รห�สกล�!มูสาระ
อ�เมูล� ร�ปถุ!าย์
0
0
0
1
นาย์มูน�ส คงอย์�!
xxxx
0002
นางส�ร�พัร ที่�บที่0มูพัา
ttt
0003
นางอ�จฉรา แย์มูเหมู2อน
aaaaaaa
0004
นาย์ไพัโรจน� ส0งห�โต
sssss
0005
นาย์เจษฎาพัร ปาค'าว�ง
rrrrr
ประว�ต0ข้องคร� กล�!มูสาระ
24
ผลงานคร� ควรใช้ รห�สผลงาน เป,นค�ย์�หล�ก
ข้อมู�ลผลงานคร�รห�สผล
งานช้2#อผลงาน ป8ที่�#ได้
ร�บผ�มูอบ
1 wwwww 44
44
uuuuu
3 rrrr 1111 yyyy
4 kkkk 5555 uuuu
5 Xxxxxxx 1111 yyyyyy
9 yyyyyyy 33
33
tttttttt
25
ก'าหนด้ตารางเพั2#อใช้เก)บข้อมู�ล Data Dictionary ค2อ การก'าหนด้ราย์ละเอ�ย์ด้ข้อง
ข้อมู�ลในตารางฐานข้อมู�ล ว!าเราตองเก)บข้อมู�ลอะไรบาง เป,นช้น0ด้อะไร มู�ข้นาด้เที่!าไร เพั2#อส�มูพั�นธ์�ก�บการสรางฐาน
ข้อมู�ล และการเข้�ย์นโปรแกรมู ร�ปแบบข้อง Data Dictionary
ล'าด้�บ
ช้2#อข้อมู�ลภาษา
อ�งกฤษ
ความูหมูาย์ ช้น0ด้ ข้นาด้
ค�ย์� หมูาย์เหต�
x xxxx xxxx xx x x x
x xxxx xxxx xx x x x
ช้2#อตาราง xxx
26
Data Dictionary
ระบบฐานข้อมู�ลผลงานคร�-อาจารย์� ประกอบด้วย์ตารางด้�งน��
department (กล�!มูสาระการเร�ย์นร�)
ล'าด้�บ
แอที่ร0บ0วต�
ความูหมูาย์ ช้น0ด้ ข้นาด้
ค�ย์� หมูาย์เหต�
1 did รห�สกล�!มูสาระ tinyint
4 pk auto_number
2 dname ช้2#อกล�!มูสาระ varchar
50 not null
27
Data Dictionary
teacher (คร�)
ล'าด้�บ
แอที่ร0บ0วต�
ความูหมูาย์ ช้น0ด้ ข้นาด้
ค�ย์� หมูาย์เหต�
1 tid รห�สคร� smallint
6 pk auto_number
2 tname ช้2#อ-สก�ล varchar
50 not null
3 tmail อ�เมูล� varchar
3
0
not null
4 tpic ร�ป varchar
5
0
null
5 did รห�สกล�!มูสาระ tinyint
4
28
Data Dictionary
work (ผลงานคร�) ล'า
ด้�บแอที่ร0บ0
วต�ความูหมูาย์ ช้น0ด้ ข้นา
ด้ค�ย์� หมูาย์เหต�
1 wid รห�สผลงาน smallint
6 pk auto_number
2 wname
ช้2#อผลงาน varchar
50 not null
3 wyear
ป8ที่�#ได้ร�บ varchar
4 not null
4 worg หน!วย์งานที่�#มูอบ
varchar
5
0
not null
5 tid รห�สคร� smallint
6
29
การสรางฐานข้อมู�ลบน MySQL และใช้งาน php
ที่'าความูร�จ�กก�บ โปรแกรมู Appserv โปร์แกร์ม AppServ ค�อโปร์แกร์มทั้)�ร์วบร์วมเอา Open
Source Software หลายๆ อย'างมาร์วมก#นโ ด้ยม) Package หล#กด้#งน)$ - Apache - PHP - MySQL - phpMyAdmin
ราย์ละเอ�ย์ด้ AppServ ที่�กเวอร�ช้�#น http://www.appservnetwork.com/modules.php?name=Content&pa=showpage&pid=2
30
Appserv
โปรแกรมู Apache Web Server เป,นโปรแกรมูที่�#ใช้ในการที่'าใหเคร2#องคอมูพั0วเตอร�มู�ค�ณีสมูบ�ต0เป,น Web server ค2อเคร2#องคอมูพั0วเตอร�น��นสามูารถุใหบร0การต!างๆ ที่างด้านเว)บเพัจได้
PHP เป,นภาษาจ'าพัวก scripting language ได้ร�บการ พั�ฒนาและออกแบบมูา เพั2#อใช้งานในการสรางเอกสารแบบ
HTML โด้ย์สามูารถุสอด้แที่รกหร2อแกไข้เน2�อหาได้โด้ย์อ�ตโนมู�ต0 ช้!วย์พั�ฒนา Web site และความูสามูารถุที่�#โด้ด้เด้!นอ�กประการ
หน�#งข้อง PHP น��น ค2อ - database enabled web page ที่'าให เอกสารข้อง HTML สามูารถุที่�#จะเช้2#อมูต!อก�บระบบฐานข้อมู�ล
(database) ได้อย์!างมู�ประส0ที่ธ์0ภาพัและรวด้เร)ว เป,นเคร2#องมู2อ ที่�#ส'าค�ญช้น0ด้หน�#งที่�#ช้!วย์ใหเราสามูารถุสรางเอกสารแบบ
Dynamic HTML ได้อย์!างมู�ประส0ที่ธ์0ภาพัและมู�ล�กเล!นมูากข้��น
31
Appserv
MySQL ค2อ ต�วระบบจ�ด้การฐานข้อมู�ล ซ้ำ�#งก)ค2อต�วที่�#ที่'า หนาที่�#เป,นต�วกลางในระบบต0ด้ต!อระหว!าง ผ�ใช้ก�บฐานข้อมู�ล
เป,นที่�#น0ย์มูใช้ก�นมูากส'าหร�บที่'าเป,นฐานข้อมู�ลเว)บไซ้ำต� ย์�งสามูารถุใช้ร!วมูก�บภาษาโปรแกรมู PHP, ASP และภาษาโปรแกรมูอ2#นๆ ที่�#สามูารถุใช้ได้ MySQLเป,นระบบฐานข้อมู�ลแบบโอเพันซ้ำอร�ที่ (Open Source Database )ส'าหร�บจ�ด้การระบบด้าตาเบส (Database System )ผ!านภาษาเอสค0วแอล (SQL)
phpMyAdmin เคร2#องมู2อในการจ�ด้การฐานข้อมู�ล MySQL โด้ย์เป,นส!วนต!อประสานที่�#สรางโด้ย์ภาษาพั�เอช้พั� ซ้ำ�#งใช้จ�ด้การฐานข้อมู�ล MySQL ผ!านเว)บเบราว�เซ้ำอร� โด้ย์สามูารถุที่�#จะที่'าการสรางฐานข้อมู�ลใหมู! หร2อที่'าการสราง TABLE ใหมู!ๆ และย์�งมู� function ที่�#ใช้ส'าหร�บการที่ด้สอบการ query
32
ข้อแตกต!างข้อง AppServ ในแต!ละเวอร�ช้�#น
AppServ ได้แบ!งเวอร�ช้�#นออกเป,น 2 ส!วนด้วย์ก�น ค2อ 2.5.x ค�อเวอร์�ช้# �นทั้)�น*า Package ใหม'ๆ น*ามาใช้�งานโด้ย
เฉพิาะ เหมาะส*าหร์#บน#กพิ#ฒนาทั้)�ต้�องการ์ร์ะบบใหม'ๆ หร์�อต้�องการ์ทั้ด้สอบ ทั้ด้ลองใช้�งานฟั0งก�ช้# �นใหม' ซ้ำ+�งอาจจะไม'ได้�ความเสถ)ยร์ข้องร์ะบบได้� 100% เน��องจากว'า Package จากน#กพิ#ฒนาน#$นย#งอย�'ในช้'วงข้องข้#$นทั้ด้สอบ ทั้ด้ลองเพิ��อหาข้�อผ ด้พิลาด้อย�'
2.4.x ค�อเวอร์�ช้# �นทั้)�น*า Package ทั้)�ม)ความเสถ)ยร์เป2นหล#ก เหมาะส*าหร์#บผ��ทั้)�ต้�องการ์ความม#�นคงข้องร์ะบบโด้ยไม'ได้�ม('งเน�นทั้)�จะใช้�ฟั0งก�ช้# �นใหม'
33
Appserv 2.4.0
Download ได้ที่�#http://sourceforge.net/projects/appserv/files/
Appserv 2.4.0 (PHP,Apache,MySQL)ประกอบด้วย์ Apache 1.3.29 PHP 4.3.4 MySQL 4.0.18 phpMyAdmin 2.5.6 Perl 5.8.0
34
จ�ด้การข้อมู�ลด้วย์ phpMyAdmin 2.5.6
เป@ด้ IE แลวพั0มูพั�ตรงช้!อง address : 127.0.0.1 หร2อ localhost ด้�งหมูาย์เลข้ 1
คล0กที่�#หมูาย์เลข้ 2 เพั2#อเข้าส�!หนาจ�ด้การ ฐานข้อมู�ล mySQL
35
จ�ด้การข้อมู�ลด้วย์ phpMyAdmin 2.5.6
สรางฐานข้อมู�ล ช้2#อ portfolio ด้�งหมูาย์เลข้ 3 ก'าหนด้ภาษาไที่ย์ เป,น tis-620 ด้�งหมูาย์เลข้ 4
แลวคล0กที่�#ป�Aมู สราง
36
จ�ด้การข้อมู�ลด้วย์ phpMyAdmin 2.5.6
สรางตาราง ด้�งหมูาย์เลข้ 5 คล0กป�Aมู ลงมู2อ ข้อมู�ลที่�#ใช้สรางตามูสไลด้�ที่�# 26 จะเห)นว!าช้2#อตารางค2อ department ประกอบด้วย์ข้อมู�ล 2 ฟิ@ลด้� ค2อ รห�ส ก�บ ช้2#อกล�!มูสาระ
37
จ�ด้การข้อมู�ลด้วย์ phpMyAdmin 2.5.6
กรอกข้อมู�ลราย์ละเอ�ย์ด้ข้องตาราง department ด้�งน�� แลวคล0กป�Aมูบ�นที่�ก ตามูหมูาย์เลข้ 6
38
จ�ด้การข้อมู�ลด้วย์ phpMyAdmin 2.5.6
เมู2#อคล0กป�Aมูบ�นที่�ก จะปรากฏข้อมู�ลที่�#สราง เมู2#อตองการสรางตารางต!อไปใหไปที่�# หมูาย์เลข้ 7 หล�งจากน��น ก)กล�บไปที่'าตามูสไลด้� - 3637 ใหครบอ�ก
2 ตาราง
7
39
จ�ด้การข้อมู�ลด้วย์ phpMyAdmin 2.5.6
40
จ�ด้การข้อมู�ลด้วย์ phpMyAdmin 2.5.6
ตาราง teacher
41
จ�ด้การข้อมู�ลด้วย์ phpMyAdmin 2.5.6
ตาราง work
42
จ�ด้การข้อมู�ลด้วย์ phpMyAdmin 2.5.6
ฐานข้อมู�ล portfolio ประกอบด้วย์ตาราง 3ตาราง ค2อ department , teacher , work
Company LOGO