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

Développement SQL Server Discussion :

Échec de l'ouverture de session de l'utilisateur UserName


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2006
    Messages
    229
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2006
    Messages : 229
    Par défaut Échec de l'ouverture de session de l'utilisateur UserName
    Bonjour messieurs,

    J'ai développé une application delphi7 avec comme base de données Sql Serveur 2005.
    J'utilise ADO comme composant de donnée. En monoposte l'application marche comme je le souhaite.
    Pour déployement Client/Serveur de l'application sur les différents postes client(poste utilisateur), j'ai donc crée un compte utilisateur avec tous les droits sur le serveur qui héberge la base de données et
    j'utilise ce compte dans ma connexionstring depuis mon application (Mode Connexion "Authentification SQL Serveur").
    Quand je lance l'application depuis un PC client, elle se connecte à la base de données mais quand j'essaie d'ouvrir une table j'ai le message d'erreur suivant :
    " Échec de l'ouverture de session de l'utilisateur 'UserName" (avec UserName égal au compte crée sur le serveur).
    Voici ma connexionString :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     ADO_Connect.ConnectionString:='Provider=SQLOLEDB.1;'+
    'Password='+ServeurPass+';Persist Security Info=False;'+
    'User ID='+ServeurUser+';'+
    'Initial Catalog='+trim(DataBase)+';'+
    'Data Source='+trim(serveur)+';'+
    'Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;'+
    'Workstation ID=localhost;Use Encryption for Data=False;'+
    'Tag with column collation when possible=False';
    try
    ADO_Connect.Connected := True;
    except
    end;
    Je voudrais la cause de cet erreur.
    Merci pour votre aide!

  2. #2
    Membre actif
    Homme Profil pro
    R&D
    Inscrit en
    Avril 2004
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : R&D

    Informations forums :
    Inscription : Avril 2004
    Messages : 127
    Par défaut
    Citation Envoyé par Klemsy78 Voir le message
    Pour déployement Client/Serveur de l'application sur les différents postes client(poste utilisateur), j'ai donc crée un compte utilisateur avec tous les droits sur le serveur qui héberge la base de données et
    j'utilise ce compte dans ma connexionstring depuis mon application (Mode Connexion "Authentification SQL Serveur").
    Si j'ai bien compris, tu utilise la sécurité SQL Server même.
    Il faut donc créer la connexion SQL Server (dans Management Studio ou CREATE LOGIN) puis attribuer les droits de ta base de données (dans SSMS ou CREATE USER, i.e. db_owner) à cette connexion.

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2006
    Messages
    229
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2006
    Messages : 229
    Par défaut
    Oui c'est ce que j'ai fais.
    Mais en même temps je me demande es-ce que le problème ne viendrait pas du pilote SQL Native Client que je devrais déployer et configurer sur les pc client.

  4. #4
    Membre actif
    Homme Profil pro
    R&D
    Inscrit en
    Avril 2004
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : R&D

    Informations forums :
    Inscription : Avril 2004
    Messages : 127
    Par défaut
    Citation Envoyé par Klemsy78 Voir le message
    Mais en même temps je me demande es-ce que le problème ne viendrait pas du pilote SQL Native Client que je devrais déployer et configurer sur les pc client.
    Pour se connecter à 2005 le MDAC 2.8 est suffisant

    Voici ma chaîne de connexion pour Delphi 2007 qui fonctionne correctement avec ADO (dbGo)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    const
       MSSQLConnString = 'Provider=SQLOLEDB.1;Persist Security Info=True;Data Source=%s;Initial Catalog=%s;User ID=%s;Password=%s';

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2006
    Messages
    229
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2006
    Messages : 229
    Par défaut
    Ok Merci. Je vais essayer cela.
    Mais je voudrais savoir quel est le rôle de MDAC sur les pc client?
    Et quel est donc la différence entre SQL Serveur Native Client Et MDAC?
    Merci pour votre explication.

  6. #6
    Membre actif
    Homme Profil pro
    R&D
    Inscrit en
    Avril 2004
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : R&D

    Informations forums :
    Inscription : Avril 2004
    Messages : 127
    Par défaut
    Citation Envoyé par Klemsy78 Voir le message
    Ok Merci. Je vais essayer cela.
    Mais je voudrais savoir quel est le rôle de MDAC sur les pc client?
    Et quel est donc la différence entre SQL Serveur Native Client Et MDAC?
    Merci pour votre explication.
    Après sa version 2.8, MDAC fait la partie Windows (Windows DAC pour Vista et +) et contient les composants d'accès aux BDD/fichiers. Par contre, le niveau de la compatibilité fonctionnelle est SQL Server 2000. Cela veut dire, la connexion est assuré mais les nouveautés (i.e. les types de données) ne peuvent pas être utilisés.

    Donc pour avoir 100% de compatibilité il est nécessaire installer SQL Server Native Client qui fournit ODBC et OLE DB basés sur la même DLL (attention, OLE DB est renoncé par MS récemment).

    Attention aussi sur 32/64 bits puisque Delphi7 produit l'appli 32-bits alors que le packages de Native Client peut être en 64 bits sous OS de 64 bits. Dans ce cas il faut installer le package Native Cleint de 32 bits en plus.

Discussions similaires

  1. Réponses: 4
    Dernier message: 20/09/2010, 21h41
  2. Réponses: 6
    Dernier message: 09/07/2009, 09h24
  3. Échec de l'ouverture de session de l'utilisateur \ASPNET
    Par soso78 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 25/01/2009, 12h01
  4. [SSIS][2k5] Échec de l'ouverture de session de l'utilisateur
    Par franculo_caoulene dans le forum SSIS
    Réponses: 0
    Dernier message: 22/02/2008, 16h38
  5. échec de l'ouverture de session de l'utilisateur
    Par Phiss dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 11/08/2006, 13h36

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