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

Kan jeg gemme arrays i hstore med Rails

hstore er beregnet til simpel nøgle/værdi lagring, hvor både nøgler og værdier er simple ustrukturerede strenge. Fra den fine manual :

Bemærk den sidste sætning:nøgler og værdier i hstore er strenge. Det betyder, at du ikke kan placere et array i en hstore værdi uden noget håndtag til at konvertere arrayet til og fra en streng, og du vil virkelig ikke rode rundt med den slags ting.

Der er dog en JSON-datatype tilgængelig:

og JSON kan nemt håndtere indlejrede arrays og objekter. Prøv at bruge JSON i stedet:

add_column :users, :properties, :json

Du bliver nødt til at fjerne den gamle hstore kolonne først.

Du ville heller ikke have array: true på din hstore kolonne, da du ikke lagrede et array af hstore s, du ville bare have en af ​​dem.



  1. MySQL Deltag og få alle relationer, selvom 0

  2. Henter antallet af rækker med en bestemt værdi efter filtrering af forespørgsel gennem datovælger

  3. Forståelse af cast fra bytea til oid

  4. Hvordan returnerer jeg en jsonb-array og en række objekter fra mine data?