CHAPTER 13 MySQL and phpMyAdmin
Agenda MySQL phpMyAdmin การจัดการฐานข้อมูล MySQL ผ่าน phpMyAdmin การกำหนดสิทธิของผู้ใช้
MySQL MySQL คือ ระบบจัดการฐานข้อมูล (DBMS : DataBase Management System) สำหรับจัดการฐานข้อมูลเชิงสัมพันธ์ (Relational Database) ซึ่งข้อมูลเก็บอยู่ในรูปของตารางที่มีความสัมพันธ์กัน จัดการกับฐานข้อมูลด้วยภาษา SQL ทํางานได้ทั้งบนระบบ Unix หรือ Linux หรือ Windows
MySQL ข้อดีของ MySQL คือ ฟรี สามารถเอาซอร์ดโค้ดโปรแกรมมาพัฒนาต่อยอดได้ มีความเร็วและมีความเชื่อถือในการใช้งานสูง MySQL สามารถนำไปใช้ได้กับทุกระบบทุกแพลตฟอร์ม ใช้กับ PHP, ASP,JSP ฯลฯ นิยมเอามาใช้งานร่วมกับ PHP เพราะ MySQL กับ PHP เป็น Open Source เหมือนกัน ฟรี มีความน่าเชื่อถือสูง สามารถทำงานร่วมกันได้อย่างเสถียรมากที่สุด รองรับการใช้งานหลายแพลตฟอร์ม
phpMyAdmin คือ เครื่องสำหรับช่วยในการใช้งาน MySQL โดยไม่ต้อง พิมพ์ที่ละคำสั่งผ่านทาง DOS command แต่สามารถติดต่อ ผ่านทาง Window Interface ได้ ผู้ใช้สามารถสร้างและ แก้ไขฐานข้อมูล ผ่านทาง phpMyAdmin ได้ แต่สำหรับ การทำงานบางอย่างยังคงต้องทำงานผ่านทาง DOS command
การเรียกใช้ phpMyAdmin
1 2 3 การสร้างฐานข้อมูล (Database) ตัวอย่างนี้ เป็นการสร้างฐานข้อมูลชื่อ mydb
การเปิดฐานข้อมูล เลือกฐานข้อมูลชื่อ mydb ในช่องฐานข้อมูล
การลบฐานข้อมูล 2 1
3 columns = 3 fields Primary key 4 rows = 4 records การสร้างตาราง รหัสนักศึกษา (id) ชื่อ (firstname) นามสกุล (lastname) 001 กาญจนา ชมมนาถ 002 ลลิต นารายณ์ 003 สายสมร งามตา 004 สมชาย พนาไพร 4 rows = 4 records จะสร้างตารางชื่อ table1 เพื่อเก็บข้อมูลดังตารางข้างบนนี้
การสร้างตาราง 1 3 2 4 ใส่ชื่อตาราง และกำหนดจำนวนฟิลด์
4 1 2 3 5 การสร้างตาราง กำหนด ใส่ชื่อฟิลด์ ประเภทข้อมูล และความยาว primary key ใส่ชื่อฟิลด์ ประเภทข้อมูล และความยาว
การสร้างตาราง หน้าจอสรุปรายละเอียดของตาราง table1
การเพิ่มข้อมูลลงในตาราง การลบตาราง
5 1 2 พิมพ์ข้อมูล record ที่ 1 3 พิมพ์ข้อมูล record ที่ 2 4 การเพิ่มข้อมูลลงในตาราง 1 2 พิมพ์ข้อมูล record ที่ 1 3 พิมพ์ข้อมูล record ที่ 2 4 เลือกแทรกระเบียนใหม่เพื่อเพิ่มข้อมูลเรคอร์ดอื่น ๆ อีก 5
4 1 พิมพ์ข้อมูล record ที่ 3 2 พิมพ์ข้อมูล record ที่ 4 3 การเพิ่มข้อมูลลงในตาราง 1 พิมพ์ข้อมูล record ที่ 3 2 พิมพ์ข้อมูล record ที่ 4 3 เลือกส่งกลับเพื่อหยุดเพิ่มข้อมูล 4
การเปิดดูข้อมูลในตาราง การแก้ไขข้อมูล ในตาราง การลบข้อมูลในตาราง
ประเภทข้อมูลที่ใช้ใน MySQL มีดังนี้ ความหมาย TINYINT[(Size)] [UNSIGNED] ตัวเลขขนาดเล็ก -128 ถึง 127 แต่ถ้าไม่ใช้เครื่องหมายมีค่า 0 ถึง 255 SMALLINT[(Size)] [UNSIGNED] ตัวเลขขนาดเล็ก -32,768 ถึง32,767 แต่ถ้าไม่ใช้เครื่องหมายมีค่า 0 ถึง 65,535 MEDIUMINT[(Size)] [UNSIGNED] ตัวเลขขนาดกลาง -8,388,608 ถึง 8,388,607 แต่ถ้าไม่ใช้เครื่องหมายมีค่า 0 ถึง 16,777,215 INT[(Size)] [UNSIGNED] ตัวเลขขนาดปกติ -2,147,483,648 ถึง 2,147,483,647 แต่ถ้าไม่ใช้เครื่องหมายมีค่า 0 ถึง 4,294,967,295 BIGINT[(Size)] [UNSIGNED] ตัวเลขขนาดใหญ่ -9,223,372,036,854,775,808 ถึง 9,223,372,036,854,775,807 แต่ถ้าไม่ใช้เครื่องหมายมีค่า 0 ถึง 18,446,744,073,709,551,615
ประเภทข้อมูล ประเภท ความหมาย FLOAT[(Size,Dimension)] ทศนิยมสูงสุด 24 ตัวเลขทศนิยม ที่ค่าช่วงลบ -3.402823466E+38 ถึง -1.175494351E-38 รวม 0 และช่วงบวก 1.175494351E-38 ถึง 3.402823466E+38 DATE รูปแบบ YYYY-MM-DD 1000-01-01 ถึง 9999-12-31 TIME รูปแบบเวลา (HH:MM:SS) DATETIME รูปแบบวัน-เวลา (YYYY-MM-DD HH:MM:SS) CHAR[(Size)] ถ้าไม่กำหนด size จะถือเป็น 1 อักขระ (รวมช่องว่าง)1 ถึง 255 อักขระ VARCHAR(Size) ต้องกำหนดขนาด อักขระ(ไม่รวมช่องว่างด้านท้าย)1 ถึง 255
ประเภทข้อมูล ประเภท ความหมาย TINYBLOB, TINYTEXT เก็บตัวอักขระได้สูงสุด 255 ตัวอักษร (2^8-1) BLOB, TEXT เก็บตัวอักขระได้สูงสุด 65,535 ตัวอักษร (2^16-1) MEDIUMBLOB, MEDIUMTEXT เก็บตัวอักขระได้สูงสุด 16,777,215 ตัวอักษร (2^24-1) LONGBLOB, LONGTEXT เก็บตัวอักขระได้สูงสุด 4,294,967,295 ตัวอักษร (2^32-1)
การกำหนดสิทธิการใช้งาน ใช้ username and password ระดับผู้ใช้งาน (user) แบ่งออกเป็น 2 ระดับ System Administrator /DBA : root User ระดับสิทธิ (privilege) แบ่งออกเป็น 4 ระดับ Global root Database Table Field
ความสัมพันธ์ของระดับสิทธิกับระดับผู้ใช้ Global Database Table Field SA/DBA User
การสร้างผู้ใช้และการกำหนดสิทธิ
สิทธิระดับ Global
การเพิ่มผู้ใช้ใหม่
การเพิ่มผู้ใช้ใหม่
การกำหนดสิทธิให้แก่ผู้ใช้ในระดับฐานข้อมูล
การกำหนดสิทธิให้แก่ผู้ใช้ในระดับฐานข้อมูล