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

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 09-05-2005
Avatar de vic_ia
vic_ia vic_ia is offline
Miembro
 
Registrado: ene 2004
Posts: 238
Poder: 21
vic_ia Va por buen camino
Como obtener valor de Campo Autoincremento...

hola...

espero me puedan ayudar con esto...

tengo una tabla de en la que almaceno "mensajes", la clave principal es un campo Autoincremento (los demas campos son para guardar, de quien vino, cuando se recibio, etc), para esto me cree en generador y el correspondiente trigger (before insert), al hacer un insert con los valores de los demas campos se realiza el proceso de manera correcta; el detalle es que necesito obtener el valor del campo Autoincremento que le fue asignado a tal registro; por lo que he ledio lo adecuado seria colocar la sentencia de Insert en un procedimiento, llamar a este procedimiento con los parametros adecuados, y obtener en un parametro de retorno el valor del campo Autoincremento pero ahi es donde no se como obtener ese valor; el procedimiento es como sigue..

Código:
CREATE PROCEDURE NEW_PROCEDURE (PMENSAJE VARCHAR(100) CHARACTER SET ISO8859_1)
RETURNS (NUEVO_ID INTEGER)
AS
begin
  INSERT INTO MENSAJES(MENSAJE) VALUES (:PMENSAJE);
  NUEVO_ID = MENSAJES.id;
  suspend;
end

y me da el siguiente Error :

Column does not belong to referenced table.
Dynamic SQL Error.
SQL error code = -206.
Column unknown.
At line 8, column 23.
la tabla si tiene un campo ID que de hecho es el campo Autoincremento, he cambiado MENSAJES.id por GEN_MENSAJES_ID pero igual me dice que la columna no la conoce; espero alguien me pueda orientar...

saludos....

PD. Utilizo Delphi 6 y Firebird 1.5 y el store procedure lo esto creando con IBExpert.
Responder Con Cita
 



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:52:18.


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