- แบบทดสอบก่อนเรียน
- 1.1.ระบบคอมพิวเตอร์
- 1.2.ภาษาคอมพิวเตอร์สำหรับพัฒนาโปรแกรม
- 1.3.หลักการทำงานของเวิลด์ไวด์เว็บได้
- 1.4.ความรู้เบื้องต้นเกี่ยวกับเว็บไซต์ (Web Site)
- 1.5.ประเภทของโปรแกรมบนเว็บ
- 1.6.ประเภทของเว็บไซต์และรูปแบบการใช้งาน
- 1.7.องค์ประกอบสำคัญในการออกแบบเว็บไซต์
- 1.8.ภาษาสำหรับการพัฒนาเว็บไซต์
- 1.9.การติดตั้งชุดพัฒนาโปรแกรมภาษาพีเอชพี (PHP)
- 1.10.การสร้างโลคอลไซต์
- ใบงานฝึกปฏิบัติ
- แบบฝึกหัด
- แบบทดสอบหลังเรียน
- แบบทดสอบก่อนเรียน
- 5.1 ฟังก์ชัน
- 5.2 ประเภทของฟังก์ชัน
- 5.3 ฟังก์ชันเกี่ยวกับอาเรย์ (Array)
- 5.4 ฟังก์ชันเกี่ยวกับสตริง (String)
- 5.5 ฟังก์ชันทางคณิตศาสตร์ (Math Function)
- 5.6 ฟังก์ชันเกี่ยวกับวันและเวลา (Date/Time Function)
- 5.7 การสร้างฟังก์ชัน
- 5.8 การส่งผ่านค่าให้กับฟังก์ชัน
- 5.9 ฟังก์ชันเกี่ยวกับระบบไฟล์ (File System Function)
- ใบงานฝึกปฏิบัติ
- แบบฝึกหัด
- แบบทดสอบหลังเรียน
- แบบทดสอบก่อนเรียน
- 7.1 ความรู้เบื้องต้นเกี่ยวกับฐานข้อมูล
- 7.2 ลำดับชั้นของข้อมูล (Data Hierarchy)
- 7.3 ฐานข้อมูลมาเรียดีบี (MariaDB)
- 7.4 การเปิดใช้งานฐานข้อมูลมาเรียดีบี
- 7.5 ชนิดของข้อมูลในฐานข้อมูลมายเอสคิวแอล
- 7.6 การกำหนดคุณสมบัติของฟิลด์ข้อมูลเพิ่มเติม
- 7.7 การจัดการฐานข้อมูลด้วย PhpMyadmin
- 7.8 ภาษาเอสคิวแอล
- ใบงานฝึกปฏิบัติ
- แบบฝึกหัด
- แบบทดสอบหลังเรียน
- แบบทดสอบก่อนเรียน
- 8.1 ภาษาพีเอชพีกับการติดต่อฐานข้อมูล
- 8.2 การเขียนโปรแกรมด้วยภาษาพีเอชพี เพื่อเชื่อมต่อและปิดการเฃื่อมต่อฐานข้อมูล MySQL
- 8.3 การเขียนโปรแกรมภาษาพีเอชพี เพื่อเพิ่มข้อมูลในตาราง
- 8.4 การเขียนโปรแกรมภาษาพีเอชพี เพื่อแสดงข้อมูลในตาราง
- 8.5 การเขียนโปรแกรมภาษาพีเอชพี เพื่อค้นหาข้อมูลในตาราง
- 8.6 การเขียนโปรแกรมภาษาพีเอชพี เพื่อแก้ไขข้อมูลในตาราง
- 8.7 การเขียนโปรแกรมภาษาพีเอชพี เพื่อลบข้อมูลในตาราง
- ใบงานฝึกปฏิบัติ
- แบบฝึกหัด
- แบบทดสอบหลังเรียน
7.5 ชนิดของข้อมูลในฐานข้อมูลมายเอสคิวแอล
ข้อมูลที่จัดเก็บในฐานข้อมูล แต่ละฟิลด์แต่ละคอลัมน์มีรูปแบบที่แตกต่างกัน เช่น ข้อมูลการสมัครสมาชิกประกอบไปด้วย ชื่อ นามสกุล ที่เป็นตัวอักษร เบอร์โทรศัพท์ที่เป็นตัวเลข วันเกิด ที่เป็นวันเดือนปี หรือ เพศที่เป็นตัวเลขที่มีความหมาย เช่นกําหนด 0 หมายถึงเพศชาย และ 1 หมายถึงเพศหญิง เป็นต้น ซึ่งการกําหนดค่าแต่ละฟิลด์ของข้อมูลจะต้องกําหนดให้ตรงกันกับข้อมูลที่จัดเก็บ หากไม่ตรงกัน อาจเกิดความผิดพลาดในการจัดเก็บข้อมูล เช่น ข้อมูลไม่ครบถ้วน หรือ เกิดข้อผิดพลาดระหว่างการ บันทึกข้อมูล เป็นต้น
นอกจากชนิดของข้อมูลแล้วการกําหนดขนาดของฟิลด์เพื่อจองพื้นที่ในการจัดเก็บข้อมูล เพื่อให้ข้อมูลครบถ้วน เช่น หากกําหนดชนิดของฟิลด์เป็นตัวเลขขนาด 3 ตัวอักษร จะไม่สามารถบันทึกข้อมูลที่มีตัวเลขเกิน 3 ตัวได้ทําให้ฟิลด์รองรับการกรอกข้อมูลระหว่าง 0 – 999 เท่านั้น เป็นต้น จะเห็นว่าชนิดของข้อมูลและขนาดของข้อมูลมีส่วนสําคัญในการกําหนดค่า ซึ่งชนิดของฐานข้อมูลมายเอสคิวแอล สามารถแบ่งออกเป็นหมวดหมู่ได้ ดังนี้
7.5.1 ชนิดตัวอักษร (Text)
ชนิดตัวอักษร (Text) เป็นการจัดเก็บข้อมูลที่เป็นตัวอักษรซึ่งแบ่งตามคุณลักษณะของ ตัวอักษร ดังตารางที่ 7.1
ตารางที่ 7.1 ชนิดของข้อมูลแบบตัวอักษร
| ชนิดของข้อมูล | รายละอียด |
| CHAR (size) | ใช้เก็บตัวอักษรสามารถระบุขนาดของตัวอักษร ตัวเลข สัญลักษณ์ต่างๆ (Size) ได้ไม่เกิน 255 ตัวอักษร |
| VARCHAR (size) | นิยมใช้เก็บตัวอักษรสามารถระบุจํานวนขนาดของตัวอักษร (Size) ได้จํานวนไม่เกิน 65,535 ตัวอักษร (สําหรับ MySQL 5.0.3 ขึ้นไป) |
| TINYTEXT | เก็บตัวอักษรได้ไม่ เกิน 255 ตัวอักษร |
| TEXT | เก็บตัวอักษรได้ไม่ เกิน 65,535 ตัวอักษร |
| BLOB | BLOB (Binary Large Object) เก็บข้อมูลได้ 65,535 ไบต์ |
| MEDIUMTEXT | เก็บตัวอักษรได้สูงสุด 16,777,215 ตัวอักษร |
| MEDIUMBLOB | เก็บข้อมูลได้สูงสุด 16,777,215 ไบต์ |
| LONGTEXT | เก็บตัวอักษรได้สูงสุด 4,294,967,295 ตัวอักษร |
| LONGBLOB | เก็บข้อมูลได้สูงสุด 4,294,967,295 ไบต์ |
| ENUM | กลุ่มของข้อมูลตั้งแต่ 0,1,2,3, … 65535 |
| SET | กลุ่มของข้อมูลตั้งแต่ 0,1,2,3, … 64 |
7.5.2 ชนิดตัวเลข (Number)
ชนิดตัวเลข (Number) การเก็บข้อมูลชนิดตัวเลขมีหลายชนิดขึ้นอยู่กับขนาดของตัวเลข ซึ่งสามารถกําหนดได้ว่าข้อมูลเป็นจํานวนบวกอย่างเดียว (Unsingned) หรือ ทั้งบวกและลบ (Normal) ดังตารางที่ 7.2
ตารางที่ 7.2 ชนิดของข้อมูลแบบตัวเลข
| ชนิดของข้อมูล | รายละอียด |
| TINYINT (size) | สามารถจัดเก็บตัวเลขได้ -128 to 127 แบบ normal และ 0 to 255 แบบ UNSIGNED สามารถกําหนดขนาด (Size) ของตัวเลขที่จัดเก็บได้ |
| SMALLINT (size) | สามารถจัดเก็บตัวเลขได้ -32768 to 32767 แบบ normal และ 0 to 65535 แบบ UNSIGNED |
| MEDIUMINT (size) | สามารถจัดเก็บตัวเลขได้ -8388608 to 8388607 แบบ normal และ 0 to 16777215 แบบ UNSIGNED |
| INT (size) | สามารถจัดเก็บตัวเลขได้ -2147483648 to 2147483647 แบบ normal และ 0 to 4294967295 แบบ UNSIGNED |
| BIGINT (size) | สามารถจัดเก็บตัวเลขได้ -9223372036854775808 to 9223372036854775807 แบบ normal และ 0 to 18446744073709551615 UNSIGNED |
| FLOAT (size,d) | สามารถจัดเก็บตัวเลขและทศนิยมที่มีขนาดไม่ใหญ่มาก จํานวนสูงสุดสามารถกําหนดได้ที่ขนาดของตัวเลข และจํานวนที่กําหนดจะถูกแยกออกมาเป็น จํานวนทศนิยม สามารถกําหนดได้หลังขนาดของตัวเลข |
| DOUBLE (size,d) | สามารถจัดเก็บตัวเลขและทศนิยมที่มีขนาดใหญ่ ซึ่งสามารถกําหนดขนาด ของตัวเลข และขนาดของทศนิยมที่ต้องการได้ |
| DECIMAL (size,d) | สามารถจัดเก็บข้อมูลที่เป็นตัวเลขและทศนิยมได้ สามารถกําหนดขนาด ตัวเลขและขนาดของทศนิยมตามที่ต้องการได้ แต่คุณลักษณะของข้อมูลจะ เป็นตัวอักษร (String) |
7.5.3 ชนิดวันที่/เวลา (Date/Time)
ชนิดวันที่/เวลา (Date/Time) เป็นการเก็บข้อมูลที่เป็นวันที่และเวลา ซึ่งปกติรูปแบบ การจัดเก็บวันที่จะเป็น YYYY-MM-DD ซึ่งหมายถึง ปี-เดือน-วัน ซึ่งปีเก็บอยู่ในรูปแบบปี ค.ศ. จํานวน 4 ตัวอักษรเช่น 2016 ส่วนเดือนจะเก็บในรูปแบบของตัวเลข 2 ตัว เช่น เดือนมกราคมเก็บ 01 เดือน ธันวาคม เก็บ 12 เป็นตัน และวันที่เก็บเป็นตัวเลข 2 ตัวอักษร จาก 01-31 เช่น 2016-12-22 เป็นตัน รูปแบบวันที่ที่จัดเก็บดังตารางที่ 7.3
ตารางที่ 7.3 ชนิดของข้อมูลแบบวันที่/เวลา
| ชนิดของข้อมูล | รายละอียด |
| DATE() | เป็นข้อมูลเฉพาะ วัน/เดือน/ปี ระหว่าง 1000-01-01 ถึง 9999-12-31 |
| DATETIME() | เป็นข้อมูล วัน/เดือน/ปี และ เวลา ระหว่าง 1000-01-01 00:00:00 ถึง 9999- 12-31 23:59:59 |
| TIMESTAMP() | เป็นค่า TIMESTAMP ที่จัดเก็บจํานวนของวินาทีซึ่งเริ่มนับตั้งแต่ 1970-01-01 00:00:00 สามารถจัดเก็บข้อมูลระหว่าง 1970-01-01 00:00:01 UTC ถึง 2038-01-09 03:14:07 UTC |
| TIME() | เป็นข้อมูล เวลา รูปแบบ HH:MI:SS ระหว่าง -838:59:59 ถึง 838:59:59 |
| YEAR() | เป็นข้อมูล ปี ซึ่งสามารถเลือกเก็บ 2 หรือ 4 ตัวอักษร ซึ่งถ้าเป็น 4 ตัวอักษร จะสามารถเก็บข้อมูลได้ระหว่าง 1901 ถึง 2155 และหากเป็น 2 ตัวอักษรจะ เก็บข้อมูลระหว่าง 70 ถึง 69 ซึ่งหมายถึงช่วงปี 1970 ถึง 2069 |