Utilizo ADO.
Tanto en la inserción como en las actualizaciones utilizo parámetros en tiempo de ejecución.
en el string para el query indico lo siguiente (una vez escrito insert/update, según interese más la lista de columnas y parámetros.
qrempresas.parameters.parambyname('1').value := edit1.text;
este parámetro cuando el edit1 contiene datos no da problemas, ahora cuando el edit1 no contiene datos da problemas.
además compruebo si el edit1 contiene información e indico nulo y me sigue dando el error (igual asigno malamente el valor Null).
if trim(edit1.text) = '' then
qrempresas.parameters.parambyname('1').value := ''; (esto falla)
if trim(edit1.text) = '' then
qrempresas.parameters.parambyname('1').value := Null; (esto falla)
como sería la solución al problema, ya que cuando el dbedit no contenga datos la aplicación debe detectarlo y colocar el valor oportuno (nulo).
Esperando una pronta respuesta, reciban un cordial saludo...