PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Insérez un petit dictionnaire comme {1:23, 2:45, 3:17} dans une colonne de table de base de données SQL dans Postgres en utilisant le langage python

Utilisez simplement json.dumps pour les données json (sérialisées en chaîne) comme mentionné dans la docs et laissez psycopg2 faire tout le travail et la liaison des paramètres :

cattle_id = 'cattle_A'
step_count_dict = json.dumps({1: 22, 4: 12})
speed_dict = json.dumps({2: 24, 6: 98})

cur = con.cursor()
query = "INSERT INTO global_records(cattle_id, step_count, speed) VALUES (%s, %s, %s)"
cur.execute(query, (cattle_id, step_count_dict, speed_dict))
con.commit()

cur.execute('Select * from global_records')
print(cur.fetchall())

Sortie :

[('cattle_A', {'1': 22, '4': 12}, {'2': 24, '6': 98})]