ฐานข้อมูลคืออะไรและทำไมเราต้องใช้
เวลาเราเขียนโปรแกรม สิ่งที่ขาดไม่ได้เลยคือการเก็บข้อมูลให้เป็นระเบียบ เหมือนกับเรามีสมุดจดบันทึกรายชื่อลูกค้าหรือรายการสินค้า Database (ฐานข้อมูล หรือที่เก็บข้อมูลแบบดิจิทัล) ทำหน้าที่เหมือนตู้เก็บแฟ้มขนาดใหญ่ที่ช่วยให้เราค้นหาหรือแก้ไขข้อมูลได้รวดเร็ว
ลองนึกภาพร้านขายของชำที่จดรายชื่อของในกระดาษ ถ้ามีของเป็นพันชิ้น การหาว่าของชิ้นไหนเหลือเท่าไหร่คงทำได้ยากมาก ฐานข้อมูลจึงเข้ามาช่วยจัดการเรื่องนี้ให้เป็นระบบ ทำให้โปรแกรมเมอร์เข้าถึงข้อมูลที่ต้องการได้ภายในเสี้ยววินาที
MySQL และ MariaDB เป็นระบบจัดการฐานข้อมูลที่นิยมใช้กันมากที่สุดในโลก เพราะมันฟรีและเสถียรมาก การเรียนรู้เครื่องมือนี้จะช่วยให้เราสร้างแอปพลิเคชันที่จดจำข้อมูลผู้ใช้งานได้จริง ซึ่งเป็นทักษะพื้นฐานสำคัญที่สุดของนักพัฒนาซอฟต์แวร์ทุกคน
เตรียมตัวติดตั้งฐานข้อมูลให้พร้อมใช้งาน
ก่อนจะเริ่มใช้งาน เราต้องมีโปรแกรมฐานข้อมูลอยู่ในเครื่องก่อน วิธีที่ง่ายที่สุดสำหรับมือใหม่คือการดาวน์โหลดตัวติดตั้งจากเว็บไซต์ทางการ Installer (โปรแกรมช่วยติดตั้งอัตโนมัติ) จะคอยถามเราว่าอยากตั้งค่าอะไรบ้าง ให้เลือกค่ามาตรฐานไปก่อนได้เลย
สำหรับคนที่ใช้ Windows แนะนำให้โหลด XAMPP (ชุดโปรแกรมจำลองเซิร์ฟเวอร์สำหรับทดสอบงาน) มาใช้ เพราะมันรวมทั้ง MySQL และเครื่องมือจัดการฐานข้อมูลแบบหน้าจอสวยงามมาให้เสร็จสรรพ ส่วนฝั่ง Mac หรือ Linux สามารถใช้ Package Manager (ระบบจัดการซอฟต์แวร์ในเครื่อง) สั่งติดตั้งได้ทันที
สิ่งสำคัญที่ห้ามลืมเด็ดขาดคือการตั้งรหัสผ่านสำหรับ root (ผู้ดูแลระบบสูงสุด) เพราะถ้าเราไม่ตั้งรหัสผ่าน คนอื่นที่เข้าถึงเครื่องเราได้จะสามารถเข้ามาแก้ไขหรือลบข้อมูลในฐานข้อมูลเราได้ทั้งหมด ดังนั้นควรจดรหัสผ่านนี้ไว้ในที่ปลอดภัยเสมอ
รู้จักกับ Terminal และการเข้าถึงฐานข้อมูล
Terminal (หน้าต่างพิมพ์คำสั่ง) หรือ Command Prompt (หน้าต่างควบคุมระบบของ Windows) เป็นเครื่องมือที่โปรแกรมเมอร์ใช้คุยกับคอมพิวเตอร์โดยตรงแทนการใช้เมาส์คลิก การพิมพ์คำสั่งเข้าไปจะทำให้เราทำงานได้เร็วและแม่นยำกว่าการใช้หน้าจอแบบปกติ
การเข้าถึงฐานข้อมูลผ่านตัวอักษรเป็นเรื่องที่ดูน่ากลัวในตอนแรก แต่มันจะช่วยให้เราเข้าใจว่า Query (คำสั่งที่ใช้ถามข้อมูล) ทำงานอย่างไรจริงๆ เมื่อเราพิมพ์คำสั่งเข้าไป ระบบจะตอบกลับมาเป็นข้อความหรือตารางข้อมูล ซึ่งเป็นภาษาที่คอมพิวเตอร์เข้าใจได้ง่ายที่สุด
หากเราติดตั้งโปรแกรมเรียบร้อยแล้ว ให้เปิดโปรแกรม Terminal ขึ้นมาเพื่อเตรียมตัวเข้าสู่ระบบฐานข้อมูล การพิมพ์คำสั่งเองจะทำให้เราคุ้นเคยกับโครงสร้างของซอฟต์แวร์มากกว่าการใช้โปรแกรมหน้าจอสวยๆ เพียงอย่างเดียว
วิธีล็อกอินเข้าใช้งาน MySQL ผ่านคำสั่ง
เมื่อเปิด Terminal ขึ้นมาแล้ว เราต้องสั่งให้เครื่องรู้จักคำสั่ง mysql เพื่อเชื่อมต่อกับเซิร์ฟเวอร์ฐานข้อมูลที่รันอยู่เบื้องหลัง การพิมพ์คำสั่งด้วยตัวเองจะเป็นจุดเริ่มต้นของการเป็นโปรแกรมเมอร์มืออาชีพ
# เข้าสู่ระบบในฐานะผู้ดูแลสูงสุด
mysql -u root -p
ในบรรทัดนี้ mysql คือชื่อโปรแกรมที่เราเรียกใช้งาน -u root คือการระบุว่าเราต้องการเข้าใช้งานในชื่อผู้ใช้ root ส่วน -p คือคำสั่งบอกว่าให้เครื่องถามรหัสผ่านก่อนเข้าใช้งาน
ผลลัพธ์หลังจากพิมพ์คำสั่งนี้คือ ระบบจะขึ้นข้อความว่า Enter password: ให้เราพิมพ์รหัสผ่านที่ตั้งไว้ตอนติดตั้งลงไป (ตอนพิมพ์รหัสจะไม่เห็นตัวอักษรขึ้นมา ไม่ต้องตกใจ) หากรหัสถูกต้อง หน้าจอจะเปลี่ยนเป็น MariaDB [(none)]> แสดงว่าเราเข้ามาในโลกของฐานข้อมูลสำเร็จแล้ว
ข้อผิดพลาดที่มือใหม่มักเจอและวิธีแก้ไข
ปัญหาที่พบบ่อยที่สุดคือการพิมพ์คำสั่งแล้วระบบบอกว่า command not found (หาคำสั่งไม่เจอ) นั่นแปลว่าเครื่องยังไม่รู้จักตำแหน่งที่ติดตั้งโปรแกรมไว้ เราต้องทำการ Add to Path (ระบุตำแหน่งโปรแกรมให้ระบบรู้จัก) เพื่อให้สั่งงานได้จากทุกที่ในเครื่อง
อีกจุดหนึ่งที่มือใหม่พลาดบ่อยคือลืมใส่ Semicolon (เครื่องหมายอัฒภาค ; ) ปิดท้ายคำสั่งในฐานข้อมูล ทุกคำสั่งของ SQL ต้องจบด้วยเครื่องหมายนี้เสมอ หากไม่ใส่ โปรแกรมจะรอให้เราพิมพ์ต่อเรื่อยๆ จนกว่าเราจะใส่เครื่องหมายนี้เข้าไป
จำไว้ว่าถ้าพิมพ์ผิดหรือค้าง ให้กดปุ่ม Ctrl + C ที่คีย์บอร์ดเพื่อยกเลิกคำสั่งเดิมแล้วเริ่มใหม่ได้ทันที อย่ากลัวที่จะทำอะไรพัง เพราะนี่คือเครื่องมือจำลองในเครื่องของเรา การทดลองผิดถูกคือวิธีเรียนรู้ที่ดีที่สุดสำหรับโปรแกรมเมอร์
สรุปการนำไปใช้ในการทำงานจริง
เมื่อเราล็อกอินเข้าฐานข้อมูลได้แล้ว ขั้นตอนถัดไปคือการสร้าง Database (พื้นที่เก็บข้อมูลเฉพาะโปรเจกต์) ขึ้นมาใหม่ เช่น CREATE DATABASE my_first_app; เพื่อใช้เก็บข้อมูลจากโปรเจกต์ที่เรากำลังฝึกเขียนโค้ดอยู่ นี่คือจุดเริ่มต้นของการสร้างแอปพลิเคชันจริง
ลองนึกถึงโปรเจกต์ "สมุดบันทึกรายรับรายจ่าย" ที่คุณกำลังจะทำ คุณต้องใช้คำสั่งเหล่านี้สร้างตารางเพื่อเก็บวันที่ จำนวนเงิน และรายละเอียด นี่คือทักษะที่ใช้จริงในงานบริษัท ไม่ว่าจะเป็นการทำเว็บหรือแอปมือถือ ฐานข้อมูลคือหัวใจหลักที่เก็บทุกอย่างไว้ให้เรา
การฝึกพิมพ์คำสั่งเองใน Terminal จะช่วยให้คุณเก่งขึ้นเร็วกว่าคนอื่น เพราะคุณจะเข้าใจกลไกการทำงานของมันจริงๆ เมื่อถึงเวลาต้องแก้ปัญหาหน้างาน คุณจะรู้วิธีตรวจสอบและแก้ไขได้ทันทีโดยไม่ต้องพึ่งพาโปรแกรมช่วยจนเกินไป เริ่มต้นจากจุดเล็กๆ วันละนิดแล้วคุณจะพบว่ามันไม่ได้ยากอย่างที่คิด