我正在使用 RedBean PHP 进行测试,我非常喜欢它,但是我不知道如何截断表格。我可以获取所有 bean 并删除它们,但这似乎很麻烦。
问问题
2175 次
4 回答
6
在 RedBean 1.3 中,您可以使用 R::wipe($type) 截断表。
于 2011-02-21T09:45:28.177 回答
2
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
于 2010-12-03T17:19:30.890 回答
1
像这样擦除单个表:
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>');
这应该做的工作!:)
于 2012-05-23T20:47:31.423 回答
0
老问题,但值得一提的是,RedBean 4.0+(也可能是旧版本)在使用各种 NM 关系映射时会使用外键。
因此,在这种情况下,就我而言,为了解决这个问题,有必要将外键检查设置为 0。
R::exec('SET FOREIGN_KEY_CHECKS = 0;');
R::wipe('tablename');
于 2017-09-07T14:15:51.917 回答