6.7 การจัดการฐานข้อมูลด้วย phpMyAdmin
การจัดการฐานข้อมูลทั้งหมดด้วย มายเอสคิวแอล และ มาเรียดีบี สามารถใช้คอมมานด์ไลน์ในการจัดการฐานข้อมูลได้ แต่เนื่องจากความไม่สะดวกในการพิมพ์รหัสคําสั่งหรือโค้ดที่ยุ่งยาก ทําให้ไม่เป็นที่นิยมสําหรับผู้เริ่มต้นในการพัฒนาแอปพลิเคชัน เพื่อความสะดวกสามารถใช้โปรแกรม phpMyAdmin เพื่อบริหารจัดการฐานข้อมูลได้ โดยจะถูกติดตั้งมากับโปรแกรมจําลองเครื่องแม่ข่ายทั้ง AppServ หรือ XAMPP เรียบร้อยแล้ว
การเข้าใช้งานจะต้องเปิดใช้งาน Apache และ ฐานข้อมูลก่อน โดยเปิดใช้งานได้ XAMPP Control Panel ถ้าใช้โปรแกรม XAMPP สามารถเรียกใช้งาน phpMyAdmin ได้โดยการคลิกที่ปุ่ม Admin ที่แถวของฐานข้อมูล แต่ถ้าใช้ AppServ โปรแกรมจะถูกเปิดการใช้งานอัตโนมัติและเข้าใช้งาน ผ่านเว็บเบราว์เซอร์ การเข้าใช้งาน phpMyAdmin อีกวิธีคือเข้าผ่านเว็บเบราว์เซอร์ โดยการเปิด โปรแกรมเว็บเบราว์เซอร์ขึ้นมาแล้วพิมพ์ยูอาร์แอล http://localhost/phpmyadmin เพื่อบริหาร จัดการฐานข้อมูล หน้าจอเริ่มต้นโปรแกรม phpMyAdmin ดังรูปที่ 6.4
เมื่อเข้าสู่หน้าหลักแล้ว หากกําหนดรหัสผ่านไว้โปรแกรมจะให้กรอกข้อมูลการเข้าสู่ระบบให้ ผู้ใช้กรอกชื่อผู้ใช้และรหัสผ่าน เพื่อบริหารจัดการฐานข้อมูล แต่หากไม่ได้กําหนดระบบแนะนําไปยังหน้าหลักของระบบ ซึ่งโปรแกรม phpMyAdmin นี้นิยมนํามาใช้สําหรับจัดการฐานข้อมูลเริ่มต้นก่อนการสร้าง แอปพลิเคชันซึ่งเป็นการเตรียมทรัพยากรเริ่มต้น เช่น การสร้างฐานข้อมูล การสร้างตารางสําหรับจัดเก็บข้อมูลที่มีความสัมพันธ์กัน การเพิ่ม ลบ แก้ไข ข้อมูลที่ใช้เป็นข้อมูลหลักของระบบ เช่น หมวดหมู่ สินค้า ค่าเริ่มต้นของระบบ รายชื่อจังหวัด ตําบล อําเภอ หมู่บ้าน หรือ รหัสไปรษณีย์ เป็นต้น
6.7.1 การสร้างฐานข้อมูลใหม่
เริ่มต้นก่อนการเชื่อมต่อระบบฐานข้อมูล ผู้พัฒนาจะต้องสร้างฐานข้อมูลขึ้น มาก่อนเพื่อใช้ในการจัดเก็บตารางข้อมูลที่มีความสัมพันธ์กัน ซึ่งฐานข้อมูล (Database) สร้างเพียงครั้งแรกครั้งเดียวเท่านั้น ยกเว้นแต่ว่ามีฐานข้อมูลเดิมอยู่แล้ว ผู้พัฒนาสามารถสร้างตารางหรือจัดการข้อมูลภายในตาราง ของฐานข้อมูลนั้นได้เลย การสร้างฐานข้อมูลโดยใช้ phpMyAdmin มีขั้นตอนการสร้างโดยเริ่มต้นคลิกที่ปุ่ม new จากนั้นกําหนดชื่อฐานข้อมูลที่ต้องการ ซึ่งจะต้องไม่ซ้ำกับฐานข้อมูลเดิมที่มีอยู่แล้วคลิกที่ปุ่ม Create ดังรูปที่ 6.6
หลังจากสร้างฐานข้อมูลเรียบร้อยแล้วจะปรากฏชื่อของฐานที่มูลที่สร้างทางด้านซ้ายมือ ซึ่งสามารถคลิกปุ่มเครื่องหมายบวก (+) เพื่อดูตารางที่อยู่ในฐานข้อมูลที่ต้องการได้
6.7.2 การสร้างตาราง
หลังจากวิเคราะห์และออกแบบฐานข้อมูลเชิงสัมพันธ์แล้ว จะต้องสร้างตารางภายในฐานข้อมูล ซึ่งตารางจะต้องผ่านการออกแบบมาเพื่อให้รองรับข้อมูลที่ตรงตามความต้องการของผู้ใช้งานมากที่สุด และทําให้ระบบสามารถทํางานตามความต้องการได้ ขั้นตอนการสร้างตารางผู้พัฒนาจะต้องทราบว่าตารางที่จะสร้างไว้สําหรับเก็บข้อมูลอะไร จะเชื่อมโยงกันอย่างไร มีกี่ฟิลด์ และแต่ละฟิลด์จะเก็บข้อมูลในรูปแบบใด ความยาวของฟิลด์เท่าใด เพื่อให้ง่ายต่อการสร้างตารางข้อมูล และจัดเก็บข้อมูลที่ครบถ้วน
ขั้นตอนการสร้างตารางผู้พัฒนาจะต้องคลิกเลือกฐานข้อมูลที่ต้องการทางด้านซ้ายมือก่อน ซึ่งหากเป็นฐานข้อมูลใหม่ จะยังไม่มีชื่อตารางโปรแกรมจะให้ผู้พัฒนาเริ่มกําหนดชื่อของตารางและจํานวนคอลัมน์ที่ต้องการภายในตารางข้อมูลนั้นได้เลย แต่หากฐานข้อมูลนั้นมีตารางเดิมอยู่แล้ว หลังจากคลิกเลือกฐานข้อมูลจะปรากฏลิสต์ รายชื่อของตารางและเมนู New ขึ้นมาเพื่อให้ผู้พัฒนาสร้างตารางใหม่ ยกตัวอย่างการสร้างตารางชื่อว่า user เพื่อเก็บข้อมูลผู้ใช้งานโดยจะเก็บ รหัสของผู้ใช้งาน ชื่อ นามสกุล เพศ และ วันเดือนปีเกิด ซึ่งจะต้องใช้ จํานวนฟิลด์หรือคอลัมน์ในการจัดเก็บข้อมูลจํานวน 5 คอลัมน์ ดังรูปที่ 6.7
หลังจากนั้นจะปรากฏแถวของตารางเพื่อให้ผู้พัฒนากําหนดค่าคอลัมน์ข้อมูลตาม ที่ต้องการ ซึ่งจํานวนแถวจะเท่ากับจํานวนคอลัมน์ที่ระบุค่าตอนเริ่มต้นสร้าง แต่หากต้องการคอลัมน์เพิ่ม สามารถ ระบุจํานวนคอลัมน์ที่ต้องการเพิ่มที่ด้านบนตาราง และกดปุ่ม Go เพื่อทําการเพิ่มคอลัมน์ข้อมูล
จากรูปที่ 6.8 ส่วนสําคัญของการกําหนดค่าของแต่ละคอลัมน์มีหลายส่วน ดังนี้
6.7.2.1 Name
Name คือ ชื่อของฟิลด์ข้อมูลที่ต้องการจัดเก็บข้อมูล เช่น id คือฟิลด์สําหรับเก็บรหัสผ้ใช้ name คือฟิลด์เก็บชื่อผู้ใช้ surname คือฟิลด์เก็บนามสกุลผู้ใช้ หรือ sex คือฟิลด์สําหรับเก็บเพศผู้ใช้ เป็นต้น
6.7.2.2 Type
Type คือ ชนิดของฟิลด์ข้อมูลที่ต้องการเก็บ ขึ้นอยู่กับว่าจะเก็บข้อมูลในรูปแบบใด เช่น id เก็บเป็นตัวเลขจะต้องตั้ง type เป็นแบบ INT ชื่อและนามสกุลของผู้ใช้เป็นตัวอักษรจะต้องเก็บข้อมูลในรูปแบบของ CHAR หรือ VARCHAR หรือ วันเดือนปีเกิด เก็บข้อมูลที่เป็นวันที่จะต้องเลือก type เป็นแบบ DATE เป็นต้น
6.7.2.3 Length/Values
Length/Values คือ ความยาวของตัวเลขหรือตัวอักษรที่จัดเก็บในฟิลด์ข้อมูล กรณีที่ กําหนดชนิดข้อมูลเป็นแบบ INT, CHAR หรือ VARCHAR เช่น ชื่อเป็นตัวอักษรความยาว 50 ตัวอักษร สามารถจัดเก็บชื่อที่มีความยามของตัวอักษร สระ และวรรณยุกต์รวมกันไม่เกิน 50 ตัวอักษร เป็นต้น กรณีที่กําหนดค่าเป็นแบบ TEXT หรือ DATE ไม่ต้องระบุความยาวของตัวอักษร
6.7.2.4 Default
Default เป็นการกําหนดค่าปริยาย หรือค่าเริ่มต้นของคอลัมน์ข้อมูล ซึ่งอาจจะมีหรือไม่มี ก็ได้ซึ่งโปรแกรมจะตั้งเลือกค่าไว้ที่ None หมายถึง ไม่มีการระบุค่าปริยาย
6.7.2.5 Attributes
Attributes เป็นการกําหนดค่าคอลัมน์ว่าข้อมูลที่จัดเก็บจะให้เป็นแบบ BINARY หรือไม่ หรือต้องการที่จะเก็บข้อมูลแบบมี หรือ ไม่มี เครื่องหมายเป็นจํานวนเต็มบวก หรือ มีทั้งจํานวนเต็มบวกและลบ เป็นต้น
6.7.2.6 Null
Null เป็นการกําหนดว่าคอลัมน์ที่กําหนดอนุญาตให้ลงข้อมูลที่เป็นค่าว้างหรือไม่ ซึ่งหากต้องการให้คลิกที่ปุ่ม null เพื่อกําหนดค่า
6.7.2.7 Index
Index เป็นการกําหนดค่าคีย์ของข้อมูล ซึ่งสามารถกําหนดค่าเป็นคีย์หลัก (Primary) เป็น ข้อมูลดัชนีอ้างอิงตําแหน่งในการเข้าถึงแบบเรียงลําดับ (Index) หรือ เป็นข้อมูลที่ไม่ ซ้ำกันเลยในฟิลด์ที่กําหนด (Unique) แล้วแต่การออกแบบตารางข้อมูลของผู้พัฒนาเอง
6.7.2.8 A_I หรือ AUTO_INCREMENT
A_I หรือ AUTO_INCREMENT เป็นการเพิ่มค่าอัตโนมัติเพื่อป้องกันข้อผิดพลาดจากการกรอกข้อมูลของผู้ใช้งาน ซึ่งหากต้องการกําหนดค่าเป็นแบบเพิ่มค่าอัตโนมัติ ชนิดของข้อมูลจะต้องเป็น แบบ INT, SMALLINT หรือ MEDIUMINT เท่านั้น ซึ่งจะเพิ่มจํานวนขึ้นทีละ 1 ลําดับไปเรื่อยๆ ตามแต่ละลําดับข้อมูลที่เพิ่มเข้ามา
6.7.2.9 Comments
Comments เป็นข้อความบรรยายอธิบายถึงฟิลด์ข้อมูลนั้น เพื่อให้สามารถจดจํา และรู้ ความหมายของข้อมูลที่จัดเก็บภายในฟิลด์ ซึ่งสามารถกําหนดค่าคําอธิบายฟิลด์ได้ตามความต้องการ เพื่อป้องกันการลืมในกรณีที่กลับมาแก้ไขภายหลัง
หลังจากกําหนดค่าเสร็จแล้ว ให้กดปุ่ม SAVE เพื่อสร้างตารางที่ต้องการ ซึ่งจะปรากฏข้อมูล ของตาราง รายละเอียดของตารางตามที่กําหนดค่าไว้ ดังรูปที่ 6.9
6.7.3 การแก้ไขโครงสร้างตาราง
การจัดการโครงสร้างของตาราง เช่น การแก้ไขข้อมูลเบื้องต้นของตาราง เป็นต้น สามารถแก้ไข ได้โดยการเลือกตารางในฐานข้อมูลที่ต้องการ จากนั้นเลือกเมนู Structure ดังรูปที่ 6.10
6.7.3.1 หากต้องการแก้ไขโครงสร้าง
หากต้องการแก้ไขโครงสร้าง ของฟิลด์ข้อมูลสามารถทําได้โดย การคลิกเลือกที่เมนูที่ต้องการที่ ช่อง Action หรือหากต้องการแก้ไขหลายฟิลด์ข้อมูลพร้อมกัน ให้คลิกเลือกที่ เช็คบ็อกซ์ด้านหน้าชื่อของฟิลด์ข้อมูล ซึ่งสามารถกําหนดค่าได้ดังนี้
1. คลิกเลือกที่ Change เมื่อต้องการเปลี่ยนรูปแบบของคอลัมน์ เช่น เปลี่ยนชื่อฟิลด์ข้อมูล เปลี่ยนชนิด หรือ ขนาดของข้อมูลในฟิลด์นั้น เป็นต้น
2. คลิกเลือกที่ Drop เพื่อเป็นการเลือกลบฟิลด์ที่ต้องการ
3. คลิกเลือกที่ Primary เพื่อเป็นการสร้างคีย์หลักหรือยกเลิกคีย์หลัก
4. คลิกเลือกที่ Unique เพื่อเป็นการสร้างหรือยกเลิกฟิลด์ข้อมูลที่เป็นแบบ UNIQUE
5. คลิกเลือกที่ Index เพื่อเป็นการสร้างหรือยกเลิกฟิลด์ข้อมูลที่เป็นแบบ INDEX
6.7.3.2 หากต้องการเพิ่มคอลัมน์หรือฟิลด์ข้อมูลเพิ่มเติม
หากต้องการเพิ่มคอลัมน์หรือฟิลด์ข้อมูลเพิ่มเติม ผู้พัฒนาสามารถเลือกกําหนดจํานวนคอลัมน์ ที่ต้องการเพิ่มและระบุตําแหน่งของคอลัมน์ใหม่ เช่น วางไว้เริ่มต้นตาราง วางไว้ท้ายตาราง หรือวางไว้หลังคอลัมน์ใดคอลัมน์หนึ่งก็ได้ จากนั้นกดปุ่ม Go ดังรูปที่ 6.11
หลังจากกดปุ่ม Go แล้ว จะปรากฏหน้าจอสําหรับกําหนดค่าฟิลด์ข้อมูลใหม่ เหมือนขั้นตอน เริ่มต้น ซึ่งสามารถกําหนดชื่อของฟิลด์ข้อมูล ชนิดและขนาดของข้อมูล หรือรายละเอียดอื่นๆ ดังที่กล่าวมาแล้วในขั้นตอนการสร้างตาราง ตัวอย่างดังรูปที่ 6.12 และเมื่อกําหนดค่าแล้วเสร็จ ให้คลิกที่ปุ่ม Save เพื่อทําการบันทึกข้อมูลฟิลด์ใหม่ในตารางไว้ ใช้ในกรณีที่ตารางนั้นเก็บข้อมูลตกหล่นไป หรือไม่ครบถ้วน แต่หากตารางมีฟิลด์ข้อมูลที่ไม่มีความจําเป็นหรือมีความซ้ำซ้อนกัน ผู้พัฒนาสามารถเลือกลบฟิลด์นั้นทิ้งได้แต่ต้องระวังเรื่องการเลือกข้อมูล ไปแสดงผู้ลของคําสั่งโปรแกรม ซึ่งหากลบฟิลด์ข้อมูลจะกระทบต่อรหัสคําสั่งบางส่วนด้วย
6.7.4 การส่งออกฐานข้อมูล
ในกรณีที่ต้องการย้ายฐานข้อมูล เช่น ต้องการย้ายไปยังเครื่องแม่ข่ายเครื่องอื่นต้องการอัปโหลดข้อมูลขึ้นเครื่องแม่ข่าย ต้องการโอนย้ายฐานข้อมูลไปให้ผู้พัฒนาคนอื่นร่วมกันทดสอบระบบ หรือ แม้แต่การทําการสํารองข้อมูลไว้เพื่อป้องกันการสูญหายของข้อมูล เป็นต้น ผู้พัฒนาสามารถเลือกการส่งออกฐานข้อมูลเพื่อนําไปใช้ติดตั้งในเครื่องแม่ข่ายเครื่องอื่น ที่อื่นหรือจัดเก็บสํารองข้อมูลไว้ได้
วิธีการส่งออกฐานข้อมูลทําได้โดย การคลิกที่ชื่อของฐานข้อมูลที่ต้องการ จากนั้นเลือกเมนู Export จากนั้นกดปุ่ม Export จะได้ไฟล์ดาวน์โหลดเป็นไฟล์ที่มีนามสกุล .sql เพื่อสามารถนําไปใช้งานต่อได้ ดังรูปที่ 6.13
ซึ่งการส่งออกฐานข้อมูลนี้จะได้ทั้งตารางทั้งหมดที่อยู่ในฐานข้อมูล ฟิลด์ รูปแบบ ของฟิลด์ รวมไปถึงข้อมูลที่อยู่ในตารางด้วย
6.7.5 การนำเข้าฐานข้อมูล
การนําเข้าฐานข้อมูลเริ่มต้นผู้พัฒนาจะต้องมีไฟล์ฐานข้อมูล .sql ที่ถูกส่งออกมาก่อน ซึ่ง หลังจากมีไฟล์ .sql แล้ว จะต้องสร้างฐานข้อมูลขึ้นมาใหม่ หรืออาจใช้ชื่อฐานข้อมูลเดิมที่มีอยู่แล้วก็ได้ แต่ต้องระวังเรื่องชื่อตารางที่ซ้ำกันจะมีผู้ลต่อการติดตั้งและนําเข้าฐานข้อมูล และที่สําคัญคือถ้าไฟล์ฐานข้อมูลมีขนาดใหญ ควรระวังเรื่องการอัปโหลดไฟล์ติดตั้ง
ซึ่งปกติแล้ว การอัปโหลดจะถูกกําหนดไว้ไม่ให้เกิน 2 เมกะไบต์ ซึ่งหากต้องการอัปโหลดไฟล์ฐานข้อมูลที่มีขนาดใหญ่ จะต้องแก้ไขการกําหนดค่าของภาษาพีเอชพี (php.ini) เพื่อให้สามารถอัปโหลดไฟล์ที่มีขนาดใหญ่กว่า 2 เมกะไบต์ได้ วิธีการนําเข้าฐานข้อมูลทําได้โดยการสร้างฐานข้อมูลขึ้นมาใหม่จากนั้นเลือกฐานข้อมูลที่ ต้องการนําเข้า จากนั้นเลือกเมนู Import เลือกไฟล์ฐานข้อมูล .sql ที่เตรียมไว้ จากนั้นกดปุ่ม Import เพื่อ นําเข้าฐานข้อมูล ดังรูปที่ 6.14