PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Come memorizzare una tabella di dati nel database?

Esistono due tipi particolarmente adatti per memorizzare dizionari nel complesso:hstore e json - o il per lo più superiore jsonb in Postgres 9.4 o versioni successive.

Postgres ha anche un xml tipo di dati, ma preferirei scegliere una delle tre precedenti opzioni. XML è relativamente dettagliato e più complesso (per non dire contorto) e potrebbe essere eccessivo per il tuo scopo.

Se tutto ciò che desideri dal DB è archiviare e recuperare l'intero dizionario, queste sono buone opzioni. Vedi:

Troverai anche un'ampia discussione su pro e contro su (entità-attributo-valore) archiviazione in database relazionali.

Se vuoi altre cose dal DB, come integrità referenziale, chiavi esterne o vari altri vincoli, facile accesso ai singoli valori, dimensioni di archiviazione minime, indici semplici ecc. Ti suggerisco una o più tabelle con (normalizzato ) colonne.

Disposizione tabella normalizzata

Da quello che ho capito, "MyObject" (m ) contiene una raccolta di riferimenti a "OtherObject" (o ). Ogni m è correlato a (24) o e ogni o è correlato a 0-n m - che può essere implementato in una classica relazione n:m. Ecco le istruzioni dettagliate: