FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
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. |
#2
|
||||
|
||||
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. |
|
|
|