Grundsätzliche Frage DB-Design

Alles rund um die Programmierung mit Qt
Antworten
qtued
Beiträge: 10
Registriert: 24. Juni 2014 13:06

Grundsätzliche Frage DB-Design

Beitrag von qtued »

Hallo zusammen,

ich hätte eine grundsätzliche Frage zum Design einer Anwendung mit DB-Zugriff: Wie baue ich das auf, dass ich von mehreren Klassen aus auf die DB zugreifen kann. Erstelle ich eine zentrale DB-Klasse, in der ich die Verbindung herstelle und lasse mir dann in anderen Klassen einfach per

QSqlDatabase QSqlDatabase::database ( const QString & connectionName = QLatin1String( defaultConnection ), bool open = true ) [static]

die Datenbank geben? Oder ist es geschickter z.B. einen db-Pointer zwischen den Klassen "herumzureichen"?

Vielen Dank für euere Hilfe!

Andi
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Re: Grundsätzliche Frage DB-Design

Beitrag von Christian81 »

Einfach die Funktion verwenden - dafür ist sie da.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
MichaelS
Beiträge: 240
Registriert: 27. Dezember 2005 12:49

Re: Grundsätzliche Frage DB-Design

Beitrag von MichaelS »

qtued hat geschrieben:Hallo zusammen,

ich hätte eine grundsätzliche Frage zum Design einer Anwendung mit DB-Zugriff: Wie baue ich das auf, dass ich von mehreren Klassen aus auf die DB zugreifen kann. Erstelle ich eine zentrale DB-Klasse, in der ich die Verbindung herstelle und lasse mir dann in anderen Klassen einfach per

QSqlDatabase QSqlDatabase::database ( const QString & connectionName = QLatin1String( defaultConnection ), bool open = true ) [static]

die Datenbank geben? Oder ist es geschickter z.B. einen db-Pointer zwischen den Klassen "herumzureichen"?

Vielen Dank für euere Hilfe!

Andi
Du brauchst weder einen Pointer 'herumreichen' noch brauchst Du QSqlDatabase::database() zu bemühen. Wenn Du mit

Code: Alles auswählen

  QSqlDatabase::addDatabase(const QString & type, const QString & connectionName = QLatin1String( defaultConnection )) [static]
eine Datenbankverbindung erstellst, ohne einen ConnectionName zu vergeben, wird diese Datenbankverbindung von der Anwendung als Standardverbindung verwendet. Diese wird dann von den Klassen QSqlQuery und Co verwendet, sofern nicht explizit eine andere angegeben wird.

Gruß Michael
qtued
Beiträge: 10
Registriert: 24. Juni 2014 13:06

Re: Grundsätzliche Frage DB-Design

Beitrag von qtued »

Super, vielen Dank! Das war genau die Info, die ich gebraucht habe!
Antworten