Soutenez-nous
Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 7 sur 7
  1. #1
    Invité de passage
    Homme Profil pro
    Développeur informatique
    Inscrit en
    novembre 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : novembre 2011
    Messages : 6
    Points : 2
    Points
    2

    Par défaut Accès natif et Visual Studio

    Bonjour à tous,

    Je suis en phase de développement d'un outils exploitant une base de données informix sur IBM AIX, je me connecte à l'heure actuelle à ma base informix en utilisant le driver odbc, mais les performances et les temps de réponse sont très long au vu de la complexité des requêtes que je lance...
    Je cherche à améliorer tout ça en utilisant un autre type de connexion pour exploiter les données de ma BDD.
    J'ai lu qu'IBM avait "pondu" un accés natif pour les développeurs utilisant visual studio (je développe en VB.Net) mais je n'arrive pas à m'y retrouver sur leur site et ne sais donc pas quoi installer (il y a bien le IBM sdk mais j'ignore qu'elle version prendre ni comment le configurer)...

    Pourriez-vous me guider dans mes recherches ainsi que dans la marche à suivre ?

    Merci d'avance pour vos réponses.

  2. #2
    Membre du Club
    Inscrit en
    juillet 2010
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : juillet 2010
    Messages : 33
    Points : 40
    Points
    40

    Par défaut

    Bonjour,

    Voici un morceau de la documentation pour référence:

    ----------------------
    Informix .NET Provider (Windows)

    Informix .NET Provider est automatiquement installé lorsque vous installez Client SDK si Microsoft .NET Framework est déjà installé sur le système. Informix .NET Provider est copié et enregistré dans Global Assembly Cache (GAC).

    Client SDK a besoin du kit de développement de logiciels Microsoft .NET Framework complet. Informix Connect requiert uniquement l'installation du module Microsoft .NET Framework Redistributable.
    ----------------------
    http://publib.boulder.ibm.com/infoce...ds_cpi_021.htm

    Aller la page de téléchargement suivante:
    http://www14.software.ibm.com/webapp...h.jsp?rs=ifxdl

    Tu limites ta recherche à Windows 32 ou 64 bits et "Released product".

    On peut dire qu'il y a deux familles de produit pour le SDK, la version 3.50 et 3.70 qui correspondent aux versions du moteur 11.50 et 11.70. Tu peux prendre la version 3.70 même si tu n'utilises pas un moteur 11.70 grâce à la compatibilité ascendante.

    Tu prends la version 3.70.TC4DE qui est la toute dernière disponible.

    Le 'T' de TC4 veut dire que c'est du 32 bits. Si tu prenais du FC4, le 'F' serait pour 64 bits.

    Il faudra te faire un compte sur le site pour pouvoir télécharger le produit, bien sûr le SDK est gratuit.

    Les "release notes" sur .Net:
    http://publib.boulder.ibm.com/infoce...c4/netrel.html

    On peut aussi taper ".Net" dans le champ de saisie de la page de documentation.

    Hope this help.

  3. #3
    Invité de passage
    Homme Profil pro
    Développeur informatique
    Inscrit en
    novembre 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : novembre 2011
    Messages : 6
    Points : 2
    Points
    2

    Par défaut

    Bonjour,

    Merci pour la réponse , j'ai bien installé le sdk 3.50 mais je bloque au niveau de visual studio.
    J'ai bien ajouté la référence dans mon projet visual studio, mais je ne sais pas qu'elle chaine de connexion utiliser, à l'heure actuelle je passe par le driver odbc (exemple ci-dessous) :

    Code :
    Public myConnection AS New OdbcConnection("Driver={IBM INFORMIX ODBC DRIVER};Host=localhost;Server=" + serveur + ";Protocol=olsoctcp;Database=" + Base + ";Uid=" + User + ";Pwd=" + Passwd + "")
    Ce qui engendre des performances médiocres et très limités....

    Quelle type de connexion dois-je utiliser pour palier à ce manque d'efficacité ?

    Si vous pouviez me donner un exemple pour la chaine de connexion afin que je puisse améliorer tout ça.

    Merci d'avance.

  4. #4
    Membre du Club
    Inscrit en
    juillet 2010
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : juillet 2010
    Messages : 33
    Points : 40
    Points
    40

    Par défaut

    Bonjour,

    Je suppose que les informations suivantes trouvées sur le net devraient faire l'affaire ( ? ):

    IBM Informix .NET Provider
    Type .NET Framework Class Library
    Usage IBM.Data.Informix.IfxConnection
    Manufacturer IBM
    Set example values »

    More about this class library »
    Standard
    Database=myDataBase;Host=192.168.10.10;Server=db_engine_tcp;Service=1492; Protocol=onsoctcp;UID=myUsername;Password=myPassword;

    Trouvé sur :

    http://www.connectionstrings.com/informix


    Hope this help.

  5. #5
    Invité de passage
    Homme Profil pro
    Développeur informatique
    Inscrit en
    novembre 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : novembre 2011
    Messages : 6
    Points : 2
    Points
    2

    Par défaut

    Bonjour,

    Merci pour votre réponse, celà m'a été très utile.

    J'ai ajouté la référence IBM.data.informix à mon projet Visual studio mais manifestement il y a encore quelque chose qui coince...

    voici l'erreur que VS me retourne :

    Code :
    Imports IBM.DATA.Informix
    Avertissement 1 Impossible de résoudre l'assembly référencé "IBM.Data.Informix, Version=9.7.4.4, Culture=neutral, PublicKeyToken=7c307b91aa13d208, processorArchitecture=x86", car il dépend de "System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" qui ne figure pas dans le Framework ciblé actuel ".NETFramework,Version=v4.0,Profile=Client". Supprimez les références aux assemblys qui ne se trouvent pas dans le Framework ciblé ou reciblez votre projet. Projet_Appro

    Il ne reconnait pas les command de type IfxConnection, IfxCommand (non défini)... etc.

    J'ai tenté de désinstaller tous mes framework et de les réinstaller mais rien n'y fait, j'ai aussi installé le SDK 3.70 sans résultat.

    Pour info, j'utilise Visual Studio Express 2010, et je suis sous windows 7...

    Ce que je ne comprend pas c'est que je n'ai aucun problème en passant par le driver odbc d'informix...

    Auriez-vous une idée pour que je sorte de cette impasse ?

  6. #6
    Membre du Club
    Inscrit en
    juillet 2010
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : juillet 2010
    Messages : 33
    Points : 40
    Points
    40

    Par défaut

    Bonjour,


    Quelle version exacte du SDK, 32 bits ou 64 ?

    32 = x.xx.TCx
    64 = x.xx.FCx

    Environnement 32, 64 ? Est-ce que ça colle avec le SDK téléchargé ( ? )

    Après, je ne connais pas assez l'environnement MS mais quelque chose me dit qu'il faut sûrement faire ça...

    Résolution des références système et d'assembly utilisateur

    "La boîte de dialogue Ajouter une référence permet de désactiver les assemblys système qui ne concernent pas votre version cible du .NET Framework. (Les assemblys système sont des fichiers .dll qui font partie d'une version .NET Framework.) Cela vous permet d'éviter d'ajouter des références aux assemblys qui ne sont pas dans votre version cible. Si vous modifiez votre fichier projet pour y inclure des références qui appartiennent à une version .NET Framework plus récente que celle actuellement ciblée par votre projet, votre référence ne sera pas résolue. En outre, vous ne pouvez pas ajouter ni utiliser les contrôles qui dépendent de cette référence. Vous pouvez résoudre cette référence en faisant passer la cible du .NET Framework de votre projet à une cible incluant cette référence. Vous pouvez effectuer cette opération dans la page de propriétés du projet. Pour plus d'informations, consultez Gestion des propriétés de projet avec le Concepteur de projets."
    --------
    Trouvé sur http://msdn.microsoft.com/fr-fr/library/bb398197.aspx


    Hope this help.

  7. #7
    Invité de passage
    Homme Profil pro
    Développeur informatique
    Inscrit en
    novembre 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : novembre 2011
    Messages : 6
    Points : 2
    Points
    2

    Par défaut

    Bonjour,

    Après plusieurs tentatives de paramétrage, j'ai enfin réussi à établir une connexion avec ma base informix via mon pgm VB.net !

    La marche à suivre pour l'installation d'IBM Informix .NET Provider (synthèse des mails précédents):

    1) Installer le Client IBM SDK, pour ma part j'ai installé le 3.70 pour système 32bits

    2) Installer les .NET Framework (du 1 au 4), ne pas oublier le Framework 1.1SDK qui est essentiel.

    3) Charger la dll de référence IBM dans visual studio (ajouter une référence):
    --> C:/Programme/IBM Informix Client SDK/bin/netf20/IBM.Data.Informix.dll

    4) Modifier la liaison au Framework par défaut dans visual studio, en effet le Framework 4 est, quand il est installé, utilisé par défaut, et ne permet pas d'utiliser IBM.Data.Informix, pour ma part j'ai redirigé VS vers le .NET 3.5.

    L'url ci-dessous ma permis de connaitre cette manipulation :

    http://msdn.microsoft.com/fr-fr/library/bb398197.aspx

    Bien entendu après avoir fait tout ça, il faut créer la connexion, je me suis servis de cet exemple venant d'IBM :

    http://publib.boulder.ibm.com/infoce...oc/netpr20.htm

    Après tout ça il ne reste plus qu'à se servir de la bibliothèque de classe IBM Informix .NET Provider et le tour est joué. (le site IBM est particulièrement bien fournis, il suffit juste de savoir où chercher)

    Merci à nelem pour toutes les informations qu'il a partagé avec moi, j'espère que ce petit récapitulatif servira à d'autre.

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

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
  •