PDO
Добавление, обновление и удаление данных
Для sql-запросов типа INSERT, UPDATE и DELETE, которые не возвращают выбранный результат, а возвращают количество затронутых строк, используется метод exec()
Метод exec()
:
$sql = 'INSERT INTO news (id, title, date, short_content, content, author_name)
VALUES ("6", "Новость 6", "2018-12-30", "Краткое содержание новости 6: ...", "Содержание новости 6: ...", "Автор 6")';
:
Обращаемся к объекту PDO ($pdo) и вызываем на исполнение метод exec().
В качестве параметра передаем sql-запрос, который должен быть выполнен.
Данный метод возвращает количество затронутых строк ($rows)
:
$rows = $pdo -> ($sql);
echo $rows;
Файл index.php
-- файл index.php --
<?php
try{
$pdo = new
('mysql:host=localhost;dbname=test2';charset=utf-8, 'root', '');
$pdo-> ( ::ATTR_ERRMODE, ::ERRMODE_EXCEPTION);
echo "Успешное подключение <br><br>";
} catch{
exit ('Ошибка подключения: <br><br>' . $e -> ());
}
try{
-------------------------------------------------------------------
// Запрос на добавление данных:
$sql = 'INSERT INTO news (id, title, date, short_content, content, author_name)
VALUES ("6", "Новость 6", "2018-12-30", "Краткое содержание новости 6: ...", "Содержание новости 6: ...", "Автор 6")';
$rows = $pdo -> ($sql);
echo $rows;
--------------------------------------------------------------------
} catch{
exit ('Ошибка в запросе: <br><br>' . $e -> ());
}
?>
Выведет:
Успешное подключение
1 - одна запись (строка) была затронута последним sql-запросом
.
Изменим дату в нашем запросе:
$sql = 'UPDATE news SET date = "2019-9-29" WHERE id = "6"';
- после выполнения этого запроса дата в соответствующей строке будет изменена
.
Удалим все данные из талицы news, где id = 6:
$sql = 'DELETE FROM news WHERE id = 6';
- после выполнения этого запроса все данные из соответствующей строки в таблице news будут удалены
Наверх Наверх