2017-04-21 2 views
1

Ich arbeitete mit dem ESRI-Geodat, wo Sie einige Metadaten (auch in Übereinstimmung mit einigen internationalen Standards) einfügen können, wie Erstellungsdatum, Organisation, Quelle, Copyright-Informationen usw.Hinzufügen von Standard-Metadaten zu einer Tabelle - Postgresql

Gibt es in Postgres etwas Ähnliches für Metadaten einer Tabelle als Ganzes? Ich kenne nur COMMENT, aber es scheint zu arm für meine Zwecke. Hier

+1

Die Tabelleneigenschaften, die ich vermutete, waren nur Zeilen in einer anderen Tabelle, die Sie über irgendeine Form bevölkerten. Wenn ja - ja, das kannst du in jedem db tun –

+0

Danke! ... Aber wie kann ich die "Metadatentabelle" mit der gesamten "Datentabelle" verbinden? Weil ich nur eine Beziehung erstellen kann, die die Datensätze einer Tabelle mit den Datensätzen der anderen verknüpft ... :-(Ich möchte die "Metadaten-Tabelle" (als Ganzes) mit der "Datentabelle" verbinden "als Ganzes ... ich denke nicht, dass dies machbar ist, oder irre ich mich? – BeginnerMe

+0

Ich bin mir nicht sicher, ob wir auf der gleichen Welle sind. Ich postete ein Beispiel, wie Sie" Metadaten "speichern können und wie + - Ich denke, es wurde in ESRI geodb gemacht –

Antwort

0

ist ein sehr naives Beispiel dafür, wie Sie nach Ihren Wünschen „Metadaten“

damit übernehmen sparen können Sie zwei Tabellen haben Sie haben Daten über:

t=# create table so66(i int, t text); 
CREATE TABLE 
Time: 5.431 ms 
t=# create table so67(i int, t text); 
CREATE TABLE 
Time: 4.797 ms 

und „Metadaten "Halter Tabelle:

t=# create table metadata(tname text, created timestamptz, details json); 
CREATE TABLE 
Time: 6.814 ms 
t=# insert into metadata select 'so66',now(),'{"organization":"n/a","source":"manual","catalog":false}'; 
INSERT 0 1 
Time: 3.144 ms 
t=# insert into metadata select 'so76',now(),'{"organization":"home","source":"manual","catalog":true}'; 
INSERT 0 1 
Time: 0.907 ms 

t=# select * from metadata ; 
tname |   created   |       details 
-------+-------------------------------+---------------------------------------------------------- 
so66 | 2017-04-21 09:24:08.233346+00 | {"organization":"n/a","source":"manual","catalog":false} 
so76 | 2017-04-21 09:24:26.641526+00 | {"organization":"home","source":"manual","catalog":true} 
(2 rows) 

Time: 0.253 ms 

Ich verwendete JSON, um beliebige Details zu speichern. Natürlich können Sie Spalten mit speziellen Datentypen für Ihre Bedürfnisse hinzufügen. Vielleicht möchten Sie auch oids anstelle von Tabellennamen verwenden oder eine Logik beim Einfügen/Aktualisieren von ihm machen.

+0

Jetzt Ich hab! Du legst einfach die Tabellennamen in ein Feld! - -o es war so einfach, ich habe nicht gedacht ... Vielen Dank! Das hat mir wirklich geholfen! – BeginnerMe

Verwandte Themen