Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 10 sur 10
  1. #1
    Candidat au titre de Membre du Club
    Inscrit en
    septembre 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : septembre 2008
    Messages : 46
    Points : 12
    Points
    12

    Par défaut MSSQL - DBEXPRESS Drivers

    Bonjour à tous,
    J'utilise Delhi XE2 et Sql Server 9.0.4053 placé sur une machine distante du réseau.

    Je parviens à me connecter à ma BD sans problème avec les composants ADO.

    Mais, je suis passé à la version entreprise de Delphi et je peux donc utiliser l'explorateur de données intégré.

    Ce dernier utilise Dbexpress pour faire la connexion.

    Le message d'erreur rencontré est :

    "Borland.Data.TDBXError: Erreur DBX : Le pilote n'a pas été correctement initialisé. La bibliothèque client est manquante, n'est pas installée correctement, sa version est incorrecte, ou le pilote n'est pas dans le chemin système."

    Pouvez vous m'aider ?

    Merci !

  2. #2
    Invité de passage
    Inscrit en
    août 2008
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : août 2008
    Messages : 6
    Points : 4
    Points
    4

    Par défaut

    Bonjour,

    Voila j'utilise XE3 avec Datasnap.
    J'essaye de mettre mon serveur datasnap qui se connecte à une base de données SQL serveur 2005 sur une autre machine que ma machine de developpement, mais malheureusement à chaque démarrage j'ai le message suivant : "Erreur DBX, le pilote n'a pas été correctement initialisé. la bibliothèque client est manquante, n'est pas installée correctement, sa version est incorrecte, ou le pilote n'est pas dans le chemin système", j'ai pourtant copié toutes les dlls préconisées par embarcadero dans tous les repertoires système mais cela ne marche pas ????

    Est ce que quelqu'un à une solution ?

    Merci d'avance.

  3. #3
    Membre confirmé
    Homme Profil pro André MANIN
    Développeur informatique
    Inscrit en
    août 2005
    Messages
    206
    Détails du profil
    Informations personnelles :
    Nom : Homme André MANIN
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : août 2005
    Messages : 206
    Points : 259
    Points
    259

    Par défaut j'ai eu le même problème avec firebird

    Pour résoudre le problème je me suis mis sur le réseau de production et j'ai créer la connexion.

    Quand je développe, j'active la connexion locale, et avant de déployer je compile avec avec la connexion de Production.

    Ce n'est pas la bonne méthode mais ça fonctionne.

    Cordialement

    André

  4. #4
    Expert Confirmé Sénior Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    juillet 2006
    Messages
    10 020
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : juillet 2006
    Messages : 10 020
    Points : 12 809
    Points
    12 809

    Par défaut

    Citation Envoyé par dmahistre Voir le message
    j'ai pourtant copié toutes les dlls préconisées par embarcadero dans tous les repertoires système mais cela ne marche pas ????
    C'est génant car c'est la procédure à suivre pour ton déploiement

    Vérifie ton TSQLConnection, les propriétés VendorLib, LibraryName, Function ... idéalement pour ne pas être dépendant des fichiers INI

    Si tout est OK à ce niveau

    tu as plusieurs solutions
    - utiliser le Driver ODBC via DBExpress, cela revient plus ou moins à utiliser ADO, où je travaille on l'utilise parfois au lieu de ASA Sybase pour lire un DB archivée en mode fichier et non en mode serveur TCPIP
    Le Driver ODBC est souvent fourni par MS en ce qui concerne SQL Server

    - utiliser le Driver MS SQL via DBExpress et vérifier si tu as VRAIMENT déployé ce qui recommandé dans Deploying dbExpress Database Applications, il suffit d'un mauvais paramètrage dans TSQLConnection pour provoquer ce problème ou alors l'utilisation d'une DLL non approuvée (testée) par Embarcadero : Release Notes for XE3 :

    Microsoft SQL Server 2008, 2005, 2000 (Ent/Ult/Arch) (Driver dbxMSS.dll, Client sqlncli10.dll)

    Note: Clients are available for download from the vendors' websites.
    dbxMSS.dll = DLL de Embaracero => LibraryName
    sqlncli10.dll = DLL de Microsoft (non fourni par Delphi) => VendorLib

    Il te faut installer le client SQL Server ou au moins les DLL minimum nécessaires !


    - utiliser un AUTRE Driver MS SQL via DBExpress comme ceux de Devart CoreLab qui fournis un Kit d'install plus simple !
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

    Halte à la ségrégation des Cinémas, VO sur Paris, VF en Banlieue, Abonnement résilié !

  5. #5
    Invité de passage
    Inscrit en
    août 2008
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : août 2008
    Messages : 6
    Points : 4
    Points
    4

    Par défaut

    merci pour vos réponse je vais tester cela.

  6. #6
    Invité de passage
    Inscrit en
    août 2008
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : août 2008
    Messages : 6
    Points : 4
    Points
    4

    Par défaut

    re...

    Bon en cherchant je me suis aperçu que le problème n'est pas au niveau des drivers pour MSSQL mais au niveau de DATASNAP.
    L'erreur n'arive pas au moment de la connexion mais au moment de l'ouverture du clientdataset ???

    Je continu à chercher, si quelqu'un a une idée ...je suis preneur ..

    Merci

  7. #7
    Expert Confirmé Sénior Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    juillet 2006
    Messages
    10 020
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : juillet 2006
    Messages : 10 020
    Points : 12 809
    Points
    12 809

    Par défaut

    Tes ClientDataSet sont-ils correctement lié par la propriété ProviderName (perso, je préfère la méthode SetProvider()) à un TProviderDataSet ce dernier étant connecté sur un TSQLQuery par exemple

    pense à faire le Open sur le TSQLQuery puis sur le TClientDataSet

    le TSimpleDataSet regroupe le ClientDataSet, le TSQLQuery et ClientDataSet en un seul objet

    Pour DataSnap, je n'ai pas eu la chance de participer à l'actuelle migration DCOM vers DataSnap de nos serveurs, à part Midas.dll à déployer, j'ignore les autres pré-requis
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

    Halte à la ségrégation des Cinémas, VO sur Paris, VF en Banlieue, Abonnement résilié !

  8. #8
    Invité de passage
    Inscrit en
    août 2008
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : août 2008
    Messages : 6
    Points : 4
    Points
    4

    Par défaut

    Re...

    Bon j'ai contacté Embarcedero a ce sujet, ils m'ont conseillé de mettre dans le uses midaslib mais cela ne change rien ????

    J'ai essayé sur une autre machine avec XE3 et bien sur cela fonctionne ....

    J'attends toujours une réponse d'embarcedero ....

    Salut ...

  9. #9
    Membre habitué Avatar de castorcharly
    Homme Profil pro
    Chef de projet
    Inscrit en
    février 2009
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58

    Informations professionnelles :
    Activité : Chef de projet
    Secteur : Biens de consommation

    Informations forums :
    Inscription : février 2009
    Messages : 278
    Points : 133
    Points
    133

    Par défaut

    Bonjour,

    Je relance ce post, car j'ai le même problème avec Dbexpress.
    Voici ma config de dev:

    Win7 64 - Delphi XE2 - MSSQL 2008.

    Sur cette machine de dev, tout fonctionne.

    Sur machine de prod, Win7 64, loggé en tant qu'admin du poste.
    je prends les dll dbxmss.dll et sqlncli10.dll que je place dans les répertoire system32 et sysWOW64 et j'obtiens le même message que vu ci-dessus.
    Juste un truc, pour que dbxmss.dll soit trouvé, je dois le mettre dans Windows et non System32 !

    Pour tester, voici ce que j'ai fait.
    Sur ma machine de Dev, j'ai renommé toutes les copies de sqlncli10.dll et dbxmss.dll et je n'ai conservé QUE dbxmss.dll dans Windows et sqlncli10.dll dans SysWOW64.
    Mon programme tourne.

    J'ai fait la même chose sur la machine de Dev et nada, toujours le même message.

    Je ne sais plus où chercher HELP

  10. #10
    Membre habitué Avatar de castorcharly
    Homme Profil pro
    Chef de projet
    Inscrit en
    février 2009
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58

    Informations professionnelles :
    Activité : Chef de projet
    Secteur : Biens de consommation

    Informations forums :
    Inscription : février 2009
    Messages : 278
    Points : 133
    Points
    133

    Par défaut

    Bonjour,

    Et bien j'ai fini par trouver une solution.
    Téléchargement du msi d'install de sqlncli.
    Il existe trois versions pour SQL 2008: X86, X64 et IA64.

    Pour le trouver j'ai fait une recherche sur Microsoft SQL Server 2008 R2 Native Client

    Maintenant, il ne me reste plus qu'a tenter de comprendre ce qui manquait à sqlncli10.dll pour permettre le fonctionnement du client, sans avoir à utiliser ce package.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •