Ver Mensaje Individual
  #14  
Antiguo 09-07-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Reputación: 25
Caral Va por buen camino
Hola
Cita:
Empezado por mcs Ver Mensaje
Por esto mismo he dicho lo de actualizar UN registro. Si tienes el registro 25 abierto en un form, encuentro más fácil hacer un
Código:
tabla1.edit();
tabla1VALOR1.asString():=editvalor1.text();
tabla1.post();
Aqui tu mismo lo dices: si tienes la tabla abierta, eso quiere decir que ya hiciste un Select * form tabla, aunque sea para hacer un simple edit.
Osea, llamaste a todos los registros de la tabla para insertar, actualizar o lo que sea de un solo campo.
Si la tabla contiene pocos registros esta bien, pero si contiene muchos se hara muy lento.
Intenta hacer una consulta con un table a una tabla con muchos registros via internet, puedes ir a tomarte un cafe mientras te envia el dato.

Cita:
Empezado por mcs Ver Mensaje
, que no un
Código:
query1.sql.clean(); 
query1.sql.add('UDPATE tabla1 SET valor1=:VAL1 WHERE id=:ID');
query1.paramByName('ID').asInteger:=variableId;
query1.paramByName('VAL1').asString():=editValor1.Text();
query1.execute();  // o es un open()? he ejecutado alguna vez un update, pero no recuerdo como...
Aqui por el contrario trabajaste un poco mas en el codigo, pero el programa. la actualizacion o lo que se quiera hacer sera mucho mas eficiente, rapida y efectiva, repito, en tablas con mucho contenido.
Nota: es query1.ExecSQL;

Cita:
Empezado por mcs Ver Mensaje
Logicamente es cuestión de gustos, pero no sé, yo lo encuentro más simple así...
Para mi no es un asunto de gustos, es un asunto de programacion.
Si se hacen las cosas bien, se hacen una vez.
El dia que crezca la tabla el cliente te llamara para decirte que el programa esta muy lento y tendras que recurrir al sql, te guste o no, sea mas facil o no.
Saludos
PD: No pretendo contradecirte, es solo mi opinion.
__________________
Siempre Novato
Responder Con Cita