tabla | |
---|---|
id | Entero autoincrementable |
campo1 | varchar(10) |
campo2 | varchar(30) |
campo3 | varchar(30) |
El problema ocurre cuando hacemos una inserción en la base de datos y necesitamos saber cual fue el id con el que quedó nuestro registro.
La solución a este problema llega a nosotros gracias a la clausula RETURNING. Miremos como sería nuestra consulta:
INSERT INTO tabla (campo1, campo2, campo3) VALUES ('c1', 'c2', 'c3') RETURNING id;
La anterior consulta inserta el registro en la tabla tabla y retorna el id con el que queda este. Ahora si nuestra intensión es guardar este valor en una variable dentro de una función SQL podemos hacerlo así:
CREATE FUNCTION funcion (VARCHAR, VARCHAR, VARCHAR) RETURN INTEGER |
Función hecha en PostgreSQL |
La clausula "RETURINIG id INTO id_t" podemos usarlo independiente del gestor de bases de datos que estemos usando.
No hay comentarios:
Publicar un comentario