Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
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 23-06-2011
amerika111 amerika111 is offline
Miembro
 
Registrado: nov 2009
Posts: 168
Poder: 0
amerika111 cantidad desconocida en este momento
tengo una duda en este tipo de trigger por que podria estar marcando error
lo he cambiado a after before y nada de nada


Código SQL [-]
SET TERM ^^ ;
CREATE TRIGGER EMPLEADOSACTIVOS_EDOCIVIL FOR EMPLEADOSACTIVOS ACTIVE AFTER INSERT OR UPDATE POSITION 4 AS
begin
  IF (NEW.ESTADOCIVIL IS NULL ) 
  NEW.ESTADOCIVIL='SOLTERO';   
  END
  IF (NEW.ESTADOCIVIL='S') 
  NEW.ESTADOCIVIL='SOLTERO';  
  END
  IF (NEW.ESTADOCIVIL='C')
  NEW.ESTADOCIVIL='CASADO';
  END
  IF (NEW.ESTADOCIVIL='U')
  NEW.ESTADOCIVIL='UNION LIBRE';
  END
end ^^
SET TERM ; ^^

Última edición por Casimiro Noteví fecha: 23-06-2011 a las 01:04:02.
Responder Con Cita
  #2  
Antiguo 23-06-2011
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is online now
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.669
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
No olvides las etiquetas para el código fuente.




.
Responder Con Cita
  #3  
Antiguo 23-06-2011
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 26
guillotmarc Va por buen camino
¿ Que error marca ?, ¿ no te dice en que linea se encuentra ?.

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita
  #4  
Antiguo 23-06-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
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 amerika111.

Como bién ha dicho guillotmarc:
Cita:
Empezado por guillotmarc Ver Mensaje
¿ Que error marca ?, ¿ no te dice en que linea se encuentra ?.

Saludos.
Dicho de otra forma: Ponenos literalmente el texto del mensaje de error y la línea donde se produce. Sin eso no creo que podamos darte mucha ayuda...

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 23-06-2011 a las 17:17:15.
Responder Con Cita
  #5  
Antiguo 23-06-2011
amerika111 amerika111 is offline
Miembro
 
Registrado: nov 2009
Posts: 168
Poder: 0
amerika111 cantidad desconocida en este momento
Cita:
Empezado por guillotmarc Ver Mensaje
¿ Que error marca ?, ¿ no te dice en que linea se encuentra ?.

Saludos.
El error que marca es el siguiente...

Última edición por amerika111 fecha: 29-07-2011 a las 01:07:20.
Responder Con Cita
  #6  
Antiguo 23-06-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
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.

Probá de este modo:
Código SQL [-]
BEGIN
  IF (NEW.ESTADOCIVIL IS NULL ) THEN
    NEW.ESTADOCIVIL='SOLTERO';   

  IF (NEW.ESTADOCIVIL='S') THEN
    NEW.ESTADOCIVIL='SOLTERO';  

  IF (NEW.ESTADOCIVIL='C') THEN
    NEW.ESTADOCIVIL='CASADO';

  IF (NEW.ESTADOCIVIL='U') THEN
    NEW.ESTADOCIVIL='UNION LIBRE';
END

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #7  
Antiguo 23-06-2011
amerika111 amerika111 is offline
Miembro
 
Registrado: nov 2009
Posts: 168
Poder: 0
amerika111 cantidad desconocida en este momento
Perfecto si con esa sintaxis me deja guardarlo y funciona

Gracias....
Responder Con Cita
  #8  
Antiguo 23-06-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
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
Cita:
Empezado por amerika111 Ver Mensaje
tengo una duda en este tipo de trigger por que podria estar marcando error
lo he cambiado a after before y nada de nada
Hola.

En principio tenes incompleta la declaración del condicional, lo correcto es:
Código SQL [-]
SET TERM ^^ ;
CREATE TRIGGER EMPLEADOSACTIVOS_EDOCIVIL FOR EMPLEADOSACTIVOS 
ACTIVE AFTER INSERT OR UPDATE 
POSITION 4 AS
BEGIN
  IF(NEW.ESTADOCIVIL IS NULL ) THEN  /* <--- */
    NEW.ESTADOCIVIL='SOLTERO';   
  ...
  ...
END ^^
SET TERM ; ^^

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #9  
Antiguo 23-06-2011
amerika111 amerika111 is offline
Miembro
 
Registrado: nov 2009
Posts: 168
Poder: 0
amerika111 cantidad desconocida en este momento
Cita:
Empezado por ecfisa Ver Mensaje
Hola.

En principio tenes incompleta la declaración del condicional, lo correcto es:

Código SQL [-]SET TERM ^^ ;
CREATE TRIGGER EMPLEADOSACTIVOS_EDOCIVIL FOR EMPLEADOSACTIVOS
ACTIVE AFTER INSERT OR UPDATE
POSITION 4 AS
BEGIN
IF(NEW.ESTADOCIVIL IS NULL ) THEN /* <--- */
NEW.ESTADOCIVIL='SOLTERO';
...
...
END ^^
SET TERM ; ^^





Saludos.
Lo he intentado asi y me sigue marcando error


Código SQL [-]
begin
IF (NEW.ESTADOCIVIL IS NULL ) THEN
   NEW.ESTADOCIVIL='SOLTERO';   
  END
  IF (NEW.ESTADOCIVIL='S') THEN
  NEW.ESTADOCIVIL='SOLTERO';  
  END
  IF (NEW.ESTADOCIVIL='C') THEN
  NEW.ESTADOCIVIL='CASADO';
  END
  IF (NEW.ESTADOCIVIL='U') THEN
  NEW.ESTADOCIVIL='UNION LIBRE';
  END
end
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


La franja horaria es GMT +2. Ahora son las 15:13:12.


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