В настоящее время я делаю проект, структура которого MySQL выглядит следующим образом:
Мне нужно загрузить данные о применении из python pandas. MySQL применить таблицу. Но поскольку исходный pandas dataframe имеет элементы episode_id, отсутствующие в теге ACS (нарушая ограничения внешнего ключа). В этом случае я хочу пропустить загрузку этих строк, нарушая MySQL ключи внешних ограничений, и продолжить загружать другие строки. Ниже приведены коды, которые я пробовал после множества поисков, включая документ sqlachemy:
import mysql.connector as connector
from sqlalchemy import create_engine
engine = create_engine(
'mysql+mysqlconnector://root:12345' +
'@localhost:3306/icd_10_study',
echo=False)
with engine.begin() as cnn:
insert_sql = """INSERT IGNORE INTO apply (episode_id, standard_id) VALUES (%(episode_id)s,
% (standard_id)s)"""
cnn.execute(insert_sql % insert_sql)
applies.to_sql(name='apply', con=engine,
if_exists = 'append', index=False)
, но этот код сообщает об ошибках программирования. Ищет кого-то, кто может помочь в этом случае. Я пытался прочитать страницу: https://docs.sqlalchemy.org/en/13/core/connections.html. Но на этой странице я не понимаю, что означает «table1», и, следовательно, не помогал моей проблеме вообще. Нужна помощь здесь.