PHP สร้างฐานข้อมูล MySQL
- หน้าก่อนหน้า MySQL Connect
- หน้าต่อไป MySQL Insert
ฐานข้อมูลมีหนึ่งหรือหลายตาราง。
สร้างฐานข้อมูล
คำสั่ง CREATE DATABASE ใช้เพื่อสร้างฐานข้อมูลใน MySQL。
การใช้งาน
CREATE DATABASE database_name
เพื่อให้ PHP ปฏิบัติคำสั่งด้านบน เราต้องใช้ฟังก์ชัน mysql_query() ซึ่งใช้เพื่อส่งคำถามหรือคำสั่งไปยังการเชื่อมต่อ MySQL。
ตัวอย่าง
ในตัวอย่างด้านล่างนี้ เราสร้างฐานข้อมูลชื่อว่า "my_db":
<?php $con = mysql_connect("localhost","peter","abc123"); if (!$con) { die('ไม่สามารถเชื่อมต่อ: ' . mysql_error()); } if (mysql_query("CREATE DATABASE my_db",$con)) { echo "Database created"; } else { echo "Error creating database: " . mysql_error(); } mysql_close($con); ?>
สร้างตาราง
CREATE TABLE ใช้เพื่อสร้างตารางฐานข้อมูลใน MySQL。
การใช้งาน
CREATE TABLE table_name ( column_name1 data_type, column_name2 data_type, column_name3 data_type, ....... )
เพื่อปฏิบัติคำสั่งนี้ ฉันต้องเพิ่มคำสั่ง CREATE TABLE ในฟังก์ชัน mysql_query()
ตัวอย่าง
ตัวอย่างด้านล่างนี้แสดงวิธีการสร้างตารางที่มีชื่อว่า "Persons" ซึ่งมีคอลัมน์สามคอลัมน์. ชื่อคอลัมน์คือ "FirstName", "LastName" และ "Age":
<?php $con = mysql_connect("localhost","peter","abc123"); if (!$con) { die('ไม่สามารถเชื่อมต่อ: ' . mysql_error()); } // สร้างฐานข้อมูล if (mysql_query("CREATE DATABASE my_db",$con)) { echo "Database created"; } else { echo "Error creating database: " . mysql_error(); } // สร้างตารางในฐานข้อมูล my_db mysql_select_db("my_db", $con); $sql = "CREATE TABLE Persons ( FirstName varchar(15), LastName varchar(15), Age int )"; mysql_query($sql,$con); mysql_close($con); ?>
ความสำคัญ:ก่อนที่จะสร้างตาราง คุณจำเป็นต้องเลือกฐานข้อมูลก่อน โดยใช้ฟังก์ชัน mysql_select_db()
หมายเหตุ:เมื่อคุณสร้างฟิลด์ประเภท varchar ในฐานข้อมูล คุณจำเป็นต้องกำหนดความยาวสูงสุดของฟิลด์ ตัวอย่าง: varchar(15)
ประเภทข้อมูล MySQL
ประเภทข้อมูล MySQL ที่สามารถใช้งานได้:
ประเภทข้อมูลตัวเลข | คำอธิบาย |
---|---|
|
สนับสนุนตัวเลขเต็มเท่านั้น สูงสุด 4294967295 |
|
สนับสนุนตัวเลขที่มีเลขภาพ กำหนดค่าสูงสุดของตัวเลขในตัวแปร size และกำหนดค่าสูงสุดของตัวเลขที่อยู่ด้านขวาของจุดของตัวแปร d |
ประเภทข้อมูลข้อความ | คำอธิบาย |
---|---|
char(size) |
สนับสนุนข้อความยาวที่แก้ไขได้ (สามารถประกอบด้วยตัวอักษร ตัวเลข และสัญลักษณ์พิเศษได้) กำหนดความยาวสูงสุดเป็นค่าแน่นอนในตัวแปร size |
varchar(size) |
สนับสนุนข้อความยาวที่แก้ไขได้ (สามารถประกอบด้วยตัวอักษร ตัวเลข และสัญลักษณ์พิเศษได้) กำหนดความยาวสูงสุดในตัวแปร size |
tinytext | สนับสนุนข้อความยาวที่แก้ไขได้ สูงสุด 255 ตัวอักษร。 |
|
สนับสนุนข้อความยาวที่แก้ไขได้ สูงสุด 65535 ตัวอักษร。 |
|
สนับสนุนข้อความยาวที่แก้ไขได้ สูงสุด 16777215 ตัวอักษร。 |
|
สนับสนุนข้อความยาวที่แก้ไขได้ สูงสุด 4294967295 ตัวอักษร。 |
ประเภทข้อมูลวันที่ | คำอธิบาย |
---|---|
|
สนับสนุนวันที่หรือเวลา |
ประเภทข้อมูลที่เป็นส่วนเกิน | คำอธิบาย |
---|---|
enum(value1,value2,ect) | ENUM คือย่อของ ENUMERATED ลิสต์ สามารถจัดไว้เป็นค่าถึง 65535 รายการในวงเล็บ |
set | SET คล้าย ENUM แต่ SET สามารถมีข้อมูลถึง 64 รายการในรายการและสามารถจัดไว้เป็นกลุ่มหลายกลุ่ม |
คอลัมน์หลักและคอลัมน์ที่เพิ่มเติมเพื่อเพิ่มเข้ามา
แต่ละตารางควรมีคอลัมน์หลัก
คอลัมน์หลักใช้เพื่อระบุบันทึกในตารางโดยเด็ดขาด ค่าหลักในแต่ละบันทึกควรเป็นเด็ดขาดในตาราง นอกจากนี้ คอลัมน์หลักไม่ควรมีช่องว่าง เนื่องจากเครื่องกลไกของฐานข้อมูลจำเป็นต้องมีค่าเพื่อจะสามารถติดตามบันทึก
คอลัมน์หลักต้องถูกเข้าใส่ในตารางดัชนีตลอดทั้งหมด ไม่มีความปราศจากข้อกฎนี้ คุณจำเป็นต้องทำคอลัมน์หลักเข้าใส่ในตารางดัชนี เพื่อให้เครื่องกลไกของฐานข้อมูลจะสามารถติดตามบรรดาบันทึกที่มีค่าหลักในรวมทั้งหมด
ตัวอย่างด้านล่างนี้จัดตั้งคอลัมน์ personID ให้เป็นหลักในตาราง。คอลัมน์หลักมักเป็นเลขที่แสดงตัว (ID) และมักใช้ AUTO_INCREMENT ตั้งค่า。AUTO_INCREMENT จะเพิ่มค่าของคอลัมน์เดียวละครั้งเมื่อบันทึกใหม่ถูกเพิ่มเข้ามา。เพื่อที่จะให้คอลัมน์หลักไม่มีช่องว่าง เราต้องเพิ่มการตั้งค่า NOT NULL ให้กับคอลัมน์นี้。
ตัวอย่าง
$sql = "CREATE TABLE Persons ( personID int NOT NULL AUTO_INCREMENT, PRIMARY KEY(personID), FirstName varchar(15), LastName varchar(15), Age int )"; mysql_query($sql,$con);
- หน้าก่อนหน้า MySQL Connect
- หน้าต่อไป MySQL Insert