Re: kein Eintrag in DB
Verfasst: 03.01.2017 10:36
Guten Morgen und ein frohes Neues Jahr,
ich bin immer noch am experimentieren mit der Datenbank, die oberen Probleme habe ich gereglt bekommen,
jetzt habe ich ein Problem, bei dem ich nicht weiß warum das ganze nicht so funktioniert, wie ich es mir vorstelle.
folgender Code aus einer Datei:
AbtDB$ habe ich als GLOBAL declariert, nun sollte doch eine Datenbank mit dem Namen den ich im Textfeld eingebe erstellt werden,
aber irgendwie passiert das nicht, habe ich einen Denkfehler oder einen grobfährlässigen Programmfehler, den ich nicht blicke??
mfg
PS: Datenbank habe ich mir irgendwie leichter vorgestellt
ich bin immer noch am experimentieren mit der Datenbank, die oberen Probleme habe ich gereglt bekommen,
jetzt habe ich ein Problem, bei dem ich nicht weiß warum das ganze nicht so funktioniert, wie ich es mir vorstelle.
folgender Code aus einer Datei:
Code: Alles auswählen
Procedure Abteil()
OpenWindow(#Abteilfenster, #PB_Ignore, #PB_Ignore, 300, 120, "Abteilung anlegen",#PB_Window_WindowCentered)
TextGadget(#PB_Any, 10, 10, 290, 20, "Name der Abteilung:", #PB_Text_Center) ;Text anzeigen
StringGadget(#Abteilung , 8, 45, 282, 20, "Abteilung", #PB_String_UpperCase) ;Eingabe Feld anzeigen & positionieren
ButtonGadget(#ButtonAnlegen, 70, 80, 70, 30, "an&legen" ) ;Button anlegen
ButtonGadget(#ButtonAbbrechen,160,80,70,30,"a&bbrechen")
EndProcedure
Procedure Datenbank_erstellen()
AbtDB$ = GetGadgetText(#Abteilung)
;Öffnen der Datenbank "Kunden"
OpenDatabase(0, "host=localhost port=5432 dbname=Regal", "postgres", "postgres",#PB_Database_PostgreSQL)
;Tabelle "Kunde" anlegen
DatabaseUpdate (0, "CREATE TABLE"+AbtDB$+"(vorname text, name text)")
;Drei Datensätze in die Datenbank schreiben
DatabaseUpdate (0,"INSERT INTO Kunde VALUES ('horstr', 'Mrmann')")
DatabaseUpdate (0,"INSERT INTO Kunde VALUES ('Tmas', 'Mustann')")
DatabaseUpdate (0,"INSERT INTO Kunde VALUES ('Frk', 'Test')")
Debug "-----------------------------------------------------"
Debug "ALLE KUNDEN MIT NACHNAME MUSTERMANN ANZEIGEN"
;Liest alle Einträge mit dem Namen Mustermann aus
If DatabaseQuery(0, "SELECT * FROM Kunde WHERE name LIKE 'Mustermann'")
While NextDatabaseRow(0) ; alle Einträge durchlaufen
Debug GetDatabaseString(0,0) ;Spalte 0 auslesen
Debug GetDatabaseString(0,1) ;Spalte 1 auslesen
Wend
FinishDatabaseQuery(0)
EndIf
Debug AbtDB$
Debug "-----------------------------------------------"
Debug "ALLE KUNDEN DER DB ANZEIGEN"
;Liest alle Einträge der Tabelle aus
If DatabaseQuery(0, "SELECT * FROM Kunde")
While NextDatabaseRow(0) ; alle Einträge durchlaufen
Debug GetDatabaseString(0,0) ;Spalte 0 auslesen
Debug GetDatabaseString(0,1) ;Spalte 1 auslesen
Wend
FinishDatabaseQuery(0)
EndIf
EndProcedure
aber irgendwie passiert das nicht, habe ich einen Denkfehler oder einen grobfährlässigen Programmfehler, den ich nicht blicke??
mfg
PS: Datenbank habe ich mir irgendwie leichter vorgestellt
