1 pièce(s) jointe(s)
Script pour affectation de droits sur une base
Bonjour,
Je suis en train de développer un SetUp d'installation pour une application utilisant SQL Serveur.
Le SetUP doit créer la base de données et les moyens de connexion.
Tous les éléments ont le même nom (l'utilisateur, la base, etc).
Je parviens bien à créer la base et l'utilisateur mais je n'arrive pas à donner à l'utilisateur les droits nécessaires sur la base.
Les scripts sont exécutés via Delphi via ADO.
Voici celui de création de base :
Code:
1 2 3 4 5
| IF EXISTS (SELECT * FROM sys.databases WHERE name = 'XXXX')
BEGIN
DROP DATABASE XXXX;
END;
CREATE DATABASE XXXX |
;
Celui de création du login
Code:
1 2
| USE [MASTER];
CREATE LOGIN [XXXX] WITH PASSWORD='2222', DEFAULT_DATABASE=[XXXX], DEFAULT_LANGUAGE=[Français], CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF; |
Enfin celui du User
Code:
1 2 3 4
| IF EXISTS (SELECT * FROM sys.database_principals WHERE name = N'XXXX') BEGIN
DROP USER [XXXX]
end;
CREATE USER [XXXX] FOR LOGIN [XXXX] WITH DEFAULT_SCHEMA=[XXXX]; |
Je n'ai aucune erreur d'exécution.
Dans l'image jointe on voit pour la base XXX qu'elle n'est pas attribuée à l'utilisateur et qu'aucun droit ne lui est attaché.
Merci de vos conseils