MonoDevelop MySQL Connector

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
Filshart
Beiträge: 141
Registriert: 11.12.2010 17:05:07

MonoDevelop MySQL Connector

Beitrag von Filshart » 11.01.2011 13:33:11

Hallo

ich habe verschiedene Probleme und Fragen zum '''MySQL Connector''' unter '''MonoDevelop'''.

Ich wollte MySQL Connector/Net (http://dev.mysql.com/downloads/connector/net/) installieren und habe mir das Paket mysql-connector-net-6.3.6-noinstall.zip heruntergeladen. Dann wollte ich es nach der Anleitung Connector/NET Installation (http://dev.mysql.com/doc/refman/5.1/en/ ... -unix.html) installieren.

Nun steht dort in der Anleitung:
In the directory where you unzipped the connector to, change into the bin directory. Ensure the file MySql.Data.dll is present.
Es ist dort aber kein Ordner namens bin vorhanden sondern nur 2 Ordner die v2 und v4 heißen. Bin mir nicht ganz sicher aber steht evtl. für die .Net Version. Das heißt wohl ich nehme lieber v2?

Ein weiteres Problem ist das die der Dateiname der dll-Datei glein geschrieben ist, deshal existiert auch die Datei MySql.Data.dll nicht und der Befehl

Code: Alles auswählen

gacutil /i MySql.Data.dll
kann nicht funktionieren. Soll ich nun den Befehl oder die Datei anpassen?

ich habe es zuerst mit anpassen des Befehls versucht aber MonoDevelop bringt beim einbinden von System.Data nur folgende Meldung:
$HOME/Projects/hallo/hallo/Main.cs(14,14): Error CS0234: The type or namespace name `Data' does not exist in the namespace `System'. Are you missing an assembly reference? (CS0234) (hallo)
Nach einer erfolgreichen Installation sollte MySql.Data.dll unter /usr/lib/mono/gac zu finden sein. Dieser Ordner existiert jedoch gar nicht. Also nicht mal der Ordner mono (Unter Ubuntu schon). Wo liegt der den?

Und zum sSchluss noch die eigentlich Verwendung:
You are now ready to compile your application. You must ensure that when you compile your application you include the Connector/NET component using the -r: command-line option. For example:

shell> gmcs -r:System.dll -r:System.Data.dll -r:MySql.Data.dll HelloWorld.cs

Note, the assemblies that need to be referenced will depend on the requirements of the application, but applications using Connector/NET will need to provide -r:MySql.Data as a minimum.

You can further check your installation by running the compiled program, for example:

shell> mono HelloWorld.exe
Heißt das, dass ich das für jedes Programm in dem ich MySQL verwenden will diesen Befehl erst ausführen muss? Da blick ich nun leider wirklich nicht durch, aber habe auch keine brauchbare Anleitung gefunden.

Danke jedenfalls schonmal.

Milbret
Beiträge: 827
Registriert: 26.05.2008 12:04:54
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Nörten-Hardenberg
Kontaktdaten:

Re: MonoDevelop MySQL Connector

Beitrag von Milbret » 12.01.2011 15:57:38

Klingt alles sehr umständlich.

Eigentlich brauchst du nur die MySQL DLLs.
Im GAC musst du diese doch nicht umbedingt einbinden oder hast du mehrere Anwendungen die diese DLLs nutzen werden?
Wenn es nur eine Anwendung sein wird, reicht es die Assembly im Projekt als Referenz hinzuzufügen.
Dies spart dir eine Menge Zeit und Arbeit.

Falls du aber die DLLs in mehreren Anwendungen benötigst, dann musst du diese im GAC einspielen.
Aber meines Wissens nach solltest du beim installieren von Mono unter Debian bereits die DLLs für stable/testing/unstable bereits im GAC haben und kannst dir doch diesen Aufwand sparen.
Oder brauchst du zwangsweise die aktuelle Version vom Connector?

Nachtrag:
Welche IDE nutzt du?
Ich empfehle für Mono direkt MonoDevelop.
Dort musst du nur per UI die DLLs auswählen.
Kompilieren macht dann MonoDevelop entsprechend selbst.
Dann musst du nur deine fertige Anwendung samt DLLs aus dem bin Ordner kopieren und kannst diese Verwenden und verteilen.

Martin
Es gibt keine if Schleife -> http://www.if-schleife.de/
Ansonsten GPL/GNU/Linux/Debian/Free Software 4 Ever :D

Benutzeravatar
Filshart
Beiträge: 141
Registriert: 11.12.2010 17:05:07

Re: MonoDevelop MySQL Connector

Beitrag von Filshart » 13.01.2011 08:17:31

Im GAC musst du diese doch nicht umbedingt einbinden oder hast du mehrere Anwendungen die diese DLLs nutzen werden?
Würde mir auch reichen, es hauptsächlich nur um 1 Programm.
Aber meines Wissens nach solltest du beim installieren von Mono unter Debian bereits die DLLs für stable/testing/unstable bereits im GAC haben.
Ich verwende Debian 6 mit dem dort enthaltenen Monodevelop. Wenn ich "using System.Data;" verwenden will, erhalte ich wie oben erwähnt:

Code: Alles auswählen

 $HOME/Projects/hallo/hallo/Main.cs(14,14): Error CS0234: The type or namespace name `Data' does not exist in the namespace `System'. Are you missing an assembly reference? (CS0234) (hallo)
Also mir ist es egal auf welche Weise ich das Problem lösen kann, mir wären beide Methoden recht. Wie füge ich den die Assembly im Projekt als Referenz hinzu?

Danke

Milbret
Beiträge: 827
Registriert: 26.05.2008 12:04:54
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Nörten-Hardenberg
Kontaktdaten:

Re: MonoDevelop MySQL Connector

Beitrag von Milbret » 13.01.2011 14:04:35

Die Fehlermeldung ist mehr als deutlich.
Dir fehlt die Referenz auf System.Data.
Dafür bietet dir MonoDevelop auch die Auswahlmöglichkeit beim hinzufügen der Referenzen.

Dafür gibt es bestimmt auch ein paar Anleitungen...
Ansonsten löst dies dein Problem und du brauchst keinen Connector von MySQL wenn keine aktuelle Version nötig ist.
Ich nutze auch Debian 6 aka Squeeze und habe dort out-of-box die DLL zur Verfügung.

Martin
Es gibt keine if Schleife -> http://www.if-schleife.de/
Ansonsten GPL/GNU/Linux/Debian/Free Software 4 Ever :D

Benutzeravatar
Filshart
Beiträge: 141
Registriert: 11.12.2010 17:05:07

Re: MonoDevelop MySQL Connector

Beitrag von Filshart » 13.01.2011 14:51:32

Dir fehlt die Referenz auf System.Data.
Dafür bietet dir MonoDevelop auch die Auswahlmöglichkeit beim hinzufügen der Referenzen.
Ok, wie füge ich diese denn nun hinzu? Das habe ich ja schon im vorherigen Post gefragt.

Milbret
Beiträge: 827
Registriert: 26.05.2008 12:04:54
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Nörten-Hardenberg
Kontaktdaten:

Re: MonoDevelop MySQL Connector

Beitrag von Milbret » 13.01.2011 15:04:35

Keine 10 Sekunden bei Google gesucht.

http://books.google.de/books?id=mUEmG8w ... &q&f=false

Nachtrag:
Ich kann dir dieses Buch empfehlen.
Hab es bei Terrashop bestellt.
Damit bist du gut gerüstet.
Eine Anleitung für MySQL und PostgreSQL sind auch dabei :)

