Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-03-2007
Avatar de movorack
[movorack] movorack is offline
Miguel A. Valero
 
Registrado: feb 2007
Ubicación: Bogotá - Colombia
Posts: 1.346
Poder: 22
movorack Va camino a la famamovorack Va camino a la fama
así de rapidez se me ocurre que si la columna a editar está en la misma tabla, puedes obviar "talvez" la segunda y no se... hasta te ahorrarias un tantito de procesamiento. creo... digo.

Código Delphi [-]
query.edit;
query1.first;
while not query1.eof do
   begin
     query1.Fieldbyname('importe_letra').AsString := PasarALetra(query1Importe.Value);
      query1.Next;
    end;
query1.post;

espero no esté equivocado.
__________________
Buena caza y buen remar... http://mivaler.blogspot.com
Responder Con Cita
  #2  
Antiguo 06-03-2007
Avatar de movorack
[movorack] movorack is offline
Miguel A. Valero
 
Registrado: feb 2007
Ubicación: Bogotá - Colombia
Posts: 1.346
Poder: 22
movorack Va camino a la famamovorack Va camino a la fama
se me olvidaba...

para esto tendrás que usar una tabla... no una query... o si usas una query tendrás que establecer los parametros de actualización en un SQLUpdate...

OOPPPSSS.... un poco más de trabajo.

osea que quedaria algo así:

Código Delphi [-]
table.edit;
table.first;
while not table.eof do
   begin
     table.Fieldbyname('importe_letra').AsString := PasarALetra(table.fieldbyname('importe_valor').Value);
     table.Next;
    end;
table.post;
__________________
Buena caza y buen remar... http://mivaler.blogspot.com

Última edición por movorack fecha: 06-03-2007 a las 20:25:18.
Responder Con Cita
  #3  
Antiguo 07-03-2007
Avatar de Ivanzinho
[Ivanzinho] Ivanzinho is offline
Miembro Premium
 
Registrado: ene 2005
Ubicación: Galicia
Posts: 595
Poder: 22
Ivanzinho Va por buen camino
Cita:
Empezado por movorack
así de rapidez se me ocurre que si la columna a editar está en la misma tabla, puedes obviar "talvez" la segunda y no se... hasta te ahorrarias un tantito de procesamiento. creo... digo.

espero no esté equivocado.
Espero no estar equivocado yo, pero creo que no te ahorras nada de procesamiento. Te explico por qué:

1.- Al utilizar una tabla traes todos los registros de la base de datos, yo con la query solo traigo los distintos.

2.- Tu recorres toda la tabla y modificas los registros 1 a 1, yo solo realizo una iteración por cada valor distinto del importe de la nómina y modifico los registros en grupos (todos los que son iguales al mismo tiempo).

Debido a lo anterior saco en conclusión que en el peor de los casos (todos los importes distintos) los dos métodos serían equivalentes, sin embargo, el que yo propuse mejoraría en función del número de valores repetidos en el campo importe.

Si estoy equivocado, agredecería que me corrigiesen, pero así es como yo lo veo.

Un saúdo.
__________________
Si no lees esto no vivirás tranquilo
Non lle poñades chatas â obra namentras non se remata. O que pense que vai mal que traballe n’ela; hai sitio para todos. (Castelao)
Responder Con Cita
  #4  
Antiguo 07-03-2007
Avatar de movorack
[movorack] movorack is offline
Miguel A. Valero
 
Registrado: feb 2007
Ubicación: Bogotá - Colombia
Posts: 1.346
Poder: 22
movorack Va camino a la famamovorack Va camino a la fama
Compae... tiene razón... se me escapo el DISCTINCT... no lo ví, no lo noté... y eso hace la diferencia.

ahora... pienso que teniendo en cuenta que estamos hablando de ELCARO (lease alreves ORACLE)... se podria (depende de que tan importante sea) dejar esa consulta como una vista y crear una regla que permita la actualización de los registros... y luego mirar esa vista desde un TTable y procesarla línea por linea... (1 a 1) como me dices... Delphi estaria editando 1 línea y ORACLE con la regla creada estaría modificando todos los importes con el mismo valor.

digo digo digo como claudio!!!
__________________
Buena caza y buen remar... http://mivaler.blogspot.com
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Meter un Array de strings con Datos en un PSafearray camomilass OOP 1 28-06-2006 12:09:39
como leo una consulta a la base de datos carlosmoralesm .NET 7 28-09-2004 22:05:39
Problemas con Base de datos(.dbf y .db)!!! jeni Conexión con bases de datos 1 08-11-2003 12:49:09
Problemas al meter una aplicación en un CD kasieyes Conexión con bases de datos 2 04-09-2003 02:25:49
problemas con la base de datos superhopi Conexión con bases de datos 1 19-05-2003 09:47:58


La franja horaria es GMT +2. Ahora son las 06:11:51.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi