sql >> Database >  >> RDS >> PostgreSQL

Voeg een klein woordenboek in zoals {1:23, 2:45, 3:17} in een kolom van de SQL-databasetabel in Postgres met behulp van python-taal

Gebruik gewoon json.dumps voor json-gegevens (serialiseert naar string) zoals vermeld in de docs en laat psycopg2 doe al het werk en parameterbinding:

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())

Uit:

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


  1. Rapportageservices voor SQL-servers:hoe u kunt voorkomen dat een rapport wordt geactiveerd wanneer het wordt geopend?

  2. Dubbel aanhalingsteken in de naam van de tabel in de selectiequery van PostgreSQL

  3. Retourneer een query van een functie?

  4. Hoe het totale orderbedrag per dag in een grafiek weer te geven?