On 4/4/15 7:29 PM, Mike Bayer wrote:
>
>
> On 4/4/15 7:22 PM, Daniel Kerkow wrote:
>> Hi,
>> I am new to SQLAlchemy, doing my first steps with Flask.
>> I have the following model using JSONB data type in PostgreSQL.
>>
>> The JSON data looks like
>>
>> |
>> {'key1':'value1','key2':'value2'}
>> |
>>
>> The Docs are relatively sparse regarding this topic.
>
> the cases you ask for are all described at :
>
> http://docs.sqlalchemy.org/en/rel_0_9/dialects/postgresql.html#sqlalchemy.dialects.postgresql.JSON
>
>> How can I query the properties column for containing a specific key
>> or key=value combination?
>
> select([table]).where(table.c.col['key'] == 'somevalue')
>> How can I update these?
>
> update([table]).values({table.c.col['key'] = 'value'})
sorry, like this:
update([table]).values({table.c.col['key']: 'value'})
from sqlalchemy import Table, Column, MetaData
from sqlalchemy.dialects import postgresql
m = MetaData()
t = Table('t', m, Column('x', postgresql.JSONB))
print t.update().values({t.c.x['data']:
'foo'}).compile(dialect=postgresql.dialect())
output:
UPDATE t SET x -> %(x_1)s=%(param_1)s
>
>> Can I get a list of unique keys in all records?
>
> i dunno. Whats the Postgresql query you'd like to emit?
>
>
>
>>
>> Any help is welcome!
>>
>> Daniel
>>
>> |
>> classRecord(Base):
>>
>> """represents single stratigraphic units"""
>>
>> # ID of corresponding site:
>> site_id
>> =db.Column(db.Integer,db.ForeignKey('public.sites.id'))
>>
>> # depth values:
>> depth =db.Column(db.Numeric,nullable=True)
>> upper_boundary =db.Column(db.Numeric,nullable=True)
>> lower_boundary =db.Column(db.Numeric,nullable=True)
>>
>> # stratigraphic properties, represented as key/value store
>> properties =db.Column(JSONB)
>> |
>>
>> --
>> You received this message because you are subscribed to the Google
>> Groups "sqlalchemy" group.
>> To unsubscribe from this group and stop receiving emails from it,
>> send an email to [email protected]
>> <mailto:[email protected]>.
>> To post to this group, send email to [email protected]
>> <mailto:[email protected]>.
>> Visit this group at http://groups.google.com/group/sqlalchemy.
>> For more options, visit https://groups.google.com/d/optout.
>
--
You received this message because you are subscribed to the Google Groups
"sqlalchemy" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sqlalchemy.
For more options, visit https://groups.google.com/d/optout.