Ver Mensaje Individual
  #1  
Antiguo 14-03-2012
agustinbus agustinbus is offline
Miembro
 
Registrado: ago 2007
Posts: 44
Reputación: 0
agustinbus Va por buen camino
Sugerencias para realizar una actualizacion de un registro en Firebird

Hola como estan! Queria pedirles opiniones al momento de realizar una actualizacion en firebird que es mas correcto.

Bueno el tema es que en MySql y firebird si utilizamos el siguiente codigo:
Código Delphi [-]
Query.Open;
Query.Edit;
QueryNOMBRE.Value := 'Valor';
QUery.Post;
y tenemos por ejemplo los siguiente valores en una tabla:

Nombre Apellido
Juan Rodriguez
Matiaz Fernandez
... ...
Maria Gimenez


Cuando ponemos en modo de edicion el Query e insertamos en un campo el MISMO valor que tenia antes nos arroja un error, es decir quiero modificar Juan Rodriguez y le vuelvo a poner de nombre y apellido Juan Rodriguez y automaticamente Firebird chilla.

Para ello yo lo soluciono de dos maneras pero no se cual es la adecuada.

La primera (mucho codigo) asigno en variables los valores que tenia y pregunto si cambio algun valor, en el caso de que cambio realizo el Query.Edit

La segunda (menos codigo) Utilizo try except de la siguiente forma:
Código Delphi [-]
Query.Open;
try
begin
Query.Edit;
QueryNOMBRE.Value := 'Valor';
QUery.Post;
end
except
Query.Cancel;
end;

Actualmente utilizo la primera forma, pero cuando una tabla tiene muchos campos mi codigo crece el doble al realizar las verificaciones para saber si se modifico un dato o no.
Bueno simplemente queria saber que forma es mas adecuada, o si es mejor utilizar alguna otra. Desde ya muchas gracias a todos!

Última edición por Casimiro Notevi fecha: 14-03-2012 a las 00:29:21.
Responder Con Cita