Martin
Es gibt keine if Schleife -> http://www.if-schleife.de/
Ansonsten GPL/GNU/Linux/Debian/Free Software 4 Ever :D

Benutzeravatar
Filshart
Beiträge: 141
Registriert: 11.12.2010 17:05:07

Re: MonoDevelop MySQL Connector

Beitrag von Filshart » 13.01.2011 15:23:45

Ha, das Buch habe ich mir sogar schon bestellt, ist nur noch nicht angekommen xD

Aber das mit Google ist immer so eine Sache, ich suche immer bevor ich etwas poste, aber es kommt halt immer sehr auf die Suchbegriffe an, ich habe leider nichts gefunden und über eine halbe Stunde lang gesucht und gelesen. Ich finde nur immer leute die Probleme mit Referenzen haben oder die als Antwort bekommen dass sie die Referenz setzen sollen.

Benutzeravatar
Filshart
Beiträge: 141
Registriert: 11.12.2010 17:05:07

Re: MonoDevelop MySQL Connector

Beitrag von Filshart » 14.01.2011 20:03:39

Kann mir hier keiner verraten wie ich das hinbekomme?

Benutzeravatar
Filshart
Beiträge: 141
Registriert: 11.12.2010 17:05:07

Re: MonoDevelop MySQL Connector

Beitrag von Filshart » 18.01.2011 13:47:37

Die Lösung ist so einfach:

Im Menü unter "Projekte" auf "Referenzen bearbeiten" und im Reiter "Pakete" einen Haken bei "System.Data"

Milbret
Beiträge: 827
Registriert: 26.05.2008 12:04:54
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Nörten-Hardenberg
Kontaktdaten:

Re: MonoDevelop MySQL Connector

Beitrag von Milbret » 19.01.2011 12:33:43

wenn die Frage sehr böse klingt aber willst du mir sagen du hast für diese Lösung, die eigentlich im Link von mir beschrieben wird, 4 Tage gebraucht?
Ich hoffe du hast nur ein paar Minuten dafür geopfert...

Martin
Es gibt keine if Schleife -> http://www.if-schleife.de/
Ansonsten GPL/GNU/Linux/Debian/Free Software 4 Ever :D

Benutzeravatar
Filshart
Beiträge: 141
Registriert: 11.12.2010 17:05:07

Re: MonoDevelop MySQL Connector

Beitrag von Filshart » 19.01.2011 19:17:05

Ja, ich hatte Probleme mit der Seite, bzw. der Inhalt des Buches wurde mir nicht angezeigt. Ich dachte du hättest dich irgendwie mit dem Link vertan. Evtl. lags auch daran das ich aus Belgien online ging. Jedenfalls funktionierts jetzt und das Buch ahbe ich mir auch geholt, Gibt gerade bei Amazon für 1 € auch wenn ich Amazon eigentlich nicht mehr unterstützen will.

Antworten