Masukkan data ke dalam MySQL menggunakan MySQLi dan PDO
Selepas mencipta pangkalan data dan jadual, kita boleh menambah data pada jadual.
Berikut ialah beberapa peraturan tatabahasa:
1 Pernyataan pertanyaan SQL dalam PHP mesti menggunakan tanda petikan
2 Nilai rentetan dalam pernyataan pertanyaan SQL mesti dipetik
3. Nilai angka tidak memerlukan tanda petikan
4. ke jadual MySQL:
INSERT INTO table_name (column1, column2, column3,...)VALUES (value1, value2, value3,...)Anda juga boleh menambah rekod baharu pada jadual MySQL dalam kelompok:
MASUKKAN KE DALAM nama_jadual (lajur1, lajur2,...)NILAI (nilai1, nilai2,...),(nilai1, nilai2,. ..),(value1, value2,...) ;Untuk mengetahui lebih lanjut tentang SQL, lihat tutorial SQL kami.
Dalam bab sebelumnya, kami telah mencipta jadual "MyGuests", medan jadual ialah: "id", "firstname", "lastname", "email" dan "reg_date". Sekarang, mari kita mula mengisi jadual dengan data.
Nota: Jika lajur ditetapkan kepada AUTO_INCREMENT (seperti lajur "id") atau TIMESTAMP (seperti lajur "reg_date"), kita tidak perlu nyatakan nilai dalam pernyataan pertanyaan SQL ; MySQL secara automatik akan menambah nilai pada lajur.
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检测连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('John', 'Doe', 'john@example.com')";
if ($conn->query($sql) === TRUE) {
echo "新记录插入成功";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
?>
Instance (MySQLi - Berorientasikan Prosedur)
<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; // 创建连接 $conn = mysqli_connect($servername, $username, $password, $dbname); // 检测连接 if (!$conn) { die("Connection failed: " . mysqli_connect_error()); } $sql = "INSERT INTO MyGuests (firstname, lastname, email) VALUES ('John', 'Doe', 'john@example.com')"; if (mysqli_query($conn, $sql)) { echo "新记录插入成功"; } else { echo "Error: " . $sql . "<br>" . mysqli_error($conn); } mysqli_close($conn); ?>
<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDBPDO"; try { $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); // 设置 PDO 错误模式,用于抛出异常 $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $sql = "INSERT INTO MyGuests (firstname, lastname, email) VALUES ('John', 'Doe', 'john@example.com')"; // 使用 exec() ,没有结果返回 $conn->exec($sql); echo "新记录插入成功"; } catch(PDOException $e) { echo $sql . "<br>" . $e->getMessage(); } $conn = null; ?>