Невозможно добавить строки в таблицу postgresql с помощью pd.to_ sql при опускании первичного ключа - PullRequest
0 голосов
/ 12 июля 2020

Извиняюсь за основной c вопрос, я новичок в этом. У меня возникла проблема при добавлении строк в таблицу Postgresql в pandas и размещении на Amazon RDS. Я создал пустую таблицу с именем try с 4 полями, с record_id как SERIAL PRIMARY KEY, используя следующий оператор:

("""CREATE TABLE try(
record_id SERIAL PRIMARY KEY,
symbol text,
name float,
start_popularity integer)""")

Вытягивание таблицы с помощью:

df1 = pd.read_sql('SELECT * FROM try', con)

дает пустую таблицу с ожидаемой структурой:

record_id   symbol  name    start_popularity

Я пытаюсь добавить 5 строк из фрейма данных с именем df_try в таблицу и опускаю record_ID, так как я хочу, чтобы база данных автоматически назначила первичный ключ (это нормально, когда я генерирую record_id и добавляю весь фрейм данных).

    symbol  name    start_popularity
0   A   Agilent 1480
1   AA  Alcoa   5733
2   AACG    ATA Creativity Global   1663
3   AAL American Airlines   659935
4   AAN Aarons  103

Я использую следующий подход:

df_try.to_sql('try', engine, if_exists='append', index=False)

Я получаю DataError:

DataError: (psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type double precision: "Agilent"
LINE 1: ...try (symbol, name, start_popularity) VALUES ('A', 'Agilent',...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...