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 26-03-2004
injavies injavies is offline
Miembro
 
Registrado: jun 2003
Posts: 15
Poder: 0
injavies Va por buen camino
FireBird row_count

Hola como estan todos?

Mi problema:

Necesito confirmar si el insert, update se hay realizado correctamente, me fije en la Nota (Firebird_v15.108_ReleaseNotesSpanish) y ahi me dice que tengo que usar row_count en un trigger o procedimiento almacenado, el problema es que cuando la uso el Firebird-1.5.0.4306-Win32 no recomoce la instruccion (row_count).

Istale el Firebird-1.5.0.4306-Win32 sin ninguna actualizacion (releace candidate)

Creo que esta es la definitiva de FireBird

Desde ya muchas gracias
Responder Con Cita
  #2  
Antiguo 30-03-2004
Avatar de PepeLolo
PepeLolo PepeLolo is offline
Miembro
 
Registrado: jun 2003
Ubicación: Fuenlabrada - Madrid - Espagna
Posts: 265
Poder: 21
PepeLolo Va por buen camino
Sí el proceso de grabación lo encuadras dentro de un Try Except. Sí hubiera algun fallo durante la grabación del registro, el proceso entraria por la sentencia Except. Donde podras evaluar cual fue el error producido durante el proceso.

Sí no entra en el Except es que todo sucedio correctamente
Saludos.
__________________
PepeLolo
El hombre el único virus que mide más de unas cuantas micras
Responder Con Cita
  #3  
Antiguo 30-03-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 28
jachguate Va por buen camino
No necesariamente....

Si haces un Update o Delete, via SQL, el update no devolverá error, aun cuando no se haya actualizado ningun registro. Es diferente con el insert, que si que elevará una excepción.

No indicas que componentes usas.. si es BDE, simplemente mirá la propiedad RowsAffected del TQuery.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #4  
Antiguo 30-03-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 28
jachguate Va por buen camino
cabe aclarar que esta versión ya no es un Release Candidate (rc). Es el Release definitivo de la 1.5

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #5  
Antiguo 30-03-2004
Gydba Gydba is offline
Miembro
 
Registrado: ene 2004
Ubicación: Argentina
Posts: 673
Poder: 21
Gydba Va por buen camino
Tal vez sería útil investigar sobre los triggers y eventos.
__________________
Suerte
.: Gydba :.
Responder Con Cita
  #6  
Antiguo 31-03-2004
injavies injavies is offline
Miembro
 
Registrado: jun 2003
Posts: 15
Poder: 0
injavies Va por buen camino
Hola

disculpen pero creo que no se entendio bien mi pregunta, va otra vez:

Lo que yo quiero es poder controlar en un procedimiente almacenado luego de un insert delete o update si la operacion se realizo. Para esto hay en fireBird el comando ROW_Count que se usa de la siguiente manera


ROW_COUNT: Devuelve un entero, el número de registros involucrados en la última sentencia DML. Disponible en PSQL, en el contexto del trigger o procedure. Actualmente devuelve cero tras una sentencia SELECT.

UPDATE TABLE1 SET FIELD1 = 0 WHERE ID = :ID;
IF (ROW_COUNT = 0) THEN
INSERT INTO TABLE1 (ID, FIELD1) VALUES (:ID, 0);

el tema es que cuando compilo me da error en el comando ROW_COUNT, no lo reconoce

no se si me falta algo o que ?

bueno gracias y hasta pronto
Responder Con Cita
  #7  
Antiguo 31-03-2004
injavies injavies is offline
Miembro
 
Registrado: jun 2003
Posts: 15
Poder: 0
injavies Va por buen camino
Hola

ya soluciones lo del ROW_COUNT.

No me di cuenta que al crear la base de datos la habia creado con Dialecto 1 y bueno.... tenia que ser con Dialecto 3

Gracias
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 07:18:24.


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