PDA

Ver la Versión Completa : como comprobar existencia de una tabla?


jhoncacru
11-12-2006, 16:54:17
como comprobar existencia de una tabla, existe alguna funcion que me realice esta tarea,

como hago con un procedimiento almacenado, que se compruebe si existe una tabla o no si es que existe no realiza ninguna accion pero si es que no existe la crea e inserta valores.
he intentado hacer algo pero existe un error,
Server: Msg 208, Level 16, State 1, Procedure SP_COMPORTAMIENTO, Line 10
Invalid object name '#ASIS_COMPORTAMIENTO'.

CREATE PROC SP_COMPORTAMIENTO
( @codigobarra int,
@numdia Int ,
@fecha int,
@atrasos int,
@anticipos int)
AS
IF EXISTS( SELECT * FROM #ASIS_COMPORTAMIENTO)
PRINT 'La tabla existe'
Else
CREATE TABLE #ASIS_COMPORTAMIENTO (codigobarra INT,numdia INT, fecha DATETIME, atrasos INT, anticipos INT)
INSERT INTO #ASIS_COMPORTAMIENTO (codigobarra,numdia,fecha,atrasos,anticipos) values(@codigobarra,@numdia,@fecha,@atrasos,@anticipos)
GO

Bicho
11-12-2006, 16:59:28
Hola, no se si estás programando en Delphi o lo estás haciendo todo con SQL (PL/SQL), si es éste último no te sé ayudar. Aunque estoy seguro de que el gestor (MS SQL Server, en este caso), tiene alguna tabla que contiene la info de todas las tablas que conforman la base de datos, es cuestión de revisar documentación de MS SQL Server.
Si lo haces con Delphi o lo puedes hacer con Delphi, puedes revisar éste hilo (http://www.clubdelphi.com/foros/showthread.php?t=31740) donde se habla del tema.

Espero te sirva.

Saludos

droguerman
11-12-2006, 19:34:17
select * from sysobjects where name='nombreDeTabla' and type='u'