Bài này sẽ hướng dẫn bạn insert dữ liệu vào MySQL trong PHP bằng cách sử dụng MySQLi và PDO.
Sau khi một cơ sở dữ liệu và một bảng đã được tạo, chúng ta có thể bắt đầu thêm dữ liệu vào chúng.
Dưới đây là một số quy tắc cú pháp cần tuân theo:
- Câu truy vấn SQL phải được đặt trong nháy kép.
- Các giá trị chuỗi bên trong truy vấn SQL phải được đặt trong nháy đơn.
- Giá trị số không được trích dẫn.
- Từ NULL không được trích dẫn.
Câu lệnh INSERT INTO được sử dụng để thêm các bản ghi mới vào một bảng MySQL:
INSERT INTO table_name (column1, column2, column3,...) VALUES (value1, value2, value3,...)
Trong chương trước, chúng tôi đã tạo một bảng trống có tên "MyGuests" với năm cột: "id", "firstname", "lastname", "email" và "reg_date". Bây giờ, chúng ta sẽ thực hiện câu lệnh insert data vào bảng "MyGuests":
Ví dụ (MySQLi hướng đối tượng)
<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; // tạo connection $conn = new mysqli($servername, $username, $password, $dbname); // kiểm tra connection if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } $sql = "INSERT INTO MyGuests (firstname, lastname, email) VALUES ('David', 'Vinh', 'vinhdavid@example.com')"; if ($conn->query($sql) === TRUE) { echo "New record created successfully"; } else { echo "Error: " . $sql . "<br>" . $conn->error; } $conn->close(); ?>
Ví dụ (MySQLi hướng thủ tục)
<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; // tạo connection $conn = mysqli_connect($servername, $username, $password, $dbname); // kiểm tra connection if (!$conn) { die("Connection failed: " . mysqli_connect_error()); } $sql = "INSERT INTO MyGuests (firstname, lastname, email) VALUES ('David', 'Vinh', 'vinhdavid@example.com')"; if (mysqli_query($conn, $sql)) { echo "New record created successfully"; } else { echo "Error: " . $sql . "<br>" . mysqli_error($conn); } mysqli_close($conn); ?>
Ví dụ (PDO)
<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDBPDO"; try { $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); // cài đặt chế độ PDO error thành ngoại lệ $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $sql = "INSERT INTO MyGuests (firstname, lastname, email) VALUES ('David', 'Vinh', 'vinhdavid@example.com')"; // sử dụng exec() vì không có kết quả trả về $conn->exec($sql); echo "New record created successfully"; } catch(PDOException $e) { echo $sql . "<br>" . $e->getMessage(); } $conn = null; ?>