PHP MySQL Вставити дані
Вставити дані в MySQL за допомогою MySQLi та PDO
Після створення бази даних і таблиці ми можемо почати додавати в них дані.
Ось деякі правила синтаксису, яких слід дотримуватися:
- SQL-запит має бути взято в лапки PHP
- Рядкові значення в запиті SQL мають бути взяті в лапки
- Числові значення не можна брати в лапки
- Слово NULL не можна брати в лапки
Інструкція INSERT INTO використовується для додавання нових записів до таблиці MySQL:
INSERT INTO table_name (column1, column2, column3,...)
VALUES (value1, value2, value3,...)
Щоб дізнатися більше про SQL, відвідайте Підручник SQL на нашому сайті W3Schools українською.
У попередньому розділі ми створили порожню таблицю під назвою "MyGuests" з п’ятьма стовпцями: "id", "firstname", "lastname", "email" та "reg_date". Тепер давайте заповнимо таблицю даними.
Примітка: якщо стовпець AUTO_INCREMENT (наприклад, стовпець "id") або TIMESTAMP із оновленням за замовчуванням current_timesamp (як стовпець "reg_date"), його не потрібно вказувати в запиті SQL; MySQL автоматично додасть значення.
Наведені нижче приклади додають новий запис до таблиці "MyGuests":
Приклад (MySQLi Об'єктно-орієнтований)
<?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();
?>
Приклад (MySQLi Procedural)
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// Створити підключення
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Перевірити підключення
if (!$conn) {
die("Підключення не вдалося: " . 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);
?>
Приклад (PDO)
<?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;
?>