Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-02-2021
Avatar de santiago14
santiago14 santiago14 is offline
Miembro
 
Registrado: sep 2003
Ubicación: Cerrillos, Salta, Argentina
Posts: 583
Poder: 22
santiago14 Va por buen camino
Question Swap entre campos en Firebird

Buenas, tengo una consulta bastante simple. Debo intercambiar los datos de los campos en una Tabla.
¿Existe una función, onda swap, para hacerlo?
De no ser así, ¿cómo sería una buena forma de hacerlo?

Muchas gracias.
__________________
Uno es responsable de lo que hace y de lo que omite hacer.
Responder Con Cita
  #2  
Antiguo 16-02-2021
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.257
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Si tienes campo1 y campo2, quieres cambiar lo que hay en campo1 a campo2 y lo que hay en campo2 a campo1.

Creas un campo nuevo temporal, pasas los datos de campo1 a campo temporal, pasas los datos del campo2 a campo1, pasas los datos de campo temporal a campo 2.
También puedes hacer usando una tabla en memoria, lista, etc.
Responder Con Cita
  #3  
Antiguo 16-02-2021
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

A primera vista no parece lógico, pero en mis pruebas funciona correctamente de este modo:
Código Delphi [-]
procedure TForm1.FormCreate(Sender: TObject);
begin
  // Mostrar en DBGrid
  IBQuery1.SQL.Text := 'SELECT * FROM TEST';
  IBQuery1.Open;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  qyTmp.SQL.Text := 'UPDATE TEST SET VALOR0 = VALOR1, VALOR1 = VALOR0';
  qyTmp.ExecSQL;
  IBQuery1.Close; 
  IBQuery1.Open;
end;



Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #4  
Antiguo 16-02-2021
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.257
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
¡¡¡Muy bueno!!!
Responder Con Cita
Respuesta



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
salto entre campos oscarac Varios 16 22-05-2017 10:21:15
Instalar otra distribución usando la misma partición swap fidel Linux 5 15-10-2014 18:20:53
tablas y campos en minusculas firebird con dialecto 3 las pone entre comillas dobles juniorSoft Firebird e Interbase 2 03-11-2008 21:50:28
una duda sobre la swap lookmydoom Linux 8 30-08-2007 01:51:56
gestionar memoria virtual o SWAP en linux gulder C++ Builder 0 22-04-2007 01:18:10


La franja horaria es GMT +2. Ahora son las 01:12:59.


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