PHP MySQL แทรกข้อมูล
ใช้ MySQLi และ PDO MySQL เพื่อแทรกข้อมูล
หลังจากที่สร้างฐานข้อมูลและตารางเราสามารถเพิ่มข้อมูลลงในตาราง
นี่คือบางส่วนกฎไวยากรณ์คือ:
- งบแบบสอบถาม PHP SQL ต้องใช้คำพูด
- ค่าสตริงในงบแบบสอบถาม SQL จะต้องอยู่ในคำพูด
- ค่าไม่จำเป็นต้องมีคำพูด
- ค่า NULL ไม่จำเป็นต้องมีคำพูด
คำสั่ง INSERT INTO มักจะถูกนำมาใช้เพื่อเพิ่มระเบียนใหม่ในตาราง MySQL:
INSERT INTO table_name (COLUMN1, column2, คอลัมน์ 3, ... )
VALUES (value1, value2, value3, ... )
VALUES (value1, value2, value3, ... )
เรียนรู้เพิ่มเติมเกี่ยวกับความรู้ SQL โปรดดู SQL กวดวิชา
ในส่วนก่อนหน้านี้เราได้สร้างตาราง "MyGuests" สนามมี: "id", "FirstName", "นามสกุล", "อีเมล" และ "reg_date" ตอนนี้ขอเริ่มต้นไปที่ตารางมีประชากรที่มีข้อมูล
หมายเหตุ: หากคอลัมน์การตั้งค่า AUTO_INCREMENT (เช่น "id" คอลัมน์) หรือลงเวลา (เช่น "reg_date คอลัมน์") ,, เราไม่จำเป็นต้องระบุค่าในภาษาแบบสอบถาม SQL ที่ MySQL อัตโนมัติจะเพิ่มค่าของคอลัมน์ |
ตัวอย่างต่อไปนี้จะ "MyGuests" ตารางเพิ่มบันทึกใหม่:
ตัวอย่าง (MySQLi - Object Oriented)
<php?
$ Servername = "localhost";
$ username = "ชื่อผู้ใช้";
รหัสผ่าน $ = "รหัสผ่าน";
$ Dbname = "myDB";
// สร้างการเชื่อมต่อ
$ Conn = mysqli ใหม่ ($ ServerName, $ ชื่อผู้ใช้รหัสผ่าน $, $ dbname);
// ทดสอบการเชื่อมต่อ
ถ้า ($ conn-> connect_error) {
ตาย ( "การเชื่อมต่อล้มเหลว:" $ conn-> connect_error.);
}
$ Sql = "INSERT INTO MyGuests (ชื่อ, นามสกุล, อีเมล์)
VALUES ( 'จอห์น' 'กวาง' '[email protected]') ";
ถ้า ($ conn-> แบบสอบถาม ($ SQL) === จริง) {
echo "บันทึกใหม่จะถูกแทรกประสบความสำเร็จ";
} else {
. ก้อง "ข้อผิดพลาด:" $ SQL "<br>" $ conn-> ข้อผิดพลาด; ..
}
$ Conn-> close ();
?>
$ Servername = "localhost";
$ username = "ชื่อผู้ใช้";
รหัสผ่าน $ = "รหัสผ่าน";
$ Dbname = "myDB";
// สร้างการเชื่อมต่อ
$ Conn = mysqli ใหม่ ($ ServerName, $ ชื่อผู้ใช้รหัสผ่าน $, $ dbname);
// ทดสอบการเชื่อมต่อ
ถ้า ($ conn-> connect_error) {
ตาย ( "การเชื่อมต่อล้มเหลว:" $ conn-> connect_error.);
}
$ Sql = "INSERT INTO MyGuests (ชื่อ, นามสกุล, อีเมล์)
VALUES ( 'จอห์น' 'กวาง' '[email protected]') ";
ถ้า ($ conn-> แบบสอบถาม ($ SQL) === จริง) {
echo "บันทึกใหม่จะถูกแทรกประสบความสำเร็จ";
} else {
. ก้อง "ข้อผิดพลาด:" $ SQL "<br>" $ conn-> ข้อผิดพลาด; ..
}
$ Conn-> close ();
?>
ตัวอย่าง (MySQLi - ที่มุ่งเน้นกระบวนการ)
<php?
$ Servername = "localhost";
$ username = "ชื่อผู้ใช้";
รหัสผ่าน $ = "รหัสผ่าน";
$ Dbname = "myDB";
// สร้างการเชื่อมต่อ
$ Conn = mysqli_connect ($ ServerName, $ ชื่อผู้ใช้รหัสผ่าน $, $ dbname);
// ทดสอบการเชื่อมต่อ
ถ้า (! $ Conn) {
ตาย ( "การเชื่อมต่อล้มเหลว:" mysqli_connect_error ().);
}
$ Sql = "INSERT INTO MyGuests (ชื่อ, นามสกุล, อีเมล์)
VALUES ( 'จอห์น' 'กวาง' '[email protected]') ";
ถ้า (mysqli_query ($ Conn, $ SQL)) {
echo "บันทึกใหม่จะถูกแทรกประสบความสำเร็จ";
} else {
. ก้อง "ข้อผิดพลาด:" $ SQL "<br>" mysqli_error ($ Conn); ..
}
mysqli_close ($ Conn);
?>
$ Servername = "localhost";
$ username = "ชื่อผู้ใช้";
รหัสผ่าน $ = "รหัสผ่าน";
$ Dbname = "myDB";
// สร้างการเชื่อมต่อ
$ Conn = mysqli_connect ($ ServerName, $ ชื่อผู้ใช้รหัสผ่าน $, $ dbname);
// ทดสอบการเชื่อมต่อ
ถ้า (! $ Conn) {
ตาย ( "การเชื่อมต่อล้มเหลว:" mysqli_connect_error ().);
}
$ Sql = "INSERT INTO MyGuests (ชื่อ, นามสกุล, อีเมล์)
VALUES ( 'จอห์น' 'กวาง' '[email protected]') ";
ถ้า (mysqli_query ($ Conn, $ SQL)) {
echo "บันทึกใหม่จะถูกแทรกประสบความสำเร็จ";
} else {
. ก้อง "ข้อผิดพลาด:" $ SQL "<br>" mysqli_error ($ Conn); ..
}
mysqli_close ($ Conn);
?>
ตัวอย่างของ (PDO)
<php?
$ Servername = "localhost";
$ username = "ชื่อผู้ใช้";
รหัสผ่าน $ = "รหัสผ่าน";
$ Dbname = "myDBPDO";
try {
$ Conn = ใหม่ PDO ( "MySQL: host = $ servername; dbname = $ dbname", $ ชื่อผู้ใช้รหัสผ่าน $);
// การตั้งค่าโหมด PDO ข้อผิดพลาดสำหรับข้อยกเว้น
$ Conn-> setAttribute (PDO :: ATTR_ERRMODE, PDO :: ERRMODE_EXCEPTION);
$ Sql = "INSERT INTO MyGuests (ชื่อ, นามสกุล, อีเมล์)
VALUES ( 'จอห์น' 'กวาง' '[email protected]') ";
// ใช้ exec () ไม่มีผลจะถูกส่งกลับ
$ Conn-> exec ($ SQL);
echo "บันทึกใหม่จะถูกแทรกประสบความสำเร็จ";
}
catch (PDOException $ E)
{
.. echo $ SQL "<br>" $ E-> getMessage ();
}
$ Conn = null;
?>
$ Servername = "localhost";
$ username = "ชื่อผู้ใช้";
รหัสผ่าน $ = "รหัสผ่าน";
$ Dbname = "myDBPDO";
try {
$ Conn = ใหม่ PDO ( "MySQL: host = $ servername; dbname = $ dbname", $ ชื่อผู้ใช้รหัสผ่าน $);
// การตั้งค่าโหมด PDO ข้อผิดพลาดสำหรับข้อยกเว้น
$ Conn-> setAttribute (PDO :: ATTR_ERRMODE, PDO :: ERRMODE_EXCEPTION);
$ Sql = "INSERT INTO MyGuests (ชื่อ, นามสกุล, อีเมล์)
VALUES ( 'จอห์น' 'กวาง' '[email protected]') ";
// ใช้ exec () ไม่มีผลจะถูกส่งกลับ
$ Conn-> exec ($ SQL);
echo "บันทึกใหม่จะถูกแทรกประสบความสำเร็จ";
}
catch (PDOException $ E)
{
.. echo $ SQL "<br>" $ E-> getMessage ();
}
$ Conn = null;
?>