Как это можно решить ? добавление в Postgres

У меня есть код, который добавляет данные в PostgreSQL, но проблема в том, что, когда нету ключа то он начинает выдавать KeyError. Я бы мог бы это решить с помощью try, но когда я это ставлю, то он пропускает все, даже где есть этот ключ. Как можно это решить ?

with open('test3.json') as file:
    data = json.load(file)


out = data

with psycopg2.connect("dbname='test' user='user' host='127.0.0.1' password='12345'") as conn1:
    with conn1.cursor() as cur:

        cur.executemany("INSERT INTO test VALUES (%(Object)s, %(subobject)s, %(Name)s, %(Ip)s, %(Status)s, %(Mac)s, %(sn)s);", out)

        conn1.commit()

Данные:

[{
      "Object": "info 1",
      "subobject": "info 2",
      "Name": "info 3",
      "Ip": "info 4",
      "Status": "info 5",
      "Mac": "info 6",
      "Worker": "info 7",
      "Sn": "info 8",
   },
   {
      "Object": "info 9",
      "subobject": "info 10",
      "Name": "info 11",
      "Ip": "info 12",
      "Status": "info 13",
      "Mac": "info 14",
      "Worker": "info 15",
      "Sn": "info 16",
      "#4F6128": "info 17",
      "#F79646": "info 18",
      "#92D050": "19",
      "#A00000": "info 20"
   }]

ругается на "Worker", "#4F6128", "#92D050", "#A00000". Так как они не везде есть. Вместо них можно было написать no

Error:

cur.executemany("INSERT INTO test VALUES  (%(Object)s, %(subobject)s, %(Name)s, %(Ip)s, %(Status)s, %(Mac)s,  %(worker)s,  %(sn)s);", out)
KeyError: 'worker'

Ответы (0 шт):