Hola, no es muy recomendado que digamos usar las tablas de sistema, de hecho en 2005 no estan mas y en su lugar estan las vistas de sistema (por mas que esa instruccion siga funcionando) lño que yo les recomiendo es usar
IF OBJECT_ID('OBJETONAME´) IS NULL
BEGIN
CREATE TABLE.....
END
ELSE
BEGIN
ALTER TABLE .....
END
2006/11/13, Poli García <[EMAIL PROTECTED]>:
Para verificar si un objeto de la base de datos existe podés hacer un query a las tablas que definen el esquema de base. Por ejemplo en MSSQL2000 podías hacer:
IF EXISTS (SELECT name FROM master.dbo.sysdatabases WHERE name = N'MiBaseDeDatos')
-- hacer algo con la base de datos
GO
if exists (select * from dbo. sysobjects where id = object_id(N' <id_de_objeto>'))
-- Hacer algo con el objeto
GO
No me metí a ver... pero en MSSQL2005 debe haber algo similar...--
On 11/7/06, Julian Berlin <[EMAIL PROTECTED] > wrote:
Hola gente
Necesito hacer un script que me permita actualizar objetos de una base de datos MSSQL 2005 (con objetos me refiero a tablas , funciones , SP ,etc )de manera tal que de si ya existen , me haga un ALTER y en caso q no los cree , la verdad no tengo mucha idea de cómo seria la sintaxis , osea seria algo asi:
SI existe <NombreTabla>
ALTER TABLE....
SINO
CREATE TABLE....
FIN
Si alguien tiene alguna idea de cómo hacer esto lo agradecere !
Saludos !!
Julián R Berlín
Poli García
--
----------------------------------------------------
Microsoft MVP (Most Valuable Professional) SQL Server
Orador Culminis
(www.sqlgurus.org)
-------------------------------------------
