FHEM Forum

FHEM - Entwicklung => FHEM Development => Thema gestartet von: betateilchen am 12 Mai 2014, 22:22:21

Titel: Keine Ahnung von postgresql - ich brauche Hilfe!
Beitrag von: betateilchen am 12 Mai 2014, 22:22:21
Kann mir jemand, der Ahnung von postgresql hat, einen Tipp geben, wie ich abfragen kann, ob in einer Datenbank eine bestimmte Tabelle vorhanden ist? Ich weiss, dass es da einen Katalog gibt, aber keine Ahnung wie ich das abfragen muss.

Für sqlite und mysql hab ich die Aufgabe schon gelöst.
Titel: Antw:Keine Ahnung von postgresql - ich brauche Hilfe!
Beitrag von: Dr. Boris Neubert am 12 Mai 2014, 22:37:21
http://lmgtfy.com/?q=tabelle+in+postgresql+vorhanden

scnr

5. Link von oben :-)

bn
Titel: Antw:Keine Ahnung von postgresql - ich brauche Hilfe!
Beitrag von: justme1968 am 12 Mai 2014, 22:38:41
per shell oder per select?

in der psql shell mit \d

mit select auf pg_tables oder information_schema wenn die version neu genug ist.

gruss
  andre
Titel: Antw:Keine Ahnung von postgresql - ich brauche Hilfe!
Beitrag von: betateilchen am 12 Mai 2014, 22:41:07
@Boris das ist nicht das, was ich suche ;) Trotzdem danke.

@Andre

ich dachte an sowas:

$ret = $fhem_dbh->selectrow_array("SELECT count(1) from pg_catalog.pg.tables where tablename = 'fhemfilesave'");

das müsste nach meinem Verständnis 1 zurückliefern, wenn es die Tabelle gibt, ansonsten 0.

Titel: Antw:Keine Ahnung von postgresql - ich brauche Hilfe!
Beitrag von: justme1968 am 12 Mai 2014, 23:02:43
ja. genau so.

aber in deinem beispiel ist zumindest noch ein . falsch pg_tables:$ret = $fhem_dbh->selectrow_array("SELECT count(1) from pg_catalog.pg_tables where tablename = 'fhemfilesave'");
Titel: Antw:Keine Ahnung von postgresql - ich brauche Hilfe!
Beitrag von: justme1968 am 12 Mai 2014, 23:11:52
gerade noch mal auf der psql shell mit version 8.4.7 getestet und es geht.
Titel: Antw:Keine Ahnung von postgresql - ich brauche Hilfe!
Beitrag von: betateilchen am 12 Mai 2014, 23:29:25
danke!