Я использую RedBean PHP для тестирования, и мне это очень нравится, однако я понятия не имею, как я могу обрезать таблицу. Я могу получить все бобы и удалить их, но это кажется громоздким.
Пустая или усеченная таблица с RedBean PHP?
Ответы (4)
В RedBean 1.3 вы можете использовать R::wipe($type) для усечения таблицы.
RedBean — это просто инструмент ORM (AFAIK), поэтому, если ваша внутренняя база данных основана на SQL, вы можете просто выполнить оператор SQL, например: TRUNCATE TABLE yourTable;
Для выполнения запросов напрямую через RedBean
Адаптер
Адаптер — это класс, который взаимодействует с базой данных для RedBean. Этот адаптер позволяет выполнять запросы для управления базой данных. Чтобы получить экземпляр этого адаптера, используйте:
$adapter = $toolbox->getDatabaseAdapter();
с http://www.redbeanphp.com/downloads/redbean.pdf - 1,3 http://www.redbeanphp.com/manual/manual.pdf — 2.0
$adapter->exec('TRUNCATE TABLE yourtable');
- person Erik; 03.12.2010
Протрите одну таблицу следующим образом:
R::wipe($table);
Сотрите все таблицы в схеме MySQL следующим образом:
function CleanAllTables() {
$tables = R::getCol(' show tables ');
foreach ($tables as $table) {
R::wipe($table);
}
}
MySQL:
TRUNCATE TABLE <table_name>
Выполняется с помощью адаптера RedBean
$adapter->exec('TRUNCATE TABLE <table_name>');
это должно сделать работу! :)
Старый вопрос, но для чего он стоит, RedBean 4.0+ (и, возможно, более старые версии) использует внешние ключи, когда используются различные реляционные сопоставления N-M.
Итак, в моем случае, чтобы обойти это, необходимо было установить проверки внешнего ключа на 0.
R::exec('SET FOREIGN_KEY_CHECKS = 0;');
R::wipe('tablename');