DB immer global geöffnet lassen?

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Delle
Beiträge: 1130
Registriert: 10.05.2005 22:48

DB immer global geöffnet lassen?

Beitrag von Delle »

Hallo,

geht es irgendwie, dass man beim Start eines Programms die DB öffnet und erst wieder am Ende schließt,
zwischendurch aber auch Prozeduren darauf zugreifen können und nicht immer erneut öffnen/schließen müssen?

Meine sowas wie Global OpenDatabase() am Codeanfang in der Art...

Merci! :lurk:
PB 6.21 | Win 11
Benutzeravatar
Bisonte
Beiträge: 2468
Registriert: 01.04.2007 20:18

Re: DB immer global geöffnet lassen?

Beitrag von Bisonte »

Bei SQLite ist das kein Problem. MySQL/MariaDB oder PostGres ist das etwas anders. Da kann es passieren, dass die Verbindung bei Inaktivität nicht mehr da ist. Daher bei denen eher immer öffnen und schliessen um sauber zu bleiben. Bei SQLite ist das nicht gegeben. Dort kann mann am Anfang tatsächlich öffnen... und bei Programmende wird automatisch geschlossen... (PB sorgt selbst dafür, falls man das CloseDatabase() nicht aufgerufen hat)
PureBasic 6.21 (Windows x86/x64) | Windows11 Pro x64 | AsRock B850 Steel Legend Wifi | R7 9800x3D | 64GB RAM | GeForce RTX 5080 | ThermaltakeView 270 TG ARGB | build by vannicom​​
Benutzeravatar
mk-soft
Beiträge: 3855
Registriert: 24.11.2004 13:12
Wohnort: Germany

Re: DB immer global geöffnet lassen?

Beitrag von mk-soft »

Kann man auch geöffnet lassen und an den Procedure die DB-ID übergeben.
Aber immer alle Abfrage und Updates prüfen.
Bei fehler die auf Verbindungsfehler verweisen dieses Melden und versuchen die Verbindung wieder aufzubauen.
CloseDatabase / Opendatabase.

Ich kenne auch Programme die nur Melden und am Ende man selber das Programm mit den Task Manager killen muss.
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Antworten