簡體   English   中英

df to table 拋出錯誤 TypeError: __init__() got multiple values for argument 'schema'

[英]df to table throw error TypeError: __init__() got multiple values for argument 'schema'

我在 pandas 中有 dataframe:- purchase_df。 我想把它轉換成 sql 表,這樣我就可以在 pandas 中執行 sql 查詢。我試過這個方法

purchase_df.to_sql('purchase_df', con=engine, if_exists='replace', index=False)

它拋出一個錯誤

TypeError: __init__() got multiple values for argument 'schema'

我有 dataframe 名稱 purchase_df,我需要對其執行 sql 查詢。 我需要像這樣對這個 dataframe 執行 sql 查詢....engine.execute('''select * from purchase_df where condition'''). 為此,我需要將 dataframe 轉換為 sql 表,因為在我們的服務器中未安裝 pandas_sql,僅安裝了 sql 煉金術。

我在本地 pycharm 中運行了這段代碼,它工作得很好,但是當我在 databrick notebook 中嘗試這個時,它顯示了一個錯誤。 盡管一周前它在數據塊筆記本中也運行良好。 幫我解決這個問題。

注意:- pandas 版本 '1.3.4' 名稱:SQLAlchemy 版本:2.0.0

似乎 SQLAlchemy 的2.0.0 版本(2023 年 1 月 26 日發布)與的早期版本不兼容。 我建議您將 pandas 版本升級到最新版本(1.5.3 版)

pip install --upgrade pandas

或者:

conda upgrade pandas

我在數據塊中遇到了同樣的問題,我不得不將 sql alchemy 降級為 pip install sqlalchemy==1.4.46

我在 AWS 遇到了與數據塊完全相同的問題。 我嘗試了更高的解決方案,但對我沒有任何用處。 所以我安裝了 sqlalchemy-databricks 庫而不是 SQLAlchemy,一切都恢復了生機。 https://pypi.org/project/sqlalchemy-databricks/請先卸載/清除SQLAlchemy,以免與sqlalchemy-databricks沖突。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM