kreta/Kreta.DataAccess.Migrations/DBScripts/Database/dev/uspDropSchema.sql
2024-03-13 00:33:46 +01:00

28 lines
727 B
Transact-SQL

DROP PROCEDURE IF EXISTS dev.uspDropSchema
GO
CREATE PROCEDURE dev.uspDropSchema
@pSchemaName nvarchar(max)
AS
BEGIN
SET NOCOUNT ON
DECLARE
@sql nvarchar(max) = '';
SELECT @sql += 'DROP USER IF EXISTS [' + REPLACE(@pSchemaName, '_schema', '_user]') + char(13) + char(10)
EXEC sp_executesql @sql
SET @sql = '';
SELECT @sql += '
IF EXISTS (SELECT 1 FROM master.sys.server_principals WHERE name = ''' + REPLACE(@pSchemaName, '_schema', '_user''') + ') BEGIN
DROP LOGIN [' + REPLACE(@pSchemaName, '_schema', '_user]') + '
END'
EXEC sp_executesql @sql
SET @sql = '';
SELECT @sql += 'DROP SCHEMA IF EXISTS [' + @pSchemaName + ']' + char(13) + char(10)
EXEC sp_executesql @sql
END
GO