From: | Matthieu Rigal <mar(at)rapideye(dot)net> |
---|---|
To: | psycopg(at)postgresql(dot)org |
Subject: | insert into with a dictionary, or generally with a variable number of columns |
Date: | 2012-07-03 09:59:02 |
Message-ID: | CAH7Xw_Xxgt5A_i-xZtua2ev=DLAbYHCY3k7pNhWQNy==R8MaLg@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | psycopg |
Hi folks,
To make it very simple, I want to save a dictionary to a database.
I have a function that is reading various entries and returns a dictionary.
But the content of this dictionary depends on what it was "given" before.
Sometimes I want to insert a new row with 4 attributes, sometimes with 6...
Therefore, I was hoping to be able to do something like
cursor.mogrify('''INSERT INTO processing.raster_dataset %(columns)s VALUES
%(values)s ''', {'columns' :tuple(metaValues.keys()), 'values' :
tuple(metaValues.values())})
But it is not working, it returns all the column names in bracket and fails.
I tried specifying the columns as :
'columns' : ', '.join(metaValues.keys())
And as you can expect, it neither works.
Does anybody has a suggestion ? I'm sorry I could not find anything on
forums or previous threads, but maybe I was missing some keywords.
For the real enthousiasts, my final request is in fact even a bit harder.
But I think to be able to make once I can do the previous step. One of the
entry of the dictionary can be a geometry, with the value being the WKT
text of a geometry. And I want to convert it to a PostGIS geometry using
the "GeometryFromText()" function when passing the value.
Best Regards,
Matthieu
--
RapidEye AG
Molkenmarkt 30
14776 Brandenburg an der Havel
Germany
Follow us on Twitter! www.twitter.com/rapideye_global
Head Office/Sitz der Gesellschaft: Brandenburg an der Havel
Management Board/Vorstand: Ryan Johnson
Chairman of Supervisory Board/Vorsitzender des Aufsichtsrates: Robert
Johnson
Commercial Register/Handelsregister Potsdam HRB 24742 P
Tax Number/Steuernummer: 048/100/00320
VAT-Ident-Number/Ust.-ID: DE 815303842
DIN EN ISO 9001 certified
From | Date | Subject | |
---|---|---|---|
Next Message | Adrian Klaver | 2012-07-03 14:34:41 | Re: insert into with a dictionary, or generally with a variable number of columns |
Previous Message | Daniele Varrazzo | 2012-07-03 01:25:49 | Re: Change in datetime type casting |