Me da un error al dejar en blanco un campo en interbase
Hola todos,
disculpen una pregunta acerca de las inserciones en interbase 6.0, no lo habia notado, tengo un campo llamado Tel_cel, es decir que anteriorme se tomaba el mismo telefono de casa para capturalo en Tel_cel (telefono celular).
Mi consulta es la siguiente select Id_user, nom, tel, tel_cel) from usuarios (Por decir estos campos...) pero ahora hay algunas personas que si tienen telefono celular y otras no, en mi tabla de usuarios los campo tel, y tel_cel son varchar(18) y son null que puedo dejar en blanco al hacer las inserciones.
Resulta que al agregar un registo nuevo y dejo el campo tel_cel en blanco me da un error que dice que el valor de tel_cel debe ser llenado...
entonces se queda trabada y me saca del programa por lo tanto lo que habia capturado no se graba, tengo los componetes Ibx y para actualizar los datos uso los componentes IbDataset, Ibtransacction, Ibsql ya programada en la propiedad insertsql del ibdataset algo como esto :
Insert Into usuarios (Id_user, nom, tel, tel_cel) value (:Id_user, :nom, :tel, :tel_cel)
En el Ibsql en la propiedad SQL algo como esto: Select max(id ) Next From usuarios
Y por ultimo en el evento Onnewrecord escribo algo asi:
with IBSQL1 do
begin
ExecQuery;
ibdatasetId.Value := fieldByName('Next').AsInteger + 1;
Close;
end;
Y en donde se coloca las lineas de confirmar los cambios CommitRetaining, RollbackRetaining lo que se denomina transsacciones
Les agradeceria si me puedieran darme alguna solucion.
|