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

Accès aux données Discussion :

Connexion entre Entity Framework et PostgreSQL


Sujet :

Accès aux données

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 37
    Par défaut Connexion entre Entity Framework et PostgreSQL
    Bonjour,

    Je souhaite migrer une base MS SQL vers une base PostgreSQL (par curiosité pour l'open-source et par soucis de licence).
    J'ai effectué la migration à la main (d'ailleurs, si vous avez une solution plus robuste et automatisée, je suis preneur).
    Et il me reste à présent à connecter ma base à mon projet, ce dernier s'appuyant sur Entity Framework.

    C'est ici que je bloque : Comment re-créer le schéma à partir d'une base PostgreSQL avec l'assistant ce créations de Classes LINQ to SQL ? Je n'arrive pas à me connecter à la base PostgreSQL.
    Le driver psqlODBC ne semble pas être compatible avec l'explorateur de serveur, et les plug-ins PostgreSQL sont visiblement payants.

    Merci d'avance pour vos conseils et vos éclaircissements.

  2. #2
    Rédacteur
    Avatar de WOLO Laurent
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2003
    Messages
    2 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 741
    Par défaut
    Bienvenu dans le monde du sois-disant open source.

    Découvrez la FAQ de MS SQL Server.
    La chance accorde ses faveurs aux esprits avertis !

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par Kivenkantaja Voir le message
    Et il me reste à présent à connecter ma base à mon projet, ce dernier s'appuyant sur Entity Framework.

    C'est ici que je bloque : Comment re-créer le schéma à partir d'une base PostgreSQL avec l'assistant ce créations de Classes LINQ to SQL ? Je n'arrive pas à me connecter à la base PostgreSQL. Le driver psqlODBC ne semble pas être compatible avec l'explorateur de serveur, et les plug-ins PostgreSQL sont visiblement payants.
    Déjà il ne faut pas tout mélanger, Linq to SQL et Entity Framework sont deux ORM différents sans lien entre eux. Linq to SQL ne supporte que SQL Server. Entity Framework peut supporter n'importe quel type de SGBD pourvu qu'il existe un provider ADO.NET compatible EF.

    Ne te fatigue pas avec le driver ODBC, de toutes façons il ne sera pas compatible avec EF. Il y a un vrai provider ADO.NET, Npgsql, qui est gratuit et qui supporte EF.

    Citation Envoyé par WOLO Laurent Voir le message
    Bienvenu dans le monde du sois-disant open source.
    Je ne comprends pas l'intérêt de cette remarque... Pourquoi soi-disant ? A ma connaissance PostgreSQL est bien open-source, et il existe un provider ADO.NET open-source, alors où est le problème ?

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 37
    Par défaut
    Citation Envoyé par tomlev Voir le message
    Déjà il ne faut pas tout mélanger, Linq to SQL et Entity Framework sont deux ORM différents sans lien entre eux. Linq to SQL ne supporte que SQL Server. Entity Framework peut supporter n'importe quel type de SGBD pourvu qu'il existe un provider ADO.NET compatible EF.

    Ne te fatigue pas avec le driver ODBC, de toutes façons il ne sera pas compatible avec EF. Il y a un vrai provider ADO.NET, Npgsql, qui est gratuit et qui supporte EF.
    Très bien merci pour cet éclaircissement ! J'utilise en effet Linq to SQL, donc la question de PostgreSQL est réglée ...

    Mais vos précisions au sujet d'EF, du driver ODBC et de Npgsql me sont précieuses.

    Merci beaucoup pour votre aide.

  5. #5
    Rédacteur
    Avatar de WOLO Laurent
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2003
    Messages
    2 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 741
    Par défaut
    Citation Envoyé par tomlev Voir le message
    Je ne comprends pas l'intérêt de cette remarque... Pourquoi soi-disant ? A ma connaissance PostgreSQL est bien open-source, et il existe un provider ADO.NET open-source, alors où est le problème ?
    En fait, tout ce qui est open-source vous coutera chèr dans la documentation de prise en main sans comptant les plug-in à payer !!!

    Découvrez la FAQ de MS SQL Server.
    La chance accorde ses faveurs aux esprits avertis !

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par WOLO Laurent Voir le message
    En fait, tout ce qui est open-source vous coutera chèr dans la documentation de prise en main sans comptant les plug-in à payer !!!
    Ca a déjà été dit des milliers de fois, mais je le répète quand même pour que ça rentre bien... open-source ne veut pas dire gratuit. Il est tout à fait possible de vendre un logiciel open-source, ou de vendre du support ou des outils (plugins par exemple) en relation avec un logiciel open-source. Donc ta remarque sur le "soi-disant open-source" n'a pas de sens... peut-être que tu voulais dire "soi-disant gratuit", mais c'est tout aussi faux : l'open-source n'a jamais prétendu être gratuit.

    Bref, désolé du hors-sujet, mais ta remarque l'était aussi

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 37
    Par défaut
    Je me permets de ressusciter mon post, puisque je bloque à nouveau sur Npgsql et EF.

    Dans VS, je souhaite créer un nouveau "ADO.NET Entity Data Model" et le connecter à ma base, fournie par Npgsql. Mais les sources proposée ne sont que des sources MS SQL.

    Je vois bien que Npgsql propose des fonctions équivalents à SQLConnect(), mais je ne vois pas comment utiliser le pilote ODBC. Est-ce que je me trompe sur les fonctionnalités de Npgsql ?

  8. #8
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par Kivenkantaja Voir le message
    Dans VS, je souhaite créer un nouveau "ADO.NET Entity Data Model" et le connecter à ma base, fournie par Npgsql. Mais les sources proposée ne sont que des sources MS SQL.
    Quelle version de VS ? Express ou complète ?

    Citation Envoyé par Kivenkantaja Voir le message
    Je vois bien que Npgsql propose des fonctions équivalents à SQLConnect(), mais je ne vois pas comment utiliser le pilote ODBC. Est-ce que je me trompe sur les fonctionnalités de Npgsql ?
    Je ne vois pas le rapport avec ODBC... Npgsql gère directement la connection à la base PostgreSQL, ça ne passe pas par ODBC

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 37
    Par défaut
    Bonjour,

    Citation Envoyé par tomlev Voir le message
    Quelle version de VS ? Express ou complète ?
    VS 2010 Ultimate.

    Citation Envoyé par tomlev Voir le message
    Je ne vois pas le rapport avec ODBC... Npgsql gère directement la connection à la base PostgreSQL, ça ne passe pas par ODBC
    Disons que je m'attendais à avoir accès à ma base PostgreSQL via un assistant de création de schéma (un peu comme psqlODBC qui permets au final d'utiliser un drag'n'drop pour créer son DataSet).

  10. #10
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Apparemment Npgsql ne gère pas le support du designer... il y a des outils en ligne de commande à la place. Jette un oeil à cet article :
    http://npgsql.com/index.php/2009/08/...npgsql-part-1/

  11. #11
    Membre émérite Avatar de NicoL__
    Homme Profil pro
    Architecte
    Inscrit en
    Janvier 2011
    Messages
    399
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte

    Informations forums :
    Inscription : Janvier 2011
    Messages : 399
    Par défaut
    Sinon pour la migration de ta base, tu peux utiliser Talend Open Studio, comme son nom l'indique il est open source, il est aussi gratuit ;-) mais il faut quand même travailler un peu pour que ça marche !

  12. #12
    Rédacteur
    Avatar de WOLO Laurent
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2003
    Messages
    2 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 741
    Par défaut
    Est qu'il est entrain d'envisager une migration, je ne pense pas.

    Découvrez la FAQ de MS SQL Server.
    La chance accorde ses faveurs aux esprits avertis !

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 37
    Par défaut
    Merci pour l'article sur le blog Npgsql. Ils annoncent la prise en charge de l'assistant (design-time) pour les prochaines versions.

    Concernant Talend, j'aurai peut-être en effet pu regarder de ce côté-là, mais la base étant petite, j'ai fait la migration à la main.

    Mais bon le passage de MSSQL vers PostgreSQL est plus compliqué que prévu. Je pense ça revient au même pour MySQL ?

    En tous cas merci pour vos conseils.

  14. #14
    Membre Expert Avatar de iberserk
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Novembre 2004
    Messages
    1 795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 795
    Par défaut
    De toute façon préférez postgre à MySql...

    Juste pour rebondir sur les licences MSSQL jetez un coup d'oeil à la nouvelle licence proposée avec SQL SERVER 2008 R2: webEdition: c'est du lowcost avec peu de limitation technique (performances, volumétrie) et dédié aux appli web client serveur type ASP.NET...

  15. #15
    Membre averti
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 37
    Par défaut
    Citation Envoyé par iberserk Voir le message
    De toute façon préférez postgre à MySql...

    Juste pour rebondir sur les licences MSSQL jetez un coup d'oeil à la nouvelle licence proposée avec SQL SERVER 2008 R2: webEdition: c'est du lowcost avec peu de limitation technique (performances, volumétrie) et dédié aux appli web client serveur type ASP.NET...
    Merci pour les infos. Je ne connaissais pas cette web edition lowcost. C'est une solution intéressante. Merci

Discussions similaires

  1. connexion entre postgresql et access
    Par haythem_87 dans le forum Outils
    Réponses: 2
    Dernier message: 01/07/2012, 22h03
  2. Entity Framework - Chaine de connexion
    Par Wilfried Woivré dans le forum Accès aux données
    Réponses: 3
    Dernier message: 23/10/2009, 17h26
  3. Probleme de connexion avec Entities Framework
    Par gstrit dans le forum Général Dotnet
    Réponses: 4
    Dernier message: 09/06/2009, 09h09
  4. Difference entre Entity Framework / Hibernate.
    Par gregb34 dans le forum Framework .NET
    Réponses: 22
    Dernier message: 04/04/2009, 13h42
  5. WCF, Entity Framework et problème de chaîne de connexion
    Par mike1808 dans le forum Windows Communication Foundation
    Réponses: 1
    Dernier message: 10/10/2008, 09h34

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