InvalidRequestError: Table ‘user’ is already defined for this MetaData instance.

AI・データサイエンス、
機械学習の実践力を高めたい方へ

  • プログラミングを0から学びたい
  • データサイエンティスト、データ
    アナリストを目指したい
  • AIエンジニア、大規模言語モデル(LLM)エンジニアを目指したい

AI人材コースを無料体験してみませんか?

  • 無料で120以上の教材を学び放題!
  • Pythonやデータ分析、機械学習など
    AI人材に必須のスキルを無料体験できる!
  • データ分析、AI開発の一連の流れを体験、実務につながる基礎スキルを習得!

1分で簡単!無料!

無料体験して特典を受け取る

InvalidRequestError: Table ‘xxxxx’ is already defined for this MetaData instance. とは

SQLModelを使っていると「InvalidRequestError: Table ‘xxxxx’ is already defined for this MetaData instance.」といったエラーが出る場合があります。

このエラーは、既に存在するテーブルがメタデータインスタンスに定義されている場合に、SQLModelでは以下のようなエラーを出力します。

InvalidRequestError: Table 'user' is already defined for this MetaData instance.  
Specify 'extend_existing=True' to redefine options and columns on an existing Table object.

この場合、Userモデル内に、table_args = {‘extend_existing’: True}の記載をするとエラーを回避できます。

class User(SQLModel, table=True):
    __table_args__ = {'extend_existing': True} 
    user_id: Optional[int] = Field(primary_key=True)
    user_name: str

参考:SQLModelとは 〜SQLModelインストール・DB接続・データ追加・データ取得まで〜

Pythonを効率よく学ぶには?

Pythonを効率よく学ぶには、普段からPythonを利用している現役のデータサイエンティストや機械学習エンジニアに質問できる環境で学ぶことです。
質問し放題かつ、体系的に学べる動画コンテンツでデータ分析技術を学びたい方は、オンラインで好きな時間に勉強できるAI Academy Bootcampがオススメです。受講料も業界最安値の35,000円(6ヶ月間質問し放題+オリジナルの動画コンテンツ、テキストコンテンツの利用可能)なので、是非ご活用ください。

bootcamp_ad_72ppi.png



  • 30時間以上の動画講座が見放題!
  • 追加購入不要!
    これだけで学習できるカリキュラム
  • (質問制度や添削プラン等)
    充実したサポート体制!

1分で簡単!無料!

AI人材コースを見る



無料体験して特典を受け取る

コメントを残す