IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration SQL Server Discussion :

Gérer les utilisateurs de SQL Server via requete


Sujet :

Administration SQL Server

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    646
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 646
    Points : 240
    Points
    240
    Par défaut Gérer les utilisateurs de SQL Server via requete
    Bonjour,

    Aujourd'hui pour ajouter et paramétrer les utilisateurs sous SQL, je passe par le SSMS. Est-ce qu'il est possible de gérer les utilisateurs via requetes.
    Je le demande surtout pour pouvoir changer le paramètre de langue de certains utilisateur (francais/anglais).

    Je passes aujourd'hui par la sp_defaultlanguage, mais j'arrive pas à afficher/connaitre la langue de tel utilisateur via requete.

    Merci

  2. #2
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    Bonjour,

    Je le demande surtout pour pouvoir changer le paramètre de langue de certains utilisateur (francais/anglais).
    Attention, le langage set attaché à un login, pas à un utilisateur.

    Pour trouver ce que vous cherchez :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT name, default_language_name
    FROM sys.server_principals
    Dès lors pour modifier la langue associée à une utilisateur, vous devez utiliser l'instruction ALTER LOGIN et non plus sp_defaultlanguage qui est dépréciée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ALTER LOGIN monLogin
    WITH DEFAULT_LANGUAGE = English
    Dès lors vous pouvez écrire une procédure stockée à laquelle vous passez un nom de login et un langage pour exécuter la modification pour vous en SQL dynamique :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    CREATE PROCEDURE PsChangeLangageLogin
    	@nomLogin SYSNAME,
    	@nomLangage SYSNAME
    AS
    BEGIN
    	-- Vérification de la validité des paramètres
    	IF NOT EXISTS
    	(
    		SELECT *
    		FROM sys.server_principals
    		WHERE name = @nomLogin
    	)
    	BEGIN
    		RAISERROR('Le login %s n''existe pas', 16, 1, @nomLogin)
    	END
     
    	IF NOT EXISTS
    	(
    		SELECT *
    		FROM sys.syslanguages
    		WHERE name = @nomLangage
    	)
    	BEGIN
    		RAISERROR('Le language %s n''existe pas', 16, 1, @nomLangage)
    	END
     
    	-- Exécution
    	DECLARE @SQL VARCHAR(128)
    	SET @SQL = 'ALTER LOGIN ' + @nomLogin + ' WITH DEFAULT_LANGUAGE = ' + @nomLangage
    	EXEC (@SQL)	
    END
    @++

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    646
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 646
    Points : 240
    Points
    240
    Par défaut
    Citation Envoyé par elsuket Voir le message
    Attention, le langage est attaché à un login, pas à un utilisateur.
    mm en fait oui je pensai login, mais je comprend pas trop la nuance, c'est pas pareil?

    Sinon , je connaissai ALTER LOGIN, et ce qui me manquait c'etait comment trouver l'information, donc dans sys.server_principals.
    Merci pour les infos et sp

    Est-ce qu'il existe une doc qui répertorie toutes les tables systèmes ainsi que les informations(colonne) qu'elles contiennent?

  4. #4
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    mm en fait oui je pensai login, mais je comprend pas trop la nuance, c'est pas pareil?
    Non, vous pouvez voir dans ce billet la différence

    Est-ce qu'il existe une doc qui répertorie toutes les tables systèmes ainsi que les informations(colonne) qu'elles contiennent?
    Pour avoir toutes les tables système sous les yeux, vous pouvez utiliser les posters

    Pour le détail des colonnes, je ne peux que vous conseiller de consulter la documentation que vous pouvez consulter ou télécharger depuis les liens dans ma signature.

    @++

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    646
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 646
    Points : 240
    Points
    240
    Par défaut
    Favoris

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Lister les utilisateurs MS SQl Server
    Par thinker dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 21/06/2007, 14h43
  2. Help!! Probleme avec les dates sur SQL SERVER
    Par Nadaa dans le forum MS SQL Server
    Réponses: 16
    Dernier message: 03/08/2006, 16h55
  3. Réponses: 3
    Dernier message: 11/05/2006, 17h30
  4. Gérer les dates avec SQL Server 2000
    Par saby dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 25/01/2006, 18h06
  5. Gérer les queue avec sql server ?
    Par devdev dans le forum MS SQL Server
    Réponses: 8
    Dernier message: 17/06/2004, 17h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo