1
respuesta

Error 1452, ninguna de las soluciones funciona. Hay un error en el codigo pero no se cual.

He seguido todas las soluciones propuestas a este error, pero ninguna me ha funcionado. Conste que he seguido las instrucciones al pie de la letra y aun asi, me sigue saliendo el error y no puedo ingresar datos en la tabla items_facturas1.

`CREATE TABLE tb_items_facturas1 ( NUMERO varchar(5) NOT NULL, CODIGO varchar(10) NOT NULL, CANTIDAD int DEFAULT NULL, PRECIO float DEFAULT NULL, PRIMARY KEY (NUMERO,CODIGO), KEY FK_PRODUCTO1 (CODIGO), CONSTRAINT FK_FACTURA1 FOREIGN KEY (NUMERO) REFERENCES tb_factura1 (NUMERO), CONSTRAINT FK_PRODUCTO1 FOREIGN KEY (CODIGO) REFERENCES tb_producto (CODIGO) );

select * from tb_factura1; select * from tb_items_facturas1;

insert into tb_factura1 values('100', '2024-01-12', '1471156710', '235', 0.10);

insert into tb_items_facturas1 values ( '100', '1002767', 100, 25), ('100', '1004327', 200, 12), ('100', '1013793', 23, 43);

INSERT INTO tb_factura VALUES('0100', '2021-01-01', '1471156710', '235', 0.10 );

INSERT INTO tb_items_facturas1 VALUES('0100', '1002767', 100, 25), ('0100', '1004327', 200, 25), ('0100', '1013793', 300, 25);

ALTER TABLE tb_items_facturas1 DROP FOREIGN KEY FK_FACTURA1;

ALTER TABLE tb_items_facturas1 ADD CONSTRAINT FK_FACTURA1 FOREIGN KEY (NUMERO) REFERENCES TB_factura1(NUMERO);`

1 respuesta

¡Hola!

Una posible solución para este error es asegurarte de que los valores que estás intentando insertar en la tabla tb_items_facturas1 ya existan en las tablas referenciadas por las claves foráneas.

Por ejemplo, si estás intentando insertar un valor en la columna NUMERO de tb_items_facturas1, asegúrate de que ese valor ya exista en la columna NUMERO de tb_factura1. Lo mismo aplica para la columna CODIGO y la tabla tb_producto.

Además, verifica que las columnas referenciadas en las claves foráneas tengan el mismo tipo de dato que las columnas a las que hacen referencia.

Si ya has verificado estos aspectos y el error persiste, sería útil que compartieras el mensaje de error completo que recibes para poder entender mejor el problema y brindarte una solución más precisa.

Si este post te ayudó, por favor, marca como solucionado ✓.