Todos sabemos que Drupal realmente no admite el concepto de claves foráneas en la base de datos, y probablemente nunca lo hará 1 .
También sabemos que es posible que los módulos no hagan lo correcto, o que los usuarios periódicamente hagan locuras como
DELETE FROM node_revision
WHERE vid = 123
en un esfuerzo por "mantener la base de datos ordenada". Cuando esto sucede, los ganchos no se ejecutan y hay datos huérfanos en la base de datos. Principalmente, estos datos son inofensivos, pero ocasionalmente causan un comportamiento realmente extraño y pueden generar errores en el código.
¿Hay algún método decente para detectar si tiene datos muertos o inconsistentes en su base de datos?
1 La API de esquema de Drupal 7 los admite para la documentación , pero no para la aplicación.
Respuestas:
Mientras escribía una descripción para un proyecto de sandbox, me encontré con un proyecto de sandbox para hacer esto:
http://drupal.org/sandbox/anton_krechetov/1345066
Actualmente solo funciona para Drupal 6, y no ha habido ningún compromiso desde noviembre de 2011, pero parece prometedor.
fuente