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 27-11-2007
Chaja Chaja is offline
No confirmado
 
Registrado: ago 2004
Ubicación: Mar del Plata
Posts: 238
Poder: 0
Chaja Va por buen camino
Interbases Vs. Firebird

Otra vez yo:

Bueno la duda es que quiero migrar a Firebird 2.0 pero no se si la estructura de mi base de datos lo soporta. Lei por algun lado que en los triggers no se permite las variables old y new en Before y After Insert y Update.
Lo que no se si esto se modifico o es asi. Mi estructura actual tiene mas de 300 triggers. de los cuales estan en tanto BI, AI o y otros.
Si alguien tiene una repuesta agradeceria

Luis
Responder Con Cita
  #2  
Antiguo 27-11-2007
lbuelvas lbuelvas is offline
Miembro
 
Registrado: may 2003
Ubicación: Colombia
Posts: 377
Poder: 21
lbuelvas Va por buen camino
Hola foristas, un cordial saludo.

Interesante pregunta, cuando utilizaba el motor de bases de datos Interbase cometia un pequeño "error conceptual" al utilizar indistintamente las variabler old y new en los procedimientos almacenados.

En el siguiente cuadro muestro en que tipo de triggers se pueden utilizar:

BEFORE INSERTNEW
AFTER INSERT NEW

BEFORE UPDATE OLD NEW
AFTER UPDATE OLD NEW

BEFORE DELETE OLD
AFTER DELETE OLD
__________________
Luis Fernando Buelvas T.
Responder Con Cita
  #3  
Antiguo 27-11-2007
lbuelvas lbuelvas is offline
Miembro
 
Registrado: may 2003
Ubicación: Colombia
Posts: 377
Poder: 21
lbuelvas Va por buen camino
Oigan presioné tabulador y se fue el mensaje incompleto:

Continuando con mi apreciacion, me parece bueno que los señores que han elaborado Firebird a partir de Interbase hayan colocado restricciones en el uso de las variables old y new pues de esa manera evitan que el programador se equivoque, pues muchas veces escribimos codigo para un trigger tipo before cuando estamos pensando en un trigger tipo after, en lo peronal me ha sucedido.

Aplicando un poco de sentido comun, para que utilizar old en un trigger before insert ? Si el registro aun no ha ingresado a la base de datos como podemos preguntar por su valor anterior ?

De igual forma si vamos a eliminar un registro para que preguntar por el valor new si en esa accion no se esta cambiando ningun valor ?

Mi recomendacion es que te enfoques en los trigger tipo insert y delete. En los triggers tipo insert cambies los old por new y en los triggers tipo delete cambies los new por old.
__________________
Luis Fernando Buelvas T.
Responder Con Cita
  #4  
Antiguo 27-11-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 29
jhonny Va camino a la famajhonny Va camino a la fama
Bueno, a pesar que lbuelvas a dejado claro el asunto quiero "rematar" un poco mas con lo siguiente:

- El old no funciona en el before Insert, ni en el after insert, ya que como explico lbuelvas, esto no tiene sentido, pero el new si funciona.

- En el Update funcionan las dos, tanto old como new, en el After como en el Before.

- En el Delete no funciona el new, ya que esto (Como tambien lo explico lbuelvas), tampoco tiene sentido, pero el Old si funciona.

Bueno, solo queria dejarlo plasmado de esta manera, me parecio que es un poco mas entendible, espero no haber enredado el asunto .
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/

Última edición por jhonny fecha: 27-11-2007 a las 14:29:59. Razón: Agregar "rematar"
Responder Con Cita
  #5  
Antiguo 28-11-2007
Chaja Chaja is offline
No confirmado
 
Registrado: ago 2004
Ubicación: Mar del Plata
Posts: 238
Poder: 0
Chaja Va por buen camino
Fin del Old y el New

Estimado Colegas:

Voy a ponerme a trabajr segun sus indicaciones, gracias y vere que sale de todo esto....

Luis
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
Firebird 1.5.3 Error:No puede ejecutarse Firebird Guardian xq ya hay una instancia Delphius Firebird e Interbase 5 26-01-2007 10:19:20
Interbases 6.6 Pierde registros? tulio Firebird e Interbase 4 25-08-2006 22:18:25
Lentitud en Interbases Cuando se usa el Excel tulio Firebird e Interbase 8 20-10-2005 12:10:15
Interbases Ree Lento Chaja Conexión con bases de datos 5 05-10-2004 03:48:06
Interbases en Windows 2000 server tulio Firebird e Interbase 2 20-01-2004 14:05:28


La franja horaria es GMT +2. Ahora son las 19:06:57.


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