Drupal:为模块更新删除表的正确方法

时间:2011-03-25 20:41:21

标签: drupal

使用hook_update_N删除表的正确方法是什么?我找不到关于此的文档。如果我运行update_sql($ sql);在我的钩子中 - sql是一个drop语句 - 它报告失败,即使检查数据库,我可以看到表被删除。

2 个答案:

答案 0 :(得分:4)

您应该可以使用db_drop_table()(或Drupal 6 version here)。

答案 1 :(得分:2)

您可以在hook_update_N

中执行此操作
/**
 * Drop 'my_table' table.
 */
function MYMODULE_update_7001() {
  if (db_table_exists('my_table')) {
    db_drop_table('my_table');
  }
}