frage zu c++



  • guten tag.
    ist es möglich in c++ eine Datenbank wie mysql zu schreiben, nur sehr viel einfacher (dadurch auch schneller und performanter auf kleineren rechnern), auf die man dann auch z.b. mit PHP oder perl zugreifen kann?

    ist soetwas möglich?



  • Du wirst in C++ nicht mit Standard-C++ auskommen, weshalb das Forum schon nicht mehr stimmt, und in PHP auch keine vorgefertigten Funktionen haben, wie für MySQL (z.B. mysql_query, mysql_fetch_array etc.)

    Ob PHP oder Perl in der Lage ist sich zu einem Server auf deinem Computer zu verbinden, ist mir nicht bekannt, ich schätze aber, das klappt nicht, evtl. kannst du dir eine DLL schreiben, die von PHP oder Perl genutzt wird, um auf deine Datenbank zuzugreifen, aber auch das dürfte etwas komplexer werden, frag dafür lieber im Web-Forum nach.

    MfG MAV



  • Gast98 schrieb:

    guten tag.
    ist es möglich in c++ eine Datenbank wie mysql zu schreiben, nur sehr viel einfacher (dadurch auch schneller und performanter auf kleineren rechnern), auf die man dann auch z.b. mit PHP oder perl zugreifen kann?

    ist soetwas möglich?

    ja, aber wieso das rad neu erfinden? außerdem ist mysql doch schnell



  • Ja klar ist das möglich, PHP erlaubt ja Sockets.



  • Ja, finde ich auch, MySQL ist auch für kleine Abfragen sehr gut optimiert, und wird bei vielen Servern unterstützt, gerade in Verbindung mit PHP.



  • Gast99 schrieb:

    ja, aber wieso das rad neu erfinden? außerdem ist mysql doch schnell

    Ich schätze weil er keine Datenbank vom Hoster angeboten bekam, oder zu Lernzwecken vielleicht.



  • hm..
    naja...
    ungefähr seid einem halben jahr suche ich nach einer kleinen datenbank die im prinzip nur folgendes können muss:

    - klein muss sie sein
    - wenig speicherbedarf
    - ein mysql ähnlichen aufbau (tabellen mit spalten und zeilen)
    - daten einfügen, löschen, updaten und sortieren.

    da sollen keine rechte und kein sonst was sein.
    mysql ist viuel zu groß für die meisten meiner anwendungsgebiete von daher würd ich versuchen eine eigene datenbank zu schreiben.
    wer weiss.. vielelicht bekomm ich das in 3 bis 4 jahren ja wirklich hin 🙂



  • Und du glaubst das was bei MySQL zu viel ist ist den Arbeitsaufwand der Programmierung einer eigenen Datenbank wert?



  • ja...
    zudem hätte man gleich ein sinvolles ziel um seine c++ kentnisse einzusetzten.



  • Nun, wenn es dir Spaß macht, dann mach dir keine Grenzen, aber effizienter als MySQL kriegst du es garantiert nicht hin. 🙂
    Von C++ aus geht es auf alle Fälle, naja nicht im Standard, aber in Verbindung mit WinAPI, das von PHP oder Perl aus, frag im Webzeugs-Forum. 🙂



  • schau mal ins Projektforum, da ist was ueber SQLLite. Wenn man den benchmarks da traut, gibts schon noch optimierungsmoeglichkeiten 😃

    Es gibt auch projekte, die Datenbanken nur als fileverzeichniss anschauen, und halt eine SQL anweisung nur als lese aus datei und schreibe in datei uebersetzen. die haben kein netzwerk interface, und user / mulituserfaehigkeit, transaktionen sind eh nen fremdwort.

    Wenn du nur ne "datenbank" brauchst, um daten "schnell" in "organisierter" form abzulegen, dann solltest dir auch ueberlegen warum du ne "datenbank" willst ? Das parsen des SQL-COmmands und das marshalling der Ergebnissmengen kosten im verhaeltniss unmengen zeit ... So dass ich behaupten wuerde, das selbst wenn deine daten ueber ne lib im XML(krasses Format zum aufblaehen von daten 🙂 ) format wegschreibst, schneller bist als wennst die schnellste datenbank nimmst, die es gibt! naja, kaem auf nen versuch an ...

    Ausserdem find ich nen datenbankprojekt als einstieg, und zum lernen auch ned geeignet, weil:
    a. viel zu umfangreich
    b. viel zu viele spezialthemen (sockets, multithreading, deamons, marshalling) eingeschlossen sind, die eigentlich nix mit c/c++ zu tun haben.
    c. es eh schon viel zu viele db's gibt, und die anschliessende nutztung soweiso nur fuer den hausgebrauch waer. der Aufwand waer einfach viel zu gross, udn der frust stellt sich schnell ein.

    Ciao ...


Anmelden zum Antworten