PostgreSQL + Visual Studio 2008

Hallo!

Ist es möglich aus VS2008 heraus, über den “Server-Explorer”, eine Verbindung zu einer PostgreSQL DB aufzubauen? Für MS-SQL, Oracle und MySQL gibts ja jeweils eine Visual Studio Integration inkl .NET Data Provider.

Für PostgreSQL habe ich auch einen solchen Data Provider gefunden (Npgsql - .Net Data Provider for Postgresql), allerdings weis ich nicht wie man den richtig installiert?! Habe folgendes ausgeführt:

gacutil -i Npgsql.dll
gacutil -i Mono.Security.dll

aber in VS2008 gibt es keine neuen Optionen für eine PostgreSQL Datenquelle.

Vielen Dank im Voraus!
Gruß spooky

Theoretisch kannst Du das auch mit einen ODBC Treiber machen (PgFoundry: psqlODBC: Project Info).

Ja den hab ich schon probiert. Funktioniert soweit. Wollte aber den direkten .NET Data Provider probieren. Bei MySQL ist es schneller als ODBC und die VS Integration hat auch noch paar extra Funktionen.

Ich hab jetzt hier kein VS installiert aber ging das nicht über Komponenten und dann dort die .dll auswählen?! Den rest macht dann VS…

Aber das hab ich nur noch sehr sehr dunkel im Hinterkopf…

cu tb.

Hallo

Ich hatte vor zwei Wochen das gleiche Problem, benutzte aber VS 2005.
Grundsätzlich hasst du schon mal mit der Installation allles richtig gemacht.
Nun musst du die NPgsql.dll in dein Projekt einbinden!

Das geht über den Projektmappen Explorer - Rechte Maustaste auf Verweise und “Verweis hinzufügen” anklicken. Dann unter dem Reiter “Durchsuchen” deine heruntergeladene Npgsql.dll auswählen.

Danach kannst du auf alle Klassen der Npgsql.dll zugreifen.
Im Quellcode musst du noch die Bilbiothek einbinden!

using Npgsql;

viel Spaß

Moin,

ich bin leider ein blutjunger Anfänger und bekomme es nicht hin eine Postgresql Datenbank in Visual Studio mit ODBC einzubinden.

Könnte mir da vielleicht jemand helfen ?

Gruß
Wolli

Was ist den genau das Problem? Fehlermeldungen? Was has Du bis jetzt schon?

Im prinzip das gleiche wie mit dem dotNET Treiber: Postgres-ODBC Treiber ziehen (PgFoundry: psqlODBC: Project Info), die entsprechende DLL in dein /bin/debug bzw release. dann unter Verweise die DLL zufügen und dann in deinem Projekt den Treiber mit Imports… oder useing… verfügbar machen und dann mit einer der hunderten von Möglichkeiten auf die DB zugreifen. Wird aber nicht grafisch sondern nur programatisch gehen.

PS: Habs nicht probiert, aber es läuft immer nach dem selben Muster.

Das ist gar nicht notwendig. Es reicht, wenn die DLL unter Verweise mit eingefügt wird. Dann sollte diese automatisch in das entsprechende bin Verzeichnis mit kopiert werden und auch automatisch bei einem Setup, etc. mit ausgeliefert.

Wenn es sich um einen richtigen .NET Dataprovider handelt wirst Du ein using brauchen.

Hallo Spooky,

Um deine ursprüngliche Frage zu beantworten. Nein, es ist nicht möglich mit dem Npgsql ADO.NET Provider den Server Explorer zu benutzen, da der Npgsql keine Integration in Visual Studio .NET mitbringt.

Trotzdem funktioniert der ADO.NET Provider einwandfrei und kann Ihn nur empfehlen.

Wenn du auf die Integration in Visual Studio .NET nicht verzichten möchtest, kannst du den PostgreSql Provider der Firma Devart erwerben (High Perfomance ADO.NET Provider for PostgreSQL with Significantly Improved Abilities). Ich empfehle dir den Provider nicht, da ich keine guten Erfahrungen damit gemacht habe.

An deiner Stelle würde ich mich erstmal in C# einarbeiten und Grundlagen der Datenbankprogrammierung zu bekommen. Nähere Informationen kannst du auch hier entnehmen: C# - Galileo OpenBook

P.S.: Kleiner Tipp: Wenn du mit .NET arbeitest dann bitte immer ein ADO.NET Provider verwenden und niemals ODBC.

Hallo,
ich glaub, ich muss mich ersteinmal entschuldigen, wiel ich mich nicht so lange gemeldet habe, sorry :astonished:
also der odbc treiber ist bei mir korrekt installiert, konnte auch darüber eine verbindung zur postgre datenbank aufbauen.
was ich aber gerne wissen wollte, war, ob es möglich ist mit dem visual studio 2008, das ich die datenbank dort über den explorer angezeigt bekomme, denn bis jetzt bietet er mir ja nur die möglichkeit an, mich mit microsoft konforme datenbanken zu verbinden.
ich hoffe, ich werde jetzt nicht erschlagen :wink:

Schau mal unter Verbindung hinzufügen -> Datenquelle ändern (wechseln) und dort dann auswählen. Dann kannst unten unter “Datenanbieter” .NEtFramework-Datenanbieter für ODBC auswählen.

Sorry das ich mich solange nicht gemeldet habe… wollte nur sagen das mein ursprüngliches Problem gelöst ist. Benutzte seit längerem den Npgsql ADO.NET Provider und alles flutscht… Danke und Gruß! :smiley:

Hallo spooky,

mich würde interessieren, ob du den Npgsql ADO.NET Provider jetzt im VS - Server Explorer integriert konntest?

Hallo Bubblegum!

Ich benutze den normalen PostgreSQL ODBC Treiber. Den habe ich im Server Explorer integriert und alles läuft… :slight_smile:

Gruß spooky