Ya lo habia intentado pero me seguia dando el error...
A la final todo se redujo a que el campo es "Datetime" en mysql y en el codigo le estaba dando un formato "Date", en SQL nunca me dio ese problema.
Código Delphi
[-]ADO1.Parameters.ParamByName('horafactu').Value := (FormatDateTime('yyyy/mm/dd',(Mfechahora)));
Código Delphi
[-]ADO1.Parameters.ParamByName('horafactu').Value := (FormatDateTime('yyyy/mm/dd :hh:mm:ss',(Mfechahora)));
De todas formas me ayudo mucho trabajar con parametros, nunca lo habia hecho...
Muchas gracias.