我正在使用RedBean ORM。爲了創建模式,我使用標準的插入數據的redbean方法,以便Redbean自動適應模式以滿足我的需求。我把它放在一個腳本中,當我需要初始化我的數據庫時,它將基本上用於構建模式。RedBean:如何刪除所有表中的所有行
問題是RedBean在每個表中保留一行或兩行(我最初插入以獲取redbean來構建模式的行)。
如果它是一個普通的數據庫,爲了刪除所有的行,我會放棄模式並重建它,但是在這種情況下這是不可能的,因爲最初的行仍然存在。
不幸的是,這裏沒有太多的Redbean Q/A。任何人都知道我會如何使用Redbean界面來做到這一點?
我已經試過
$listOfTables = R::$writer->getTables();
foreach($listOfTables as $table)
{
R::wipe($table);
}
當然,這並不工作,雖然。 (它不會截斷表中的正確的順序,所以我得到有關使用該密鑰作爲外地鏈路另一表的錯誤,它只是在ABC順序迭代)
Fatal error: Uncaught [42000] - SQLSTATE[42000]: Syntax error or access violation: 1701 Cannot truncate a table referenced in a foreign key constraint (`redbeandb`.`research`, CONSTRAINT `research_ibfk_1` FOREIGN KEY (`ownEducationHistory_id`) REFERENCES `redbeandb`.`educationhistory` (`id`)) thrown in C:\Users\Rod\nginx-1.0.12\html\rb.php on line 105
如果某人有一個(紅豆API)解決方案,它將不勝感激。希望這個問題可以有益於在Stackoverflow上構建更多的RedBean Q/A。
總是存在'R :: nuke()',但我認爲這也會破壞你的所有表。我不知道你是否可以擦除,除非你刪除外鍵,我不知道你是否可以簡單地做到這一點。 – 2012-02-25 15:30:15