SQL Abfrage im Hintergrund
SQL Abfrage im Hintergrund
Hallo,
ich habe folgende Situation:
Möchte ein Programm schreiben, mit einem Suchfeld + einer leeren Tabelle.
Sobald im Suchfeld 3 Buchstaben eingegeben worden sind, soll im Hintergrung eine SQL Abfrage in einer Datenbank gemacht werden und ggf. die gefundenen Werte (3 Buchstaben) unten in einer Tabelle ausgegeben werden.
Könntet ihr mir eine kurze Hilfe zu dieser FUnktion geben?
Sollte ich die Tabelle erst laden und zwischenspeichern oder direkt nach eingabe von 3 Buchstaben genau durchsuchen?
Gruß
Mr.Vain
ich habe folgende Situation:
Möchte ein Programm schreiben, mit einem Suchfeld + einer leeren Tabelle.
Sobald im Suchfeld 3 Buchstaben eingegeben worden sind, soll im Hintergrung eine SQL Abfrage in einer Datenbank gemacht werden und ggf. die gefundenen Werte (3 Buchstaben) unten in einer Tabelle ausgegeben werden.
Könntet ihr mir eine kurze Hilfe zu dieser FUnktion geben?
Sollte ich die Tabelle erst laden und zwischenspeichern oder direkt nach eingabe von 3 Buchstaben genau durchsuchen?
Gruß
Mr.Vain
Re: SQL Abfrage im Hintergrund
Pseudocode:Mr.Vain hat geschrieben:Könntet ihr mir eine kurze Hilfe zu dieser FUnktion geben?
Code: Alles auswählen
Query.s = "Select * From DeineTabelle Where DeinSuchFeld Like '%" + GetGadgetText(DeinTextGadget) + "%'"
If DatabaseQuery(DeineDatenbank, Query)
While NextDatabaseRow(...
...
Wenn sich der Inhalt der Datenbank nicht ändert, während Dein Programm läuft: Wieso nicht?Mr.Vain hat geschrieben:Sollte ich die Tabelle erst laden und zwischenspeichern oder direkt nach eingabe von 3 Buchstaben genau durchsuchen?
Grüße ... Kiffi
a²+b²=mc²
Re: SQL Abfrage im Hintergrund
Vielen Dank
Wie kann ich es am besten realisieren, dass erst gesucht wird, wenn 3 Buchstaben im StringGadget eingegeben wurden.
- das Programm soll immer laufen, wobei sich die Daten ändern, von daher sollte ich wohl direkt auf die Datenbank zugreifen.
Gruß
Mr.Vain

Wie kann ich es am besten realisieren, dass erst gesucht wird, wenn 3 Buchstaben im StringGadget eingegeben wurden.
- das Programm soll immer laufen, wobei sich die Daten ändern, von daher sollte ich wohl direkt auf die Datenbank zugreifen.
Gruß
Mr.Vain
Re: SQL Abfrage im Hintergrund
Mr.Vain hat geschrieben:Wie kann ich es am besten realisieren, dass erst gesucht wird, wenn 3 Buchstaben im StringGadget eingegeben wurden.
Code: Alles auswählen
If Len(GetGadgetText(DeinStringGadget)) > 2
...
a²+b²=mc²
Re: SQL Abfrage im Hintergrund
Danke.
Wenn ich nun einen Database-Query anzeigen will - wobei 3 Spalten angezeigt werden sollen.
Sollte ich hier eine ListItemGadget nutzen?
Wie übergebe ich denn die einzelnen Werte der List? Oder kann ich dies Reihen-Weise machen?
Wenn ich nun einen Database-Query anzeigen will - wobei 3 Spalten angezeigt werden sollen.
Sollte ich hier eine ListItemGadget nutzen?
Code: Alles auswählen
If DatabaseQuery(DBID, Command$)
While NextDatabaseRow(DBID) ; alle Einträge durchlaufen
Debug GetDatabaseString(DBID, 0) ; Inhalt vom ersten Feld anzeigen
Wend
FinishDatabaseQuery(DBID)
Else
MessageRequester("Fehler", "Fehler bei der Datenbank abfrage!")
EndIf
Re: SQL Abfrage im Hintergrund
[ListIconGadget] böte sich an, ja.Mr.Vain hat geschrieben:Sollte ich hier eine ListItemGadget nutzen?
Du verkettest in einem Durchlauf die entprechenden Datenbankfelder (getrennt mit einem Chr(10) (#LF$)) und fügst sie dann mittels AddGadgetItem() Deinem ListIconGadget hinzu:Mr.Vain hat geschrieben:Wie übergebe ich denn die einzelnen Werte der List? Oder kann ich dies Reihen-Weise machen?
Code: Alles auswählen
ClearGadgetItems(DeinListIconGadget)
If DatabaseQuery(DBID, Command$)
While NextDatabaseRow(DBID)
Line.s = GetDatabaseString(DBID, 0) + #LF$ + GetDatabaseString(DBID, 1) + #LF$ + GetDatabaseString(DBID, 2)
AddGadgetItem(DeinListIconGadget, -1, Line)
Wend
FinishDatabaseQuery(DBID)
Else
; ...
EndIf
a²+b²=mc²
Re: SQL Abfrage im Hintergrund
Gibt es eigentlich eine Funktion, um ein Programm so zu minimieren, dass es in der Taskleiste verschwunden ist und im Infobereich (neben der Uhr) wieder zu finden ist?
Re: SQL Abfrage im Hintergrund
Einfach mal die Hilfe zum Thema "SysTray" durchblättern, denn da steht alles was du dafür brauchst.
"Menschenskinder, das Niveau dieses Forums singt schon wieder!" — GronkhLP ||| "ich hogffe ihr könnt den fehle endecken" — Marvin133 ||| "Ideoten gibts ..." — computerfreak ||| "Jup, danke. Gruss" — funkheld
Re: SQL Abfrage im Hintergrund
Wie kann ich es am besten machen, wenn ich im Hintergrund eine Datenbankabfrage machen will und diese abgefragten Daten in eine neue (kleinere Tabelle) einfügen möchte.
Ebenso möchte ich, dass diese Abfrage jede 5 Minuten ausgeführt wird.
In welchem Bereich muss ich mich hier schlau lesen?
Ebenso möchte ich, dass diese Abfrage jede 5 Minuten ausgeführt wird.
In welchem Bereich muss ich mich hier schlau lesen?
Re: SQL Abfrage im Hintergrund
Das kannst Du doch auch mit reinem SQL machen.
Insert Into Select From...
Die DatatBase-Befehle von PureBasic hast Du ja schon benutzt.
Insert Into Select From...
Die DatatBase-Befehle von PureBasic hast Du ja schon benutzt.
"Never run a changing system!" | "Unterhalten sich zwei Alleinunterhalter... Paradox, oder?"
PB 6.12 x64, OS: Win 11 24H2 x64, Desktopscaling: 150%, CPU: I7 12700 H, RAM: 32 GB, GPU: Intel(R) Iris(R) Xe Graphics | NVIDIA GeForce RTX 3070
Useralter in 2025: 57 Jahre.
PB 6.12 x64, OS: Win 11 24H2 x64, Desktopscaling: 150%, CPU: I7 12700 H, RAM: 32 GB, GPU: Intel(R) Iris(R) Xe Graphics | NVIDIA GeForce RTX 3070
Useralter in 2025: 57 Jahre.