PG User unter Access abfragen

Alle Fragen und Probleme zu den externen Schnittstellen wie ODBC, JDBC, ...
Antworten
luwg
Neuer Benutzer
Beiträge: 9
Registriert: Do 25. Apr 2013, 17:11

PG User unter Access abfragen

Beitrag von luwg » Do 10. Okt 2013, 09:39

Hallo,
wie kann ich von einer MS-Access anwendung aus die auf eine PG DB zugreift den PG Datenbank User abfragen?
Unter PG geht das ja mit current_user und unter Access mit currenuser().

currentuser() liefert aber nur den Access User.
Wie kann ich den aktuellen User der PG DB abbfragen?


LG Tom

ulischerrer
Benutzer
Beiträge: 32
Registriert: Mi 22. Okt 2008, 15:20

Re: PG User unter Access abfragen

Beitrag von ulischerrer » Do 10. Okt 2013, 11:22

Hallo Tom,

unter Access lassen sich PassThrough Abfragen erstellen. Da kannst du den current_user in PG sql Syntax abfragen.
Zumindest unter Access 2003 funktionierts so, WENN du eine ODBC Verbindung zu postgres eingerichtet hast:
- neue Abfrage
- Tabellenfenster zuklicken
- rechtsklick in Abfragefenster
- Sql spzifisch - PassThrough auswählen
- im Sqlfenster select current_user reinschreiben
- in den Abfrageeigenschaften unter ODBC Verbindung eingeben
ODBC;DATABASE=name_der_pg_datenbank;DSN=name_laut_odbc;PWD=xxxxxxx;PORT=5432;SERVER=localhost;UID=A+D;READONLY=0
PORT und SERVER evtl. noch anpassen.
- speichern und testen

Diese Abfragen lassensich auch dynamisch machen, aber wenn du den Weg kennst findest du das auch.

Grüße
Uli

luwg
Neuer Benutzer
Beiträge: 9
Registriert: Do 25. Apr 2013, 17:11

Re: PG User unter Access abfragen

Beitrag von luwg » Fr 11. Okt 2013, 12:26

Hallo Uli,
danke für deine Antwort. Das funktioniert alles so wie du es beschrieben hast.

Mir ist aber derzeit nicht klar, wie ich das Abfrageergebnis in Access als Variablenwert speichern und und z.B. in einem View als Selektionskriterium weiterverwenden kann. Aber das gehört wohl besser in ein Accessforum.

LG Tom

ulischerrer
Benutzer
Beiträge: 32
Registriert: Mi 22. Okt 2008, 15:20

Re: PG User unter Access abfragen

Beitrag von ulischerrer » Mo 21. Okt 2013, 09:58

Hallo Tom,

war in Urlaub, vermutlich hast du die Lösung gefunden. Wenn nicht müsste das so gehen.
Angenommen deine Abfrage zum postgres User heisst vwCurrentUser dann kannst du das Ergebnis in anderen Abfragen so verwenden:

Code: Alles auswählen

select a, b, c
  from deine_tabelle
 where dein_user = (select current_user from vwCurrentUser)


Grüße
Uli

luwg
Neuer Benutzer
Beiträge: 9
Registriert: Do 25. Apr 2013, 17:11

Re: PG User unter Access abfragen

Beitrag von luwg » Fr 4. Apr 2014, 15:21

ulischerrer hat geschrieben:Hallo Tom,

war in Urlaub, vermutlich hast du die Lösung gefunden. Wenn nicht müsste das so gehen.
Angenommen deine Abfrage zum postgres User heisst vwCurrentUser dann kannst du das Ergebnis in anderen Abfragen so verwenden:

Code: Alles auswählen

select a, b, c
  from deine_tabelle
 where dein_user = (select current_user from vwCurrentUser)


Grüße
Uli


Danke Uli, habe deine Antwort erst eben gesehen.
LG Tom

Antworten