SQL - Stored Procedure de inicializacion

 
Vista:

Stored Procedure de inicializacion

Publicado por Hernan* (104 intervenciones) el 23/10/2003 23:07:23
Puedo hacer un stored procedure que cree tablas, vistas e indices?
Quiero hacer un store para crear las tablas, vistas, stored procedures e indices de la base.
Tengo los scripts de todo eso y quiero buscar la forma de que el usuario lo pueda correr lo mas simple posible.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Stored Procedure de inicializacion

Publicado por [email protected] (5072 intervenciones) el 24/10/2003 00:45:01
Amigo Hernan

En mi vida de DBA he tenido la necesidad de que mis USUARIOS creen sus propias tablas, indices, procedures, etc.

De ser asi, no seria mas facil que capacitara a sus "usuarios" en la herramienta de administracion MMC

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Stored Procedure de inicializacion

Publicado por Hernan* (104 intervenciones) el 24/10/2003 16:29:17
Si, pero lo que quiero es inicilizar todo desde una aplicacion V Basic.
El usuario instala el software, hace click en un boton y se crearia la base desde cero.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Stored Procedure de inicializacion

Publicado por Isaías Islas (5072 intervenciones) el 24/10/2003 18:52:12
¿Desde la INSTALACION DE SQL SERVER?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Stored Procedure de inicializacion

Publicado por Hernan (104 intervenciones) el 24/10/2003 20:23:00
No, desde la aplicacion cliente hecha en Visual Basic. Quiero una funcion que borre todas las tablas existentes, las cree de nuevo y cree los procedimientos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Stored Procedure de inicializacion

Publicado por Isaías Islas (5072 intervenciones) el 24/10/2003 21:38:14
Ok,

1.- Deberas tener TODO tu script de creacion de tablas y creacion de procedimientos en un ARCHIVO tipo TEXTO.

El script de creacion de PROCEDIMIENTOS, TABLAS, etc, debera contener la validacion de la existencia del objeto:

-- Para PROCEMIENTOS
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[pr_MyProcedimiento]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[pr_MyProcedimiento]

CREATE PROCEDURE pr_MyProcedimiento AS..........

-- Para TABLAS

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[MyTabla]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[MyTabla]

CREATE TABLE MyTabla...................................................

Ademas, deberas agregarles los permisos a los usuarios correspondientes en el mismo script al final.

GRANT SELECT ON MyTable TO MyUsuario

Para EJECUTAR tu archivo de creacion de TABLAS, INDICES, VISTAS, PROCEDIMIENTOS, etc. deberas hacer una ejecucion del archivo con el siguiente procedimiento:

-- Suponemos que el script esta en el archivo C:\CREACION.TXT, de tu servidor de datos.

DECLARE @SQLString NVARCHAR(800)
DROP TABLE #PASO
CREATE TABLE #PASO (SQLString VARCHAR(800))
INSERT INTO #PASO
exec master.dbo.xp_cmdshell 'TYPE C:\CREACION.TXT'
SELECT @SQLString = SQLString FROM #PASO
SELECT @SQLString
EXEC sp_executesql @SQLString

Espero haberle ayudado.


Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar