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 29-04-2005
victortera victortera is offline
Registrado
 
Registrado: abr 2005
Posts: 5
Poder: 0
victortera Va por buen camino
Nombre de campo dependiendo del mes

Estoy haciendo un trigger que actualiza una tabla cada vez que se inserta un registro en otra. Hasta ahí todo bien. el problema lo tengo en que tengo que actualizar un campo distinto dependiendo de en qué mes nos encontremos.

Por ejemplo:

Si estamos en Abril, el campo a actualizar es el E04.
Si estamos en Julio, el campo a actualizar es el E07.

Es decir:


UPDATE STOCK_VE SET campo=campo+NEW.KILOS WHERE EJERCICIO=:vEJERCICIO AND VARIEDAD=:vVARIEDAD

Pues no sé como hacer que campo sea cada vez uno.
¿Me podéis ayudar?

Muchas gracias,

víctor.
Responder Con Cita
  #2  
Antiguo 29-04-2005
Avatar de rastafarey
rastafarey rastafarey is offline
Miembro
 
Registrado: nov 2003
Posts: 927
Poder: 21
rastafarey Va por buen camino
Resp

Mira declara una variable local

Luego extraes la fecha con la fucnion extrac de la fecha.

y a dicha variable le asignas el valor que extariste.

Soluciones
1: Con un aconcion si el la varaible es un ejecutas el slq para el campo E01

Pero esta es mucho codigo

2eclaras la variable de tipo smallint

Declare V smallint;

V := extract(day from 'now' /*o usas current_time_stamp*/)
/*puede que los nombred elas funciones estan mal escritas verificalas*/
eso te devuelve el dia;

luego haces un executeStatement de tu instruccion.

seria algo asi
excute ... 'E0'||V ...;

Lee un poco sobre exceutestatement

Ha La segunta forma solo es sosportada por firebird 1.5 de si no tienes este deberas usar la primero.
__________________
Todo se puede, que no exista la tecnología aun, es otra cosa.
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


La franja horaria es GMT +2. Ahora son las 02:58:42.


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