sql >> Databáze >  >> RDS >> PostgreSQL

Vložte Python Dictionary pomocí Psycopg2

from psycopg2.extensions import AsIs

song = {
    'title': 'song 1',
    'artist': 'artist 1'
}

columns = song.keys()
values = [song[column] for column in columns]

insert_statement = 'insert into song_table (%s) values %s'

    # cursor.execute(insert_statement, (AsIs(','.join(columns)), tuple(values)))
print cursor.mogrify(insert_statement, (AsIs(','.join(columns)), tuple(values)))

Tiskne:

insert into song_table (artist,title) values ('artist 1', 'song 1')

Psychopg přizpůsobuje tuple do record a AsIs dělá to, co by udělala substituce řetězce v Pythonu.



  1. Začínáme s Postgres 13 na Ubuntu 20.04

  2. Jak funguje funkce REPLICATE() v SQL Server (T-SQL)

  3. Aktualizace kroku úlohy pro úlohu SQL Server Agent (T-SQL)

  4. Existuje způsob, jak zakázat aktualizace/mazání, ale přesto umožnit spouštěčům je provádět?