Problem bei Zugriff auf Postgres 13

Für Themen zu Datenbanken und Zugriff auf diese. Auch für Datenbankkomponenten.
Antworten
ErnstVolker
Beiträge: 326
Registriert: Di 17. Feb 2009, 10:44
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Problem bei Zugriff auf Postgres 13

Beitrag von ErnstVolker »

Guten Abend,

ich beschäftige mich gerade mit Datenbanken. Und weil ich für Windows und Mac entwickeln wollte bzw. das Projekt überwiegend auf dem Mac entwickelt werden sollte wollte ich Postgres verwenden.

Jetzt bekomme ich beim Zugriff auf meine Datenbank mit dem Namen "Test" auf die Tabelle "Adresse" die im Anhang auf dem Bild dargestellte Fehlermeldung.
Bildschirmfoto 2021-02-02 um 22.14.15.png
Bildschirmfoto 2021-02-02 um 22.14.15.png (147.56 KiB) 1514 mal betrachtet
Nutze ich ZEOS für den Zugriff kommt im SQLQuery die Meldung, dass die Tabelle Adresse nicht gefunden werden kann.

Kennt jemand dieses Problem/Verhalten?

Vielen Dank!

Volker

Lemmy
Beiträge: 57
Registriert: Do 23. Feb 2017, 06:18

Re: Problem bei Zugriff auf Postgres 13

Beitrag von Lemmy »

Servus,

hast Du in der Connection bzw. in der Query den Search_path eingestellt?

Also das Schema in dem Postgres die Tabelle suchen soll? Oder einfach vor die Tabelle den Schemanamen packen und mit . trennen.

gsa
Beiträge: 9
Registriert: Fr 13. Jun 2008, 15:23
OS, Lazarus, FPC: Windows / Linux (FPC 3.2. fixes, Lazarus 2.0 fixes / trunk)

Re: Problem bei Zugriff auf Postgres 13

Beitrag von gsa »

ErnstVolker hat geschrieben:
Di 2. Feb 2021, 22:22

Nutze ich ZEOS für den Zugriff kommt im SQLQuery die Meldung, dass die Tabelle Adresse nicht gefunden werden kann.

Kennt jemand dieses Problem/Verhalten?

Vielen Dank!

Volker
Ohne genauere Information kann man nur raten. Ich würde darauf tippen, dass die Tabelle von einem anderen Benutzer angelegt wurde, als demjenigen der im Programm verwendet wird.

Wenn das so ist, dann muss mittels des GRANT Komandos Rechte für den zweiten Benutzer vergeben werden.

Gerd

ErnstVolker
Beiträge: 326
Registriert: Di 17. Feb 2009, 10:44
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: Problem bei Zugriff auf Postgres 13

Beitrag von ErnstVolker »

Hallo und guten Abend,
Lemmy hat geschrieben:
Mi 3. Feb 2021, 11:47
Also das Schema in dem Postgres die Tabelle suchen soll? Oder einfach vor die Tabelle den Schemanamen packen und mit . trennen.
Der fehlende Schemaname war es. Auf die Idee war ich auch gekommen, allerdings hatte ich vergessen die Namen in Gänsefüßchen zu packen. Durch den Abfrage-String in DBViewer bzw. pgAdmin4 bin ich auf die " " gekommen.

Danke für den Tipp. Jetzt funktioniert es mit ZEOS wie auch "normal"

Viele Grüße

Volker

ErnstVolker
Beiträge: 326
Registriert: Di 17. Feb 2009, 10:44
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: Problem bei Zugriff auf Postgres 13

Beitrag von ErnstVolker »

Guten Morgen,

ich bin dabei mein kleines Datenbankprojekt auf zwei Datenbanken (MariaDB und Postgres) aufzubauen. Jetzt bin ich an einen Punkt gekommen, an dem ich herausgefunden habe, dass man bei Postgres -im Gegensatz zu MariaDB- "views" nicht bearbeiten kann. D.h. man kann nicht über eine "view" Daten schreiben.

Kennt jemand einen Weg wie das doch unter Postgres geht?

Ein weitere Frage ist, wie man den Aufzählungsdatentyp ("enum") einer Tabelle z.B. in die Items einer TDBCombobox einlesen kann um sie als Vorgaben zu verwenden.

HeidiSQL bietet bei der Dateneingabe rechts an der Tabellenzelle einen kleinen Pfeil und man bekommt die auswählbaren Vorgaben angezeigt. Wie bekommt man das beim DBGrid von Lazarus hin?

Vielen Dank und viele Grüße

Volker

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6198
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Problem bei Zugriff auf Postgres 13

Beitrag von af0815 »

Grundlegend kann man die verschiedenen SQL's (RefreshSQL, UpdateSQL, InsertSQL, DeleteSQL) in der Query richtig formulieren und nicht den internen Parser raten lassen. Damit lassen sich normalerweise nicht updatebare Datenmengen richtig in die DB bringen. Können bei Zeos gringfügig anders heissen, die obigen Begriffe sind aus der SqlDB.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Antworten