Код: Выделить всё
OperationalError: (pymysql.err.OperationalError) (1050, "Table 'test_table' already exists")
Вот код, который я использую.
Сначала импортируйте и установите соединение с сервером базы данных:
Код: Выделить всё
from sqlalchemy import create_engine
import pymysql
import pandas as pd
sqlEngine = create_engine('mysql+pymysql://username:password@127.0.0.1', pool_recycle=3600)
con = sqlEngine.connect()
Код: Выделить всё
sql = '''
USE my_database
'''
con.execute(sql);
Код: Выделить всё
entry = pd.DataFrame({
'PersonID': 0,
'LastName': 'smith',
'FirstName': 'joe',
}, index=[0])
entry.to_sql('test_table', con, if_exists='append')
Код: Выделить всё
sql = '''
SELECT *
FROM test_table
'''
pd.read_sql_query(sql, con)
Пока все хорошо. Теперь я пытаюсь добавить новую запись в свою таблицу test_table, используя аргумент if_exists='append', чтобы новая запись была добавлена в конец моей существующей таблицы:
Код: Выделить всё
entry = pd.DataFrame({
'PersonID': 1,
'LastName': 'smith',
'FirstName': 'mary',
}, index=[0])
entry.to_sql('test_table', con, if_exists='append')
Код: Выделить всё
OperationalError: (pymysql.err.OperationalError) (1050, "Table 'test_table' already exists")
[SQL:
CREATE TABLE test_table (
`index` BIGINT,
`PersonID` BIGINT,
`LastName` TEXT,
`FirstName` TEXT
)
]
(Background on this error at: https://sqlalche.me/e/14/e3q8)
Подробнее здесь: https://stackoverflow.com/questions/699 ... sts-append
Мобильная версия