![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Cual es la mejor forma de modificar un registro?
Hola, quiero saber cual es la manera correcta y eficiente para modificar un registro.
tengo estos códigos pero no estoy seguro si es la mejor forma. en mi aplicación quiero implementar un código que sea eficiente, la base de datos que uso es firebird. Ó
|
#2
|
||||
|
||||
Ninguna de las dos.
Para modificar datos hay que usar "update", no select.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#3
|
||||
|
||||
No es eficiente... primero, porque intentas manejar un query como si fuese una tabla. Desde hace mucho se ha dicho que el manejo de componentes TTables, en la mayoría de los casos no es recomendado.
Por otro lado, no todos los componentes TQuery te permiten editar sus salidas, debido a que hay resultados complejos que pueden venir de diferentes tablas. Además no es eficiente que hagas una consulta de todos los Productos... para modificar solo uno de ellos. En tu segundo código veo una línea que sobra... y es el Open: cuando invocas el "active", implícitamente estas haciendo un open. Finalmente, Retomando lo que propone Casimiro, deberías hacer algo como:
|
#4
|
||||
|
||||
Hola wilcg.
La forma óptima de realizar una modificación mediante un query es la que te indicaron Casimiro y gatosoft. Pero veo un detalle en el último código, y es que la función ParamByName espera el nombre de parámetro no el de columna, es decir:
Saludos ![]()
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#5
|
||||
|
||||
Yo no usaria FormatDateTime para mandar un parametro de tipo fecha, eso es trabajo de los componentes ADO y el motor SQL
Es decir:
Debe funcionar bien ya sea para un ADOQuery, para un IBQuery, para un FDQuery, etc. La idea de los parametros ademas de su seguridad es la flexibilidad que otorgan al abstraerse del tipo de datos y el "como los quiere" el motor bd |
#6
|
|||
|
|||
Gracias a todos por su ayuda, pero hay algo que no me queda claro.
Como determino el registro que boy a modificar? , teniendo en cuenta que quiero modificar en la consulta un solo registro de muchos. Es por eso que en la consulta le indico que registro quiero modificar por medio de: codProducto que es una variable que contendrá el ID del registro a modificar. Última edición por wilcg fecha: 03-08-2015 a las 04:35:37. |
#7
|
||||
|
||||
Cita:
Tienes razón Eficsa, hice un copypaste de lo que escribio casimiro y el código original copiado por wilcg y no lo analicé... buen apunte! |
#8
|
||||
|
||||
Claro, la culpa siempre es de los otros
![]() ![]() ![]()
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#9
|
||||
|
||||
El registro a modificar (o los registros que quieras modificar) van en el where.
Cita:
Así que aprovecharé para recomendarte lo mejor de lo mejor: esto.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
cual es la mejor forma de trabajar con blob | anubis | Lazarus, FreePascal, Kylix, etc. | 44 | 22-09-2012 17:23:53 |
Cual es la mejor forma de conectar con la BD | GerTorresM | Conexión con bases de datos | 1 | 11-01-2010 16:51:47 |
Cual es la Mejor forma de Agregar,Modificar y Eliminar en ADO ? | LENOCB | Varios | 50 | 07-01-2008 04:04:47 |
cual es la mejor forma de logearse a mysql... | Arturo | MySQL | 1 | 11-10-2006 17:45:01 |
cual es la mejor forma ? | martita | Varios | 14 | 07-07-2005 19:35:55 |
![]() |
|