Datenbankzugriff



  • Hi,

    ich habe jetzt einen Crashkurs in C++ bekommen und soll nun ein kleines Programm schreiben.
    Um es mir einfacher zu machen will ich das ganze mit einer Datenbank verbinden, da es ein kleines Bankscript werden soll (mit Konten und Kunden und so).

    Ich hab hier im Forum eine Anleitung gefunden, wie ich auf Datenbanken zugreifen kann.

    Hat so nicht funktioniert, wie es da stand.
    Ich habs ein wenig umgebaut und das hier kam bei raus:

    const bool DB_CONNECTION_BAD = false;
    const bool DB_CONNECTION_OK = true;
    
    bool connected;
    
    MYSQL_ROW fetchbuffer;
    MYSQL *conn;
    MYSQL_RES *result;
    
    conn = mysql_init(NULL);
    
    if (conn == NULL) return DB_CONNECTION_BAD;
    if (mysql_real_connect(conn, "localhost", "localhost", "", "cpp", 0, NULL, 0) == NULL) return DB_CONNECTION_BAD;
    
    result = NULL;
    connected = true;
    
    if(!(result = mysql_store_result(conn))) {
    //hier kommt das hin, was ich aus der DB ziehen will.
    }
    return DB_CONNECTION_OK;
    

    das scheint soweit auch zu funktionieren.
    insofern das mit einem apache server (xampp) funktioniert?!

    so, mein problem ist jetzt folgendes: wie baue ich SQL statements in C++ ein?
    Also, SELECT, DELETE, UPDATE.
    und wie komm ich dann überhaupt an die Daten ran?
    Aus PHP kenn ich es, daß ich das über eine while-schleife mach und ich alle datensätze in einem array habe.

    Ich habe absolut keine Ahnung von C++ und ich brauch das ungefähr bis Freitag ^^; Bzw am Freitag ist Projektabgabe.

    Solltet ihr mir von Datenbanken abraten, sagt mir bitte wie ich ansonsten Daten permanent speichern kann.

    Bitte schmeißt jetzt nicht mit Referenzen und Dokumentationen um euch und vor allem nicht wenn sie auf englisch sind. 😞

    Danke schon mal.



  • Elayne schrieb:

    ... Crashkurs in C++ ... das ganze mit einer Datenbank verbinden...

    Crashkurs und mit Datenbank verbinden wiederspricht sich schon. Im C/C++ Standard gibt es keine Datenbankzugriffe.

    Elayne schrieb:

    Ich habe absolut keine Ahnung von C++ und ich brauch das ungefähr bis Freitag ^^; Bzw am Freitag ist Projektabgabe.

    Dann vergiss das ganze mit Datenbanken. Zum einen wird dir hier niemand eine Lösung vokauen, zum anderen ist die Datenbankproblematik nunmal nicht in wenigen Tagen erklärt.

    Elayne schrieb:

    Solltet ihr mir von Datenbanken abraten, sagt mir bitte wie ich ansonsten Daten permanent speichern kann.

    Eine Alternative sind ganz einfache Dateien...

    Elayne schrieb:

    Bitte schmeißt jetzt nicht mit Referenzen und Dokumentationen um euch und vor allem nicht wenn sie auf englisch sind. 😞

    Doch, eben das tue ich, wenn auch nicht in englisch, und auch zusammengefasst. Schau dir mal bitte folgendes an:
    http://www.c-plusplus.net/forum/viewtopic-var-t-is-39469.html

    Anschließend kannst du konkrete Fragen stellen.

    cu André



  • Hm, das mit den Dateien hab ich schon in PHP nicht wirklich gepeilt.
    Und mit mysql komm ich ja zurecht.
    Das Problem ist einfach nur die C++ Syntax.
    Ich finde im Internet absolut nichts dazu und an der Arbeit kommen wir an den Schrank mit der Fachliteratur nicht ran.
    Siemens verschließt immer alles doppelt und dreifach und am Ende kommen nich mal mehr die Ausbilder ran 😉

    Ich hab ja nicht gesagt, daß ich ne ganze Lösung will. Ich brauch nur nen Denkanstoß oder so.
    Und Datenbank ist imo nun mal einfacher als Dateisysteme.
    Allein schon weil die mysql ihre querys hübsch in arrays ausspuckt (im normalfall)

    kann man PHP mit C++ verbinden? 😃
    (die letzte frage war ein witz und ich erwarte eigentlich auch keine ernste antwort drauf)

    //EDIT:
    ok, überredet.
    ich nehm dateien.
    geht schneller als mich da jetz einzulesen.
    auf der seite steht, wie ich dateien einlesen kann und beschreiben kann.
    aber wie änder ich ganz bestimmte datensätze?
    datei öffnen, leeren und mit den aktuellen werten neu beschreiben?
    is zwar die bauernmethode.. aber naja



  • Hi ,
    wenn du dich mit mysql auskennst kennst warscheinlich auich die hersteller seite
    C-Api
    C++-Api

    unter c++ - Api wirst kaum was finden was auf deutsch is aber wenn du dich mit c++
    auskennst wird es ein leichtes sein die c syntex anzupassen dessen beschreibung
    zwar sperlich sind aber hilfreich

    MFG Ascharan



  • Elayne schrieb:

    ...und an der Arbeit kommen wir an den Schrank mit der Fachliteratur nicht ran...

    Das ist schlecht, aber es gibt schon Gründe warum privat ganze Regalbretter mit Fachliteratur habe. Im Internet findet man schon alles, die Frage ist nur ob man die richtigen Begriffe verwendet.

    Elayne schrieb:

    Und Datenbank ist imo nun mal einfacher als Dateisysteme.
    Allein schon weil die mysql ihre querys hübsch in arrays ausspuckt (im normalfall)

    Dies mag in der ein oder anderen Sprache oder mit der richtigen Bibliothek stimmen (vorausgesetzt man hat wie du bereits Datenbankkenntnisse), nur gibt es in C++ nunmal keine standardisierte Schnittstelle für Datenbanken, und mit deinem Zeitfaktor kann ich dir nur von Datenbanken abraten.[/quote]

    Elayne schrieb:

    kann man PHP mit C++ verbinden?

    Auch wenn es als Witz gemeint war, kann ich mir vorstellen das dies mit der richtigen Bibliothek auch möglich ist.

    Elayne schrieb:

    auf der seite steht, wie ich dateien einlesen kann und beschreiben kann. aber wie änder ich ganz bestimmte datensätze?
    datei öffnen, leeren und mit den aktuellen werten neu beschreiben?
    is zwar die bauernmethode.. aber naja

    Wenn es sich um kleine Dateien handelt würde ich das so machen: Datei öffnen, Daten zur besseren Bearbeitung leicht aufbereitet in einen Vektor (oder vergleichbares stopfen), Datei schließen. Die Manipulation im Vektor vornehmen, und wenn fertig, Datei mit diesem Datenbestand beschreiben. In der FAQ stand soviel ich mich erinnere auch zu Datenkontainern einlesen/auslesen etwas.

    Bei großen Dateien würde ich wärend des Lesens bereits in eine zweite Datei wegschreiben, und nach Erfolg die Dateien austauschen (anschließend die alte Version löschen).

    cu André



  • Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Datenbanken verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.


Anmelden zum Antworten