wir haben ein Programm, welches aus einer Tabellendefinition eine neue Tabelle in Postgres erstellt. In der Definition steht z.B. der Spaltennname, der Feldtyp und die Länge.
Jetzt habe ich eine Datenbank/Tabellen, welche ich gerne in die Tabellendefiniton schreiben möchte.
Gibt es eine Abfrage, um den Spaltennamen, Feldtyp und Länge abzufragen (Geht \d nur in der Console?) und das Ergebniss in eine neue Tabelle schreiben?
Müsste ja eine Art Update sein?
Kann ich diese Abfrage auf alle Tabellen in der DB anwenden (ohne php-Schleife)
Gruß Karl
Beispiel:
Ich habe eine Tabelle Haus. Die Definition soll in der Definitonstabelle stehen.
Haus
id_haus (serial), bewohner (varchar(20))
Definitionstabelle:
Haus – id_haus – serial – 0
Haus – bewohner – varchar – interger – 20
Das, was Du suchst, steht in information_schema.columns für jede einzelne Tabelle, die existiert. Du kannst also diese abfragen und die dich interessierenden Dinge da herholen und woanders speichern. Nennt sich dann ‘Redundanz’
Gibt es eine Abfrage, um den Spaltennamen, Feldtyp und Länge abzufragen (Geht \d nur in der Console?) und das Ergebniss in eine neue Tabelle schreiben?
verstehe ich so, daß er das, was \d liefert, als SQL haben möchte. Ach ja, er kann auch psql mit -E starten …
Das habe ich gesucht. Jetzt muss ich halt noch nen kleines bisschen rumbasteln.Es gibt ja ebenfalls zwei Defintionstabellen. Wie die zwei Sichten: columns und tables. cheers