Добавление данных в базу данных postgres с помощью скрипта Python и получение строковых индексов должно быть ошибкой целых чисел - PullRequest
0 голосов
/ 02 июля 2019

Я пытаюсь добавить некоторые данные в свою базу данных с помощью psycopg2. Данные, которые у меня есть, взяты из ответов API и представлены в формате json.dumps. Когда я запускаю свой скрипт, я получаю сообщение об ошибке: string indices must be integers

Я пробовал несколько решений, и у меня ничего не работает. Моя БД настроена на получение текстовых значений для всех полей. Вот мой сценарий.

Любые предложения или информацию, которую я могу рассмотреть? Спасибо

Я просмотрел этот сайт и некоторые другие: https://pynative.com/python-postgresql-insert-update-delete-table-data-to-perform-crud-operations/

img_type = str(dataDB['image_type'])
img_1set = str(dataDB['classes'])

img_score = str(img_1set[0]['score'])
img_class = str(img_1set[0]['class'])

# adding results to db
try:
    connection = psycopg2.connect(user="xxxxxxxxxxxxxxx",
                                  password="xxxxxxxxxxxxxxxxxxxx",
                                  host="xzxzxzxxzxzxzxzxzxzxzxzxzxzxzxzxz",
                                  port="00000",
                                  database="zxc")
    cursor = connection.cursor()
    new_record = (call_status, roundtrip, img_type, img_1set, img_score, img_class)
    insert_command = """ INSERT INTO 
        results_test_one(call_status, roundtrip, img_type, img_1set, 
        img_score, img_class) VALUES (%s,%s,%s,%s,%s,%s)"""
    pprint(insert_command)
    cursor.execute(insert_command, new_record)
    connection.commit()
    count = cursor.rowcount
    print(count, "Record inserted successfully into table")

except (Exception, psycopg2.Error) as error:
    if (connection):
        print("Failed to insert record into table", error)
...