У меня проблема с базой данных SQLite3, где я могу получить к ней доступ либо с помощью команды sqlite3, либо с помощью встроенного менеджера баз данных PHPStorm, но приложение, над которым я работаю, не находит в нем таблицы. Кажется, он правильно подключается к базе данных.
Эта строка PHP вызывает исключение PDOException:
$query = "SELECT * FROM users";
$results = self::$app->db->query($query);
И исключение просто SQLSTATE[HY000]: General error: 1 no such table: users
, Между прочим, я использую фреймворк Slim.
Я действительно не знаю, что делать, так как я новичок в Slim, а также в SQLite.
Спасибо за помощь 🙂
База данных, которую вы открыли, не содержит эту таблицу.
SQLite с радостью откроет любое имя файла; если он не существует, он создаст новую пустую базу данных.
Проверьте имя файла вашей базы данных.
Благодаря принятому ответу, который указал мне правильное направление.
Я использую Symfony 4.1 и понял, что базовый каталог для Symfony является public
каталог (должен быть app
в 2.8), чтобы открыть мою базу данных, мне пришлось сделать:
# file: PROJECT_ROOT/.env
DATABASE_URL="sqlite:///../my_super.db"
Но тогда каждый призыв к доктрине в команде (как doctrine:schema:update
) должен вызываться в прямой подпапке проекта, например так:
PROJECT_ROOT/bin$ ./console doctrine:schema:update --dump-sql