sql >> Database >  >> RDS >> PostgreSQL

Kan ik arrays in hstore opslaan met Rails?

hstore is bedoeld voor eenvoudige sleutel/waarde-opslag, waarbij zowel de sleutels als de waarden eenvoudige ongestructureerde tekenreeksen zijn. Uit de fijne handleiding :

Let op de laatste zin:sleutels en waarden in hstore zijn snaren. Dat betekent dat je geen array in een hstore . kunt plaatsen waarde zonder enige handholding om de array van en naar een string te converteren en je wilt echt niet met dat soort dingen gaan rommelen.

Er is echter een JSON-gegevenstype beschikbaar:

en JSON kan gemakkelijk ingesloten arrays en objecten aan. Probeer in plaats daarvan JSON te gebruiken:

add_column :users, :properties, :json

Je moet de oude hstore . verwijderen kolom eerst echter.

Je wilde ook geen array: true op je hstore kolom omdat u geen array van hstore opsloeg s, je wilde er gewoon een.



  1. Een kolom uit een weergave verwijderen

  2. Stop alsjeblieft met het gebruik van dit UPSERT-antipatroon!

  3. rijvolgorde bij het invoegen van meerdere rijen in MySQL

  4. mysql-vertaaltabellen met ontbrekende taalterugval