ホームページ >データベース >mysql チュートリアル >Python datetime.datetime オブジェクトを MySQL DATE 列に挿入する方法

Python datetime.datetime オブジェクトを MySQL DATE 列に挿入する方法

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-27 03:01:09784ブラウズ

How to Insert a Python datetime.datetime Object into a MySQL DATE Column?

MySQL への datetime.datetime オブジェクトの挿入

MySQL テーブルの日付列に datetime.datetime オブジェクトを挿入しようとすると、 「TypeError: 文字列のフォーマット中に一部の引数が変換されませんでした」エラーが発生する場合があります。このエラーの原因は、datetime.datetime オブジェクトと、通常は文字列値に使用されるプレースホルダー '%s' との間の非互換性です。

この問題を解決するには、datetime.datetime をフォーマットする必要があります。オブジェクトを MySQL が認識できる文字列に変換します。推奨されるアプローチは、time モジュールの strftime() メソッドを使用することです。その方法は次のとおりです。

import time

now = datetime.datetime(2009, 5, 5)
mysql_date = time.strftime('%Y-%m-%d %H:%M:%S')

cursor.execute("INSERT INTO table
(name, id, datecolumn) VALUES (%s, %s, %s)", ("name", 4, mysql_date))

datetime.datetime オブジェクトを strftime() でフォーマットすることにより、結果の文字列は MySQL の日付列と互換性があります。 strftime() メソッドは、日付と時刻の目的の出力形式を指定する特定の形式文字列を受け入れます。この例では、「%Y-%m-%d %H:%M:%S」は、年-月-日 時:分:秒の形式を表します。このフォーマット文字列は、特定の要件に合わせて調整できます。

この修正されたアプローチにより、エラーが発生することなく、MySQL テーブルに datetime.datetime オブジェクトを正常に挿入できるようになります。

以上がPython datetime.datetime オブジェクトを MySQL DATE 列に挿入する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。