ホームページ > データベース > mysql チュートリアル > Python を使用して MySQL で INSERT 後に自動生成されたキーを取得する方法

Python を使用して MySQL で INSERT 後に自動生成されたキーを取得する方法

Susan Sarandon
リリース: 2024-12-16 18:29:12
オリジナル
619 人が閲覧しました

How to Retrieve Auto-Generated Keys After INSERT in MySQL with Python?

Python を使用して MySQL で INSERT ステートメントの後に自動生成されたキーを取得する

Python を使用して MySQL データベースで INSERT 操作を実行する場合、多くの場合、新しく挿入された行の主キーまたは自動生成された ID を取得することが必要になります。これは、後続の操作で挿入された行を参照したり、行の一意性を維持したりする場合に役立ちます。

cursor.lastrowid の使用

Python MySQL コネクタはカーソルを提供しますこのオブジェクトを初期化すると、SQL ステートメントを実行し、結果のデータを取得するために使用できます。 INSERT ステートメントの実行後、cursor.lastrowid 属性には、新しく挿入された行の主キーまたは自動生成された ID が含まれます。

たとえば、次のコードを考えてみましょう。

import mysql.connector

conn = mysql.connector.connect(...)
cursor = conn.cursor()
cursor.execute("INSERT INTO mytable(height) VALUES(%s)", (height))
inserted_id = cursor.lastrowid
ログイン後にコピー

このコードでは、lastrowid 属性が取得され、insert_id 変数に保存されます。この ID は、新しく挿入された行の主キーを表します。

connection.insert_id() を使用する

または、接続オブジェクト自体が ID を返す insert_id 属性を提供します。接続を通じて挿入された最後の行。この属性は、カーソルが閉じられた後でも使用できます。

次のコードは、connection.insert_id() の使用方法を示しています。

import mysql.connector

conn = mysql.connector.connect(...)
cursor = conn.cursor()
cursor.execute("INSERT INTO mytable(height) VALUES(%s)", (height))
inserted_id = conn.insert_id()
ログイン後にコピー

使用されるメソッドに関係なく、取得された insert_id またはlastrowid は、データベースに新しく挿入された行を識別するために利用できます。

以上がPython を使用して MySQL で INSERT 後に自動生成されたキーを取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート