zkrvndm
@zkrvndm
Архитектор решений

Как создать таблицу на RedBeanPHP?

Здравствуйте, изучаю сейчас ORM RedBeanPHP и возникла проблема на самом перовом шаге. Пытаюсь создать таблицу и записать в него тестовые данные:
require 'php/rb-mysql.php';

R::setup( 'mysql:host=localhost;dbname=nadim_shivaloka', 'nadim_shivaloka', '********', true );

if ( !R::testConnection() ) {
    echo 'Нет соединения с БД!';
    exit;
}

else {
    
    echo 'Соединение установлено<br>';

    $user = R::dispense('users');

    $user->email = 'zkrvndm@gmail.com';
    $user->status = 'User';
    $user->time = '111777999';

    R::store($user);
    
}

Как я понимаю, таблица должна была создастся автоматом, чего не происходит. Получаю ошибку:
Соединение установлено
Fatal error: Uncaught [42S02] - SQLSTATE[42S02]: Base table or view not found: 1146 Table 'nadim_shivaloka.users' doesn't exist trace: #0 /home/n/nadim/mahapurana.shivaloka.info/public_html/php/rb-mysql.php(1080): RedBeanPHP\Driver\RPDO->runQuery('INSERT INTO `us...', Array) #1 /home/n/nadim/mahapurana.shivaloka.info/public_html/php/rb-mysql.php(1120): RedBeanPHP\Driver\RPDO->GetAll('INSERT INTO `us...', Array) #2 /home/n/nadim/mahapurana.shivaloka.info/public_html/php/rb-mysql.php(4326): RedBeanPHP\Driver\RPDO->GetOne('INSERT INTO `us...', Array) #3 /home/n/nadim/mahapurana.shivaloka.info/public_html/php/rb-mysql.php(5960): RedBeanPHP\Adapter\DBAdapter->getCell('INSERT INTO `us...', Array, 0) #4 /home/n/nadim/mahapurana.shivaloka.info/public_html/php/rb-mysql.php(6087): RedBeanPHP\QueryWriter\AQueryWriter->insertRecord('users', Array, Array) #5 /home/n/nadim/mahapurana.shivaloka.info/public_html/php/rb-mysql.php(8678): RedBeanPHP\QueryWriter\AQueryWriter->updateRecord('users', Array, 0) #6 /home/n/nadim/mahapurana.shival in /home/n/nadim/mahapurana.shivaloka.info/public_html/php/rb-mysql.php on line 810


Версия PHP на сервере 7.3. Может ли кто-нибудь подсказать возможные причины ошибки?
  • Вопрос задан
  • 444 просмотра
Решения вопроса 1
zkrvndm
@zkrvndm Автор вопроса
Архитектор решений
Проблема решена, надо было просто убрать параметр true после пароля. В интернета пишут, что если добавлять true, то таблицы создаются на лету, но практика показала, что все наоборот - без этого параметра таблицы создаются на лету, а вот с ним уже почему-то нет.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы