Для многих небольших приложений мне нужна какая-то форма хранения и запросов, но я устал от необходимости создавать базу данных и настраивать структуры таблиц, как я обычно это делаю с MySQL. Я бы предпочел PHP-фреймворк / класс, который просто записывал бы db-подобный формат через дисковый ввод-вывод, без пользователя / прохода для доступа к базе данных или конфигураций базы данных / таблиц.
Производительность не является проблемой, поскольку эти приложения вряд ли будут использоваться. Однако целостность данных приветствуется.
Есть ли что-нибудь подобное?
1 ответ
SQLite может быть хорошей золотой серединой. Вам все равно нужно будет настроить таблицы, но все это можно сохранить в очень тривиальном автономном коде, используя SQLite PRAGMA user_version
:
$pdo = new PDO('sqlite:/path/to/my/database.sq3');
$version = $pdo->query('PRAGMA user_version')->fetchColumn();
switch ($version) {
case 0:
$pdo->execute('CREATE ...');
...
$pdo->execute('PRAGMA user_version = 1');
...
}
По сути, это автономная система миграции, которую вы можете легко запускать каждый раз при подключении к базе данных, которая гарантирует, что схема базы данных настроена по мере необходимости, что в любом случае является минимумом хлопот, с которым вы должны согласиться. Он по-прежнему предоставляет вам большинство функций полноценного SQL-сервера в отдельном отдельном файле.
Похожие вопросы
Новые вопросы
php
PHP — это открытый, мультипарадигмальный, динамически типизированный и интерпретируемый язык сценариев, изначально разработанный для веб-разработки на стороне сервера. Используйте этот тег для вопросов о программировании на языке PHP.