PDO и SQLite3 в PHP
Как пользоваться SQLite3 в PHP.
В своей работе использую самые разные инструменты, библиотеки, которые помогают мне добиться нужного функционала. Сегодня немного опишу принципы работы с SQLite3 и PDO на языке программирования PHP.
SQLite является реляционной базой данных, запросы к которой можно осуществлять при помощи языка запросов SQL. На сегодняшний день последняя версия - 3.35.3 (26 марта 2021). Движку SQLite не нужен отдельный сервер, ведь он использует в своей работе обычные файлы. А в качестве протокола обмена используются вызовы функций (API) библиотеки SQLite. Начиная с версии PHP5 поддержка SQLite установлена и включена по умолчанию.
PDO (PHP Data Objects) - это расширение PHP, которое реализует взаимодействие с базами данных при помощи объектов. PDO не использует абстрактные слои для подключения к БД, наподобие ODBC, а использует для разных БД их «родные» драйверы, что позволяет добиться высокой производительности. Использует встроенный механизм защиты от sql-инъекций - Prepared statement (заранее скомпилированное SQL-выражение, которое может быть многократно выполнено путём отправки серверу лишь различных наборов данных).
Приведу несколько примеров на практике:
Подключение к базе данных
$db = new PDO('sqlite:base.db');
Создание таблицы
$sql = "CREATE TABLE `content` (
`id` INTEGER PRIMARY KEY,
`title` TEXT,
`textfield` TEXT
)";
$db->query($sql);
Вставка и обновление данных в таблице
$db->exec("INSERT INTO `content` (`title`,`textfield`) VALUES ('Проверка','Текстовое поле')");
Выборка данных
$result = $db->query("SELECT * FROM `content`");
foreach($result as $row) {
echo "".$row['title']." | ".$row['textfield'];
}
Конечно существуют программы для администрирования баз данных SQLite, по примеру как у MySQL - phpMyAdmin.
Например DB Browser for SQLite - [url=https://sqlitebrowser.org/]Официальный сайт[/url]
Официальный сайт и документация по SQLite - [url=https://www.sqlite.org/index.html]https://www.sqlite.org[/url]
Объекты данных PHP - [url=https://www.php.net/manual/ru/book.pdo.php]https://www.php.net/[/url]