Skip to content

Commit

Permalink
Rewriting sqlserver init script to avoid additional \connect
Browse files Browse the repository at this point in the history
  • Loading branch information
kenshaw committed May 10, 2023
1 parent 8ff53af commit 32310f7
Showing 1 changed file with 31 additions and 15 deletions.
46 changes: 31 additions & 15 deletions _examples/init/sqlserver.sql
Original file line number Diff line number Diff line change
Expand Up @@ -10,18 +10,34 @@ DROP DATABASE :NAME;
CREATE DATABASE :NAME
CONTAINMENT=PARTIAL;

\connect 'ms://localhost/':NAME

CREATE LOGIN :NAME
WITH
PASSWORD=:'PASS',
CHECK_POLICY=OFF,
DEFAULT_DATABASE=:NAME;

CREATE USER :NAME
FOR LOGIN :NAME
WITH DEFAULT_SCHEMA=:NAME;

CREATE SCHEMA :NAME AUTHORIZATION :NAME;

EXEC sp_addrolemember 'db_owner', :'NAME';
\set QNAME "''":NAME"''"

\set SQL 'CREATE LOGIN ':NAME' WITH PASSWORD=':QNAME', CHECK_POLICY=OFF, DEFAULT_DATABASE=':NAME';'
EXEC [:NAME].[dbo].[sp_executesql] N:'SQL'

\set SQL 'CREATE USER ':NAME' FOR LOGIN ':NAME' WITH DEFAULT_SCHEMA=':NAME';'
EXEC [:NAME].[dbo].[sp_executesql] N:'SQL';

\set SQL 'CREATE SCHEMA ':NAME' AUTHORIZATION ':NAME';'
EXEC [:NAME].[dbo].[sp_executesql] N:'SQL';

\set SQL 'EXEC sp_addrolemember db_owner, ':QNAME';'
EXEC [:NAME].[dbo].[sp_executesql] N:'SQL';

-- original reconnect version:
--
--\connect 'ms://localhost/':NAME
--
--CREATE LOGIN :NAME
-- WITH
-- PASSWORD=:'PASS',
-- CHECK_POLICY=OFF,
-- DEFAULT_DATABASE=:NAME;
--
--CREATE USER :NAME
-- FOR LOGIN :NAME
-- WITH DEFAULT_SCHEMA=:NAME;
--
--CREATE SCHEMA :NAME AUTHORIZATION :NAME;
--
--EXEC sp_addrolemember 'db_owner', :'NAME';

0 comments on commit 32310f7

Please sign in to comment.