Для многих небольших приложений мне нужна какая-то форма хранения и запросов, но я устал от необходимости создавать базу данных и настраивать структуры таблиц, как я обычно это делаю с MySQL. Я бы предпочел PHP-фреймворк / класс, который просто записывал бы db-подобный формат через дисковый ввод-вывод, без пользователя / прохода для доступа к базе данных или конфигураций базы данных / таблиц.

Производительность не является проблемой, поскольку эти приложения вряд ли будут использоваться. Однако целостность данных приветствуется.

Есть ли что-нибудь подобное?

0
KrekkieD 20 Авг 2014 в 19:08
Что ты пытаешься сделать? я не понял
 – 
meda
20 Авг 2014 в 19:11
Ищете способ сохранить / загрузить материал, который обычно попадает в базу данных, но без проблем с настройкой базы данных, т.е. хранением и загрузкой пользователей (идентификатор / имя / адрес электронной почты).
 – 
KrekkieD
20 Авг 2014 в 19:12
 – 
CD001
20 Авг 2014 в 19:15

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-сервера в отдельном отдельном файле.

1
deceze 20 Авг 2014 в 19:19
1
Поигрался пару часов, это довольно круто и поддерживается должным образом. Больше никакого phpmyadmin :)
 – 
KrekkieD
20 Авг 2014 в 23:05