PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Menargetkan nilai tertentu dari JSON API dan memasukkan ke dalam Postgresql, menggunakan Python

Pertama, ekstrak ids ke dalam daftar tupel:

ids = list((item['id'],) for item in data['issues'])
# example ids: [('41508',), ('41509',)]

Selanjutnya gunakan fungsi extras.execute_values():

from psycopg2 import extras

query = """
    INSERT into Countries (revenue)
    VALUES %s;
"""
extras.execute_values(cursor, query, ids)

Argumen kedua dari fungsi executemany(query, vars_list) harus berupa urutan saat data adalah objek yang elemennya tidak dapat diakses oleh indeks bilangan bulat.

Karena kinerjanya, fungsi pertama mengeksekusi satu kueri dengan beberapa argumen, sedangkan yang kedua mengeksekusi kueri sebanyak argumen.

Perhatikan, bahwa secara default argumen ketiga execute_values() adalah daftar tupel, jadi kami mengekstrak ids hanya dengan cara ini.

Jika Anda harus memasukkan nilai ke lebih dari satu kolom, setiap tupel dalam daftar harus berisi semua nilai untuk satu baris yang disisipkan, contoh:

values = list((item['id'], item['key']) for item in data['issues'])

query = """
    INSERT into Countries (id, revenue)
    VALUES %s;
"""
extras.execute_values(cur, query, values)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara saya terhubung ke PostgreSQL tanpa menentukan nama database?

  2. Memindahkan Prosedur Oracle ke PostgreSQL

  3. Apakah PostgreSQL menggunakan tf-idf?

  4. default untuk kolom xxxx tidak dapat dilemparkan secara otomatis untuk mengetik boolean di Postgres DB

  5. Backup &Restore database PostgreSQL dan setup lingkungan localhost dengan laravel di windows 7