Tablas Temporales
Publicado por Alejandro Arancibia (2 intervenciones) el 28/11/2006 20:07:05
Hola Amigos,
El problema es el siguiente utilizando Delphi Studio 2006 con SQL SERVER 2000 necesito crear una tabla temporal mientras dura una consulta; nota a esta consulta pueden acceder simultaneamente varios usuarios.
La Instruccion para crear la tabla la entrega el motor:
CREATE PROCEDURE pa_NuevaTablaTemporal @nombre varchar(50)
AS
DECLARE @ntabla VARCHAR(50)
SELECT @ntabla=@nombre
IF exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[@ntabla]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[@ntabla]
CREATE TABLE [dbo].[@ntabla] (
[campo1] [int] NOT NULL ,
[campo2] [varchar] (50) COLLATE Modern_Spanish_CI_AS NULL ,
[campo3] [int] IDENTITY (1, 1) NOT NULL
) ON [PRIMARY]
GO
Pero el problema que tengo es que el Motor no esta tomando el contenido de la variable @nombre que es generada por la interfaz aleatoriamente y crea la tabla temporal con el nombre @nombre y no su contenido.
Si alguien sabe como es la instruccion y me puede ayudar se lo agradeceria
Muchas Gracias
Alejandro Arancibia
Valparaiso - CHILE
El problema es el siguiente utilizando Delphi Studio 2006 con SQL SERVER 2000 necesito crear una tabla temporal mientras dura una consulta; nota a esta consulta pueden acceder simultaneamente varios usuarios.
La Instruccion para crear la tabla la entrega el motor:
CREATE PROCEDURE pa_NuevaTablaTemporal @nombre varchar(50)
AS
DECLARE @ntabla VARCHAR(50)
SELECT @ntabla=@nombre
IF exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[@ntabla]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[@ntabla]
CREATE TABLE [dbo].[@ntabla] (
[campo1] [int] NOT NULL ,
[campo2] [varchar] (50) COLLATE Modern_Spanish_CI_AS NULL ,
[campo3] [int] IDENTITY (1, 1) NOT NULL
) ON [PRIMARY]
GO
Pero el problema que tengo es que el Motor no esta tomando el contenido de la variable @nombre que es generada por la interfaz aleatoriamente y crea la tabla temporal con el nombre @nombre y no su contenido.
Si alguien sabe como es la instruccion y me puede ayudar se lo agradeceria
Muchas Gracias
Alejandro Arancibia
Valparaiso - CHILE
Valora esta pregunta


0