sql >> Base de Datos >  >> RDS >> Mysql

Averigüe qué fila falla al agregar una restricción en MySQL

Primero verifique si existe una tabla de categorías donde está tratando de importar estos datos.

si la tabla de categorías existe, debe verificar que todos los ID_categorías en esta tabla deben existir en la tabla de categorías como id.

La mejor opción es importar la primera tabla de categorías y luego esta tabla.

En genérico, primero todos los datos de las tablas principales deben importarse y luego las tablas secundarias.

Una forma sucia es como se indica a continuación, que no se recomienda-

set foreign_key_checks=0;
import data here;
set foreign_key_checks=1;

Solo para saber qué fila está creando problemas-

La siguiente consulta le proporcionará filas problemáticas.

SELECT a.category_id FROM Category_Term a 
  LEFT JOIN Category b ON a.category_id=b.id 
  WHERE b.id IS NULL;

Nota:Asumiendo que se indexará category_id en category_term y id en las tablas de categorías.