dbobject:start
Dies ist eine alte Version des Dokuments!
Inhaltsverzeichnis
(SQL-)Datenbank-Objekt in QT4
Brainstorm
Ziel
- Design einer Bibliothek, die Datenbank-Objekte (SQL, XLM, LDAP, was auch immer) transparent als C++-Klasse zur Verfügung stellt.
- Das Objekt kümmert sich selbst um Anpassung an zugrunde liegendem Datenbank-Type.
- Das Objekt kümmert sich automatisch um Ergänzungen/Änderungen der DB-Struktur (Hinzufügen eines neuen Feldes erstellt automatisch ein neues Feld in der DB).
- Einfache Entwicklung von Applikationen, die auf Datenbank-Objekte zugreifen (Lesend/löschen/hinzufügen/ändern).
- Datenbank-Typen werden soweit möglich automatisch gewählt.
Beispiele
Ganz spontan, was mit so in der Sinn kommt:
// create DB object DbObbject *person = new DbObject; // setup object person->setTable("t_person"); person->addField(DbObject::ShortString, "vorname"); person->addField(DbObject::ShortString, "name"); person->addField(DbObject::Date, "birthday"); person->addField(DbObject::Integer, "num_computers"); person->addField(DbObject::String, "comment"); // query if(person->query("name", "Meyer")) { // print all fields qDebug() << person->toString(); // modify object person->setValue("comment", "The answer is 23!"); if(person->commit()) qDebug() << "Update successfully!"; else qDebug() << "Cannot update Meyer"; } else qDebug() << "Meyer not found";
dbobject/start.1224008982.txt.gz · Zuletzt geändert: 2008/10/14 20:29 von jt