Speichern in .mdb



  • Entschuldigung wenn ich da etwas vertauscht habe.
    Also, meine Anwendung soll eine Datenbank erstellen. Für diese Datenbank will ich mdb nutzen. Wie mache ich das?
    Der Benutzer soll am Ende eine .mdb Datei vorliegen haben.

    Hoffe habe mich nun korrekt ausgedrückt.
    Turbobrain



  • nope!

    in mdb files speichert z.b. ACCESS o ODBC die daten der datenbank.

    Für diese Datenbank will ich mdb nutzen. Wie mache ich das?
    Der Benutzer soll am Ende eine .mdb Datei vorliegen haben.

    das hört sich so an, als ob du nicht einmal theoretisch weisst was datenbaken, dbms, usw. sind.

    wie es schon oben steht such in der faq nach informationen zu odbc. denn in deiner überlegung, dass am ende eine mdb datei sein muss, fehlt noch etwas ganz grosses.

    und, hast du jetzt schon eine datenbank, oder hast du die daten bereits in einer datenstruktur oä?



  • hallo,
    ich weiß was ODBC ist. Aber wenn ihr meint suche ich mal in der FAQ.
    Turbobrain 😃



  • komische reihenfolge... posten, dann in die faq schauen.

    wozu ist denn die faq eigentlich da?



  • Aloha,

    natürlich will turbobrain keine Datenbank entwickeln, sondern will über irgendeine Schnittstelle(OLE-Automation oder ODBC) den Datenzugriff auf Access realisieren.

    Das kann man sich aus seiner Fragestellung ansich denken.
    Er fragt nach den Möglichkeiten der Realisierung, da reicht der Hinweis auf die FAQ in Verbindung mit ODBC einfach mal nicht.

    Die grundlegende Frage ist, ob Du ohne großes Geschnörkel ( <-- gibt es das Wort ? ) ein paar Daten ablegen willst, oder richtiges Feintuning betreiben möchtest.

    Für nur ein paar Daten ist ODBC die richtige Wahl, weil einfach, schnell und gut.
    Performanter ist in der Regel eine OLE - Automation ( zu 95 % stimmt diese Aussage ). Außerdem kannst Du auf mehr Access - Features zugreifen.
    Allerdings ist es auch schwieriger zu handhaben.

    Meine Erfahrungen beruhen zur Zeit nur auf Word- und Outlook - Automation, so daß ich Dir keine intensiveren Infos bzgl. Access-Automation geben kann.

    Bin aber auch am überlegen meine Daten ( bis jetzt wie bei Dir in meiner eigenen Datenbank liegend ) über Access zu verwalten.

    Hier mal ne kurze Definition was eine Datenbank ist, falls man doch noch einmal ein paar Basicinfos benötigt.

    [url]
    http://www.net-lexikon.de/Datenbank.html
    [/url]

    Meine Empfehlung ist unter dem Gesichtspunkt Access - Automation und unter Access ODBC mal zu googlen. Da werden Dir die Unterschiede schnell klar, und Du kannst entscheiden, was für Deine Anwendung die bessere Lösung ist.

    Grüße und seid nett zueinander

    BOA



  • wenn ich auch eine empfehulung äussern dürfte...

    SQLite

    - datenbanksystem in form EINER dll datei
    - schneller als alles andere
    - klar strukturierte api (einziger nachteil: in c, also meistens eine konvertierung notwendig; allerdings arbeite ich schon fleissig an einer wrapper klasse)
    - alle anfragen sind über sql(92) abzusetzen

    und falls ich es vergessen haben soll: SQLite ist verdammt schnell!

    Features

    Implements most of SQL92. (Features not supported)
    A complete database (with multiple tables and indices) is stored in a single disk file.
    Atomic commit and rollback protect data integrity.
    Database files can be freely shared between machines with different byte orders.
    Supports databases up to 2 terabytes (2^41 bytes) in size.
    Small memory footprint: less than 25K lines of C code.
    Two times faster than PostgreSQL and MySQL for many common operations.
    Very simple C/C++ interface requires the use of only three functions and one opaque structure.
    TCL bindings included. Bindings for many other languages available separately.
    Simple, well-commented source code.
    Automated test suite provides near 100% code coverage.
    Self-contained: no external dependencies.
    Built and tested under Linux and Windows.
    Sources are in the public domain. Use for any purpose.

    ach ja, und weswegen ich den tipp hier anführe... man kann bei sqlite den dateinamen der datenbankdatei selbst bestimmten. kannst z.b. auch datenbank.MDB auswählen. 🙂



  • Danke für die Tipps.
    eigentlich will ich nur Daten schreiben. Danach will ich anfragen stellen.
    Ich weiß nicht was die einzelnen Systeme bieten, aber es sollte schnell gehen, weil es eine relativ große Datenbank wird.
    Ich werde mich mal noch über die Systeme informieren.
    Ausserdem sollte das System lizenzfrei sein, aber ich glaube da habe ich hier mal eine ziemlich lange Diskussion drüber gelesen.
    Turbobrain 😃



  • turbobrain schrieb:

    Danke für die Tipps.
    eigentlich will ich nur Daten schreiben. Danach will ich anfragen stellen.
    Ich weiß nicht was die einzelnen Systeme bieten, aber es sollte schnell gehen, weil es eine relativ große Datenbank wird.
    Ich werde mich mal noch über die Systeme informieren.
    Ausserdem sollte das System lizenzfrei sein, aber ich glaube da habe ich hier mal eine ziemlich lange Diskussion drüber gelesen.
    Turbobrain 😃

    lange rede, kurzer sinn...

    egal wofür du ein db system benötigst. mit sqlite bist du auf der sicheren seite, denn:

    es ist "under public domain"

    kannst mit dem code tun und lassen was du willst. auch wenn du es kommerziell einsetzen möchtest, ist sqlite das einzige was ich bisher gesehen habe, das ohne jeden zwang ist!

    queries kannst du bequem mit hilfe von sql absetzen. und schnell ist es alle male!

    aber achtung! es ist ein lokales db system! es ist kein dienst, kein daemon, und es hat keine netzwerkunterstützung! also, du kannst z.b. keine clients übers netzwerk laufen lassen, die darauf zugreifen sollen.
    das ganze system ist wie schon erwähnt eine einzige dll. die datenbank daten werden in ausgewählten dateien gespeichert. irgendwelche grenzen habe ich noch nicht bemerkt.

    und für alle die interesse daran haben, aber dazu werde ich in kürze mal unter projekte posten, würde ich mich über tippkräftige unterstützung freuen, damit sqlite endlich eine saubere mfc-api-wrapper-class bekommt! ich bin da schon gross am planen. denn es wäre ja das beste überhaupt, wenn man auf sqlite wie auf eine gewöhnliche datenstruktur aus mfc zugreifen könnte und sich dabei allen konvertierungskramm ersparen würde.

    ich weiss, für viele ist access einfach einfach, weil bekannt. aber schaut euch die api von sqlite mal an. sie ist wirklich gut durchdacht und funktioniert tadellos! wenn ihr einmal ein kleines beispiel programm mit hilfe von sqlite auf die beine gestellt habt, könnt ihr dieser sucht nicht mehr wiederstehen. ich habe ein ähnliches gefühl wie damals mit linux. als windows 98 rauskam und mir nur blau bildschirme erschienen, ich windows-neu-installationen in der schule zum wettbewerb hochputschte, weil ich es fast täglich, manchmal mehrmals am tag auf meinen 3 rechnern gemacht habe... bin ich irgendwann, obwohl ich da schon mittlerweile über jede einzelne windows datei bescheid wusste, mal nach linux gewechselt. und bin auf der mehrheit meiner rechner auch dabei geblieben. ich hole zu weit aus...

    probierts einfach aus!



  • Auf CodeProject gibt es einen brauchbaren ADO-Wrapper. Damit kannst du u.a. auf Access-Datenbanken zugreifen.

    http://www.codeproject.com/database/caaadoclass1.asp



  • Vielen Dank für die Tipps.
    Wenn ich noch Fragen habe weiß ich ja an wen ich mich wenden kann.
    Ich muss erst einmal genau überlegen was für mich die beste Lösung ist, da leider bei Sqlite etwas mehr einarbeitung nötig ist als bei ADO.
    Danke nochmals
    Turbobrain



  • turbobrain schrieb:

    Vielen Dank für die Tipps.
    Wenn ich noch Fragen habe weiß ich ja an wen ich mich wenden kann.
    Ich muss erst einmal genau überlegen was für mich die beste Lösung ist, da leider bei Sqlite etwas mehr einarbeitung nötig ist als bei ADO.
    Danke nochmals
    Turbobrain

    naja, wenn du schon mal ein c/c++ programm geschrieben hast, und auf mysql per php zugegriffen hast, dann wirst du hier sicherlich keine probleme mit haben!

    wenn du interesse hast, kann ich dir ein beispiel projekt schicken, oder uppen. dann wirst du sehen, wie einfach und mächtig sqlite ist!



  • Ja bitte ein Beispiel zu haben ist immmer gut.
    Schick kannst du es an turbo.brain@web.de oder upp es wie du halt willst.

    Danke für das Angebot
    Turbobrain


Anmelden zum Antworten