SQLAlchemy AttributeError: объект 'module' не имеет атрибута 'PandasSQLAlchemy'

Я пишу pandas Dataframe в базу данных Postgres:

from sqlalchemy import create_engine, MetaData engine = create_engine(r'postgresql://user:password@localhost:5432/db') meta = MetaData(engine, schema='data_quality') meta.reflect(engine, schema='data_quality') pdsql = pd.io.sql.PandasSQLAlchemy(engine, meta=meta) pdsql.to_sql(dataframe, table_name) 

Он работал отлично, но теперь SQLAlchemy бросает следующую ошибку на 5-й строке:

 AttributeError: 'module' object has no attribute 'PandasSQLAlchemy' 

Я не уверен, что это связано, но Pandas сломался одновременно – точно так же, как в этой проблеме google-api-python-client:

Не удалось импортировать Pandas: TypeError

Вчера я установил google-api-python-client и деинсталляция исправила проблему с Pandas, но SQLAlchemy все еще не работает.

One Solution collect form web for “SQLAlchemy AttributeError: объект 'module' не имеет атрибута 'PandasSQLAlchemy'”

Я полагаю, вы используете панды 0,15. PandasSQLAlchemy еще не была общедоступной и была переименована в pandas 0.15 в SQLDatabase . Поэтому, если вы замените это в своем коде, он должен работать (поэтому pdsql = pd.io.sql.SQLDatabase(engine, meta=meta) ).

Однако, начиная с pandas 0.15, есть также поддержка схемы в read_sql_table и to_sql , поэтому не требуется вручную SQLDatabase объекты MetaData и SQLDatabase . Вместо этого это должно сделать это:

 dataframe.to_sql(table_name, engine, schema='data_quality') 

См. Примечания к выпуску 0.15: http://pandas.pydata.org/pandas-docs/stable/whatsnew.html#improvements-in-the-sql-io-module

  • Flask: Как управлять различными базами данных среды?
  • SQLAlchemy ORM: Наследование полиморфных одиночных таблиц с возвратом к родительскому классу, если «polymorphic_identity» не найден
  • Получить первичный ключ после вставки строк с использованием sqlalchemy
  • sqlalchemy date как строка в raw sql
  • SQLAlchemy Логическое значение этого предложения не определено
  • Фильтр по внукам в SQLAlchemy
  • SQL Alchemy ORM возвращает один столбец, как избежать обычной обработки сообщений
  • SQLAlchemy удаление многих-ко-многим сирот
  • Имеет ли SQLAlchemy эквивалент get_or_create Django?
  • Как использовать помеченную колонку в sqlalchemy filter?
  • SQLAlchemy - эквивалент INSERT или REPLACE
  • Python - лучший язык программирования в мире.