从内容类型和数据库中删除字段

时间:2013-10-14 17:39:38

标签: php drupal drupal-7 content-type

当您从Drupal 7中删除内容类型的字段时,它是否也会从数据库中删除它? 例如,我有一个包含20个字段和大约250000个节点的内容类型。如果我删除一个字段,它是否也会删除250000字段值?感谢。

2 个答案:

答案 0 :(得分:0)

是 - 将删除该字段中的所有数据,因为将删除包含数据的数据库中的表。

答案 1 :(得分:0)

当您从Drupal 7中的内容类型中删除字段(可能还有Drupal 8,但我还不确定)时,它会远离您的内容类型而无法再访问数据。但是,如果您有超过少量的节点具有该字段的值,实际内容可能会在名为field_deleted_data_<NUMBER>的表中保留一段时间,其中<NUMBER>是id您在field_config表中的字段。

实际上,数据通过hook_cron实际上从小数据库中以小批量清除。每次运行cron时删除的数据量在field_purge_batch_size变量中定义,默认值为10(在field.module中)。当表中没有剩余数据时,剩余的字段配置数据也会被删除。

您可以查看field_delete_fieldfield_purge_batch的Drupal API文档以获取更多参考。