Gracias por tu colaboración, me sirve de mucho todo lo que has puesto pero me referia a la pregunta inicial, los inserts, ya que el formulario más que para otra cosa está para insertar nuevos modelos y marcas , algunos formularios se rellenaran totalmente con nueva información que no contiene la base de datos de marcas y modelos, otros solo con algunas... por lo tanto siempre debo mirar primero si existen y sino, insertarlos ...
Entiendo que no me queda otra que hacer 40 selects y XX inserts (dependiendo de las cosas que existen o no)
Edito:
Parece que te he entendido mal y no he sido capaz de explicarte que no solo hay 1 maquina, sino tantas como formularios se hagan, cada vez que un usuario envia el formulario crea una maquina nueva compuesta de 20 piezas, por lo tanto este resultado:
debería ser asi: