c und mysql

Dieses Thema im Forum "C/C++" wurde erstellt von marcc, 19.04.2008.

  1. marcc

    marcc Tripel-As

    Dabei seit:
    19.07.2007
    Beiträge:
    247
    Zustimmungen:
    0
    Ort:
    Traunstein, D
    hallo..
    ich setzte mich zur zeit mit c auseinandern. ist auch sehr interessant und man findet viele infos im inet. aber jetzt komm grad garnicht weiter.

    will mit c auf mysql zugreifen. und mir fehlen da doch sicher entliche header dateien. mysql.h usw.. weiß jemand wo ich eine gut übersicht finde und kann mir jemand erkären wie man die nachlädt?

    gruß marc.
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 blue-dev, 19.04.2008
    blue-dev

    blue-dev stranger with blue eyes

    Dabei seit:
    30.06.2007
    Beiträge:
    438
    Zustimmungen:
    0
    Der include für C ist mysql/mysql.h.
    Damit du diesen allerdings hast, musst du dein Programm mit dem Mysql-Lib Verzeichnis linken:
    Code:
    -L/usr/local/mysql/lib -lmysqlclient -lz
    Diese beiden Argumente musst du dem gcc bei compilieren übergeben.

    Beispiel:
    Code:
    gcc -L/usr/local/mysql/lib -lmysqlclient -lz -o name name.c
    Ansonsten musst du mal googlen, irgendwo gabs da ne Mysql C Api Seite in der Mysql Doku.
     
  4. #3 marcc, 19.04.2008
    Zuletzt bearbeitet: 19.04.2008
    marcc

    marcc Tripel-As

    Dabei seit:
    19.07.2007
    Beiträge:
    247
    Zustimmungen:
    0
    Ort:
    Traunstein, D
    die c api seit hab schon gefunden http://dev.mysql.com/doc/refman/5.1/de/c.html

    mir würde ein beispiel ziemlich weiterhelfen. finde irgendwie keins mit google.

    PHP:
    <?php

    // connect to MySQL
    $mysqli = new mysqli($mysqlhost$mysqluser$mysqlpasswd$mysqldb);
    if(
    mysqli_connect_errno()) {
      echo 
    "<p>Sorry, no connection! "mysqli_connect_error(), "</p>\n";
      exit();
    }

      if(
    $result $mysqli->query("SELECT * FROM table ORDER by date")) {
          while(
    $row $result->fetch_object()) {

                
    printf("%d %s"$row->id$row->name);
          }
      }

    // disconnect
    $mysqli->close();

    ?>



    wenn ich sowas mal sehen würde wies in c aussieht könnt ich mir den rest eigentlich selbst ableiten..

    gruß marc.
    .
    .
    .
    EDIT (autom. Beitragszusammenführung) :
    .

    ich sitzt da jetzt schon ewig dran und bin kein bischen voran gekommen.. langsam versteh ich warum mein prof meint c ist keine programmiersprache sondern ein irrtum X(

    ich hab xampp laufen und mysql funktioniert natürlich auch.. woher krieg ich jetzt die header datei. und wieso muss man bei c überhaupt die ganzen datein nachladen.. bzw. was heißt das genau "nachladen" ?

    kann mich da jemand mal ein bischen aufklären..

    gruß marc.
     
  5. enr00

    enr00 Routinier

    Dabei seit:
    08.04.2007
    Beiträge:
    275
    Zustimmungen:
    0
    Ort:
    Luxemburg
  6. #5 pferdefreund, 20.04.2008
    pferdefreund

    pferdefreund Doppel-As

    Dabei seit:
    26.12.2007
    Beiträge:
    144
    Zustimmungen:
    0
    Oder - spricht was dagegen, auf Postgresql umzusteigen. Die haben eine saugeile
    Programmiererschnittstelle auf High-Level-Ebene analog Oracle, DB/2 usw.
    exec sql .. usw - wie bei den "großen". Ist echt leicht in C zu programmieren.
    Hab bisher nur super gute Erfahrungen gemacht.
     
  7. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  8. #6 Herr Nilsson, 21.04.2008
    Herr Nilsson

    Herr Nilsson Eroberer

    Dabei seit:
    21.03.2008
    Beiträge:
    62
    Zustimmungen:
    0
    Ort:
    Dortmund
    Auf Grund Deiner PHP-Frage, gehe ich davon aus, daß Du schon Erfahrung mit Dingen wie Variablen, Funktionen, Verzweigungen, Schleifen, Ein- und Ausgabe hast.

    Bei C ist unter anderem anders, daß es einen Compiler gibt und dieser schon beim Uebersetzen (bei mir wird kein U-Umlaut angezeigt?) Prüfungen durchführt, ob Funktionen, Rückgabewerte und Argumente richtig gewählt wurden (Stichwort Typprüfung). Die Typen müssen dafür aber vor ihrer Benutzung "deklariert" worden sein, was bei C i.Allg. in den "Header-Dateien" geschieht. Die benötigten Header werden am Anfang einer C-Datei mit "#include" eingebunden.

    Falls Du einen MySQL-Client programmieren möchtest, benötigst Du also zum einen die Header-Dateien, zum anderen noch "Bibliotheken", die dann die eigentlichen Funktionen enthalten, die in den Headern angekündigt werden. Nach der Linux-Logik bekommst Du beide, indem Du ein Paket mit dem Namen "mysql-devel" (für Developer) installierst.

    Zudem benötigst Du die Dokumentation. Ich empfehle Dir die MySQL-Internetseite. Dort findest Du die Dokumentation für alle Versionen in verschiedenen Sprachen.

    Da es nicht unwahrscheinlich ist, daß Du MySQL 5.1 benutzt (Du hättest es vielleicht angeben sollen), verweise ich mal auf diesen Link. Dort gibt es einen Funktionsüberblick - und vor allem: nach der Tabelle eine stichwortartige Zusammenfassung der wichtigsten Abläufe in fünf Schritten ("Application programs should use this general outline for interacting with MySQL [...]"). Alle Befehle sind verlinkt und es gibt auch immer ein paar Beispiele dazu.

    Wenn Du Dein Programm aus dem Quellcode übersetzen willst, mußt Du, wie blue-dev bereits gezeigt hat, dem Linker mitteilen, daß Du die MySQL-Bibliothek benutzt. Der Parameter -lmysqlclient teilt mit, daß Du Funktionen benutzt, die in der Bibliothek "libmysqlclient.so" zu finden sind. Allerdings findet der Linker diese Datei nur, falls sie in seinem "Suchpfad" liegt. Falls es nicht automatisch klappt, mußt Du den Suchpfad mit einem Befehl wie -L/usr/local/mysql/lib erweitern - aber Vorsicht: Du solltest zuerst nachschauen, ob die Bibliothek (libmysqlclient.so) auch wirklich an dieser Stelle zu finden ist, z.B. mit find /usr/ -name "libmysqlclient*.so*". Bei mir befindet sie sich nämlich woanders, und ich müßte "-L/usr/lib/mysql/" angeben.
     
  9. marcc

    marcc Tripel-As

    Dabei seit:
    19.07.2007
    Beiträge:
    247
    Zustimmungen:
    0
    Ort:
    Traunstein, D
    danke für die antworten.. ich hab aufgehört zu versuchen mit mysql zu arbeiten und mich ein bischen in postgresql reingelesen. das funktioniert bis jetzt auch sehr gut..
    kannte ich davor noch garnicht.. ;)
     
