Cita:
y el problema que tengo y no se como es y espero que me puedan ayudar de favor es que cuando quiero eliminar un registro en la tabla de productos me genera un error relacionado con la foreign key .
Eso no es un error. Es una restricción de integridad referencial: No puedes borrar un producto en tanto existan registros que usan la PK de ese producto como FK.
Un producto no se elimina. Se da de baja en forma lógica usando un campo adicional como fecha de baja. Cuando es NULL, el producto está activo, cuando no es NULL, se desactivó.
De esa forma manejas la existencia del rpoducto sin detruir la integridad referencia del mismo donde se ha usado.
Lo que t está faltando es un poco de experiencia en diseño de estructuras de datos y de sistemas.