Ich habe mir vom DevPack primary Server die MySQL Erweiterung gezogen ...
Allerdings hab ich ein kleines Problem ...
Obwohl mein (lokaler) SQL Server laeuft und ich mit phpMyAdmin dadrauf zugreifen kann etc. weigert sich die mySQL lib beharrlich zur Datenbank zu verbinden -> "konnte Datenbank nicht oeffnen"
Die Verbindung zum Server hat aber geklappt. Allerdings auch erst, als ich von "localhost" auf "127.0.0.0" umgestiegen bin.
Hat einer vielleicht Erfahrung mit dem Teil, und ne idee, woran es liegen koennte ?
Ich haett euch ja gerne eine Internetseite/Referenz zu dem mySQL Ding gegeben. Allerdings war keine Quelle angegeben -__-
Hat einer vielleicht Erfahrung mit dem Teil, und ne idee, woran es liegen koennte ?
...
Wie wär's mit etwas Code? Vielleicht kann man dir deine Fehler dann besser auf die Nase binden.
Bei mir klappt's auf jeden Fall auch mit localhost. Ich poste mal ein Connection-Stückchen .. :
Der Code funktioniert bei mir. Kannst es ja mal mit deinem vergleichen.
Ich haette vielleicht erwaehnen sollen, das ich das mitgelieferte Beispielprogramm meine \o/ (Ja ich hab die DB Daten angepasst)
( ja ja .. als Mod weisst man andere immer auf die selben Fehler hin, und macht sie dann selber .... die noobs faerben echt ab Oo )
Nach der operation steht der mySQL server aber noch tadellos ...
Auch die DB in mysql_real_connect anzugeben bringgt keine pluspunkte
Ich haette vielleicht erwaehnen sollen, das ich das mitgelieferte Beispielprogramm meine
...
Hm, achja ein Beispielprogramm. Ich habe aber keines, das aussieht wie deines.
Dafür habe ich mal deinen Code probiert. Bei mir klappt alles, wenn ich myDatabase so definiere: MYSQL myDatabase; und dann halt später immer so übergebe: &myDatabase. Btw, die IF-Abfrage wird nur ausgeführt, wenn's Fehler gibt. Sonst nicht. Oder meintest du mit "raushauen" einen Absturz? Der lässt sich bei mir, wie eben beschrieben, umgehen.
mit "// == -1 <- hier hauts mich raus" meinte ich, dass die funktion zu -1 evaluiert und somit die if klausel bearbeitet wird, wo mysqlerror den kommentierten fehlertext ausspuckt
Das Beispiel wird unter Examples/MySQLClientTest/ installiert
Zitat
Dafür habe ich mal deinen Code probiert. Bei mir klappt alles, wenn ich myDatabase so definiere: MYSQL myDatabase; und dann halt später immer so übergebe: &myDatabase.
...
Das klappt so nicht ...
In dem Codebeispiel wird das ganze so initialisiert:
myDatabase = mysql_init(NULL);
Irgendwie hab ich die Vermutung, wir haben nicht die selben Versionen/Codes/Whatever.
Das interessante ist ausserdem, dass er mit 127.0.0.1 den server gar nicht erst findet, sondern nur ueber 127.0.0.0 *schulterzuck*
Irgendwie hab ich die Vermutung, wir haben nicht die selben Versionen/Codes/Whatever.
...
Ja, das denke ich auch. Welche Dev-Cpp Version hast du und welche hat dein Package? Der Code funktioniert so bei mir gar nicht. Ich schau's mir morgen mal genauer an, wenn's recht ist. *gähn*
Dev-C++ 4.9.9.2
Package Name: MySQL
Version: 4.0.16
Description: Everything you need to start using MySQL. Say thanks to Martin for preparing the files. Example on board. Kip
Site: http://www.MySQL.com
Dev-C++ 4.9.9.2
Package Name: MySQL
Version: 4.0.1
...
Hm, anscheinend ist mein Dev-Cpp älter und mein MySql-Package neuer. Aber ich denke trotzdem nicht, dass es daran liegt, sondern eher an der lokalen MySql Installation. Bei deinem Beispiel ging das Connecten komischerweise auch nur mit "127.0.0.0". Aber immerhin kam mein Programm dann bis zum Ausführen der Query und ist erst daran gescheitert. Aber an der Host-Angabe scheint es teilweise zu liegen. Wenn ich in der Funktion direkt "localhost" angebe und die Funktion mit !function() statt mit function() != 0 überprüfen, klappt alles. Also ..
Wäre interessant zu wissen, ob das bei dir auch so funktioniert. Ansonsten überprüfe nochmal, ob wirklich alle MySql-Angaben stimmen ..
mit ! anstelle von !=0 funktioniert es tadellos, unterverwendung von "localhost" oder "127.0.0.1"
Anscheinend wars wohl ein Bug im Beispielquelltext.
Ich nehme an, real_connect gibt einen Zeiger auf das DB struct zurueck anstatt wie bisher angenommen einen Fehlercode (Warum sollte man sonst auf !=0 testen)
Thx fuer die Hilfe. Auf die Idee, dass der code nur "funktionierte", wenn er einen fehler bei der DBVerbindung gemacht hat, bin ich natuerlich nicht gekommen ...