Thema:

c und mysql

Die Seite wird geladen...

c und mysql - Ähnliche Themen

  1. Freelancer gesucht - Debian / MySQL / Pearl / PHP - Erfahrung

    Freelancer gesucht - Debian / MySQL / Pearl / PHP - Erfahrung: Hallo, suche einen Freelancer für einen Webdienst... mit obigen Kenntnissen! Bitte Stundensatz mit Kurzbeschreibung mitteilen. NOCH WAS: Also...
  2. MySQL 5.7 angekündigt

    MySQL 5.7 angekündigt: Oracle hat MySQL 5.7 in der offiziellen Version angekündigt. Das populäre freie Datenbanksystem wird in Version 5.7 bei bestimmten Abfragen...
  3. MySQL 5.7 angekündigt

    MySQL 5.7 angekündigt: Oracle hat MySQL 5.7 in der offiziellen Version angekündigt. Das populäre freie Datenbanksystem wird in Version 5.7 bei bestimmten Abfragen...
  4. mysql Select Abfrageergebnis in unterschiedlichen Variablen sichern

    mysql Select Abfrageergebnis in unterschiedlichen Variablen sichern: Hallo zusammen, es geht um folgenden Teil meiner .sh-Datei: NumberCheck=`mysql $SQL_ARGS "SELECT lkw, Firma FROM adb_group WHERE...
  5. MySQL Datenbank / Phpmyadmin Fehler #2002

    MySQL Datenbank / Phpmyadmin Fehler #2002: Wie oben schon beschrieben kommt bei mir immer wenn ich versuche auf Phpmyadmin zu verbinden dieser Fehler : #2002 Die Anmeldung am MySQL-Server...