Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   Pasar Tabla Como Parametro en Stored Procedure (https://www.clubdelphi.com/foros/showthread.php?t=4462)

elpinjum 16-10-2003 15:16:44

Pasar Tabla Como Parametro en Stored Procedure
 
Me gustaria crearme una stored procedure en interbase con el cual pudiera pasar una parmetro tipo Varchar en el cual pondria el nombre de una tabla, en el interior del procedimiento usar este parametro para hacer un select de una tabla por ejemplo:

CREATE PROCEDURE "SP_DR_PROVEEDORES_NOMBRE"
(
PARAMETROTABLA VARCHAR(40)
)
AS

DECLARE VARIABLE CODIGO INTEGER
begin
FOR SELECT CODIGO FROM PARAMETROTABLA INTO :CODIGO DO
BEGIN
.
.
.
SUSPEND;
END
end


El motivo de querer hacer esto es que tengo la necesidad de hacer unos procedimientos iguales para distintas tablas, y de este modo podría unificarlo todo en un mismo procedimiento.

guillotmarc 16-10-2003 15:25:07

Hola.

No es posible utilizar un nombre de tabla como una variable.

Lo único que puedes intentar, es hacer algo con la nueva sentencia execute statement (si no le han cambiado el nombre en la ultima versión) que proporciona el nuevo Firebird 1.5. Con esta instrucción puedes tener una sentencia SQL en una variable de texto, y ejecutarla.

Saludos.

__cadetill 16-10-2003 17:56:10

Como bien dice el amigo Marc, con versiones anteriores a Firebird 1.5 no se podía hacer y, para que veas un ejemplillo simple de su uso, te recomiendo este hilo http://www.clubdelphi.com/foros/show...&threadid=3747

(yo también lo he necesitado :p)

elpinjum 17-10-2003 10:37:41

Muchas gracias a ambos, me ha sido de mucha utilidad


La franja horaria es GMT +2. Ahora son las 20:38:54.

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