Ver Mensaje Individual
  #6 (permalink)  
Antiguo 04/05/2009, 15:42
Avatar de Dradi7
Dradi7
 
Fecha de Ingreso: junio-2008
Ubicación: Peru - Lima
Mensajes: 1.518
Antigüedad: 15 años, 10 meses
Puntos: 220
Respuesta: Crear usuarios con SQL Server Express

Prueba Esto
Código sql:
Ver original
  1. CREATE PROCEDURE [dbo].[Sp_CrearLogin]
  2. (
  3.     @USU  VARCHAR(100),
  4.     @CLA  VARCHAR(100),
  5.     @BD   VARCHAR(100)
  6. )
  7. AS
  8. BEGIN TRY
  9.     DECLARE @SQLString NVARCHAR(MAX)
  10.     SET @SQLString = N'CREATE LOGIN [' + UPPER(@USU) + '] WITH PASSWORD=N'''+ @CLA + ''' , DEFAULT_DATABASE=[' + @BD + '], DEFAULT_LANGUAGE=[Español], CHECK_EXPIRATION=OFF, CHECK_POLICY=ON';
  11.     EXECUTE SP_EXECUTESQL @SQLString
  12.  
  13.     SET @SQLString = N'USE NOMBD;';
  14.     SET @SQLString =@SQLString  +  N'CREATE USER [' + UPPER(@USU) + '] FOR LOGIN ' + '[' + UPPER(@USU) + ']';
  15.     SET @SQLString =@SQLString  +  N' WITH DEFAULT_SCHEMA = NOMBD;'
  16.     EXECUTE SP_EXECUTESQL @SQLString
  17.  
  18.     --¡¡¡¡¡¡¡SE DEBE CAMBIAR DB_OWNER POR OTRO ROL CON MENOS PERMISOS SOBRE EL SERVIDOR!!!!!
  19.     SET @SQLString = N'EXECUTE SP_ROLEMEMBER "db_owner", [' + UPPER(@USU) + ']'
  20.     EXECUTE SP_EXECUTESQL @SQLString
  21. END TRY
  22. BEGIN CATCH
  23.     PRINT 'NUMERO DE ERROR: ' + CONVERT(VARCHAR,ERROR_NUMBER());
  24.     PRINT 'MENSAJE DE ERROR: ' + ERROR_MESSAGE();
  25. END CATCH;
__________________
La clave de todo triunfador es eliminar todas sus excusas y sus limitaciones

Última edición por Dradi7; 05/05/2009 a las 09:03