Hallo Leute
hab ein kleines Problem mit meiner Applikation.
In meiner Applikation arbeite ich mit einer MySQL Datenbank.
Ich habe verschiedene Frames (Widgets) die Daten aus der Datenbank anzeigen oder ändern usw....leider muss jedes Frame (Fenster) eine eigene Verbindung zur Datenbank aufbauen da ich sonst keine Daten holen kann!
Beim Öffnen des 3. Fensters (3. Verbindung zur DB) stürzt das komplette Programm mit einem Speicherzugriffsfehler ab.
Frage:
Wie kann ich beim Starten der Applikation die Verbindung zur DB herstellen und dann über alle Fenster die selbe Verbindung benutzen?
Ist es möglich?
Ps: Jedes Frame hat ein eigenes Source und Header-File. z.B mainframe.cpp, cfgfrm.cpp, usw.
Danke für eure Hilfe
orlando
[gelöst] Speicherzugriffsfehler bei MySQL Verbindung
hi,
ich vermute mal das zu viele verbindungen offen sind.
wenn du jetzt frame1 (Widget1) öffnest wird eine
verbindung zu DB hergestellt und daten herrausgeholt
btw geschrieben usw.
wenn es immer die selbe db ist must du mit hoher warscheinlichkeit
auch die verbindung wieder trennen.
anwendung nachfragen ob sie besteht, wenn nicht öffnen usw.
ich vermute mal das zu viele verbindungen offen sind.
wenn du jetzt frame1 (Widget1) öffnest wird eine
verbindung zu DB hergestellt und daten herrausgeholt
btw geschrieben usw.
wenn es immer die selbe db ist must du mit hoher warscheinlichkeit
auch die verbindung wieder trennen.
ganz normal wie du sie bei deinem widget öffnest und in deinerFrage:
Wie kann ich beim Starten der Applikation die Verbindung zur DB herstellen und dann über alle Fenster die selbe Verbindung benutzen?
Ist es möglich?
anwendung nachfragen ob sie besteht, wenn nicht öffnen usw.
danke für die prompte antwort....
hatte anscheinend einen groben überlegungsfehler gemacht....das problem scheint sich nun behoben zu haben...
im hauptfenster erstelle ich meine Datenbankverbindung via QSqlDatabase::addDatabase() und dann in jedem weitern Fenster benutze ich die selbe Verbindung mit QSqlDatabase::database()
merci
hatte anscheinend einen groben überlegungsfehler gemacht....das problem scheint sich nun behoben zu haben...
im hauptfenster erstelle ich meine Datenbankverbindung via QSqlDatabase::addDatabase() und dann in jedem weitern Fenster benutze ich die selbe Verbindung mit QSqlDatabase::database()
merci