タイトル: Python を使用して MySQL にストアド プロシージャを作成するための例と実用的なガイド
MySQL でストアド プロシージャを使用すると、複雑なデータベース操作を効果的にカプセル化し、データベースの実行効率を向上させることができます。安全。この記事では、Python を使用して MySQL ストアド プロシージャを作成する方法を紹介し、参照用の具体的なコード例を示します。
DELIMITER // CREATE PROCEDURE insert_user(IN username VARCHAR(20), IN age INT) BEGIN INSERT INTO users (username, age) VALUES (username, age); END // DELIMITER ;
上記のコードでは、最初に DELIMITER キーワードを使用してコマンド区切り文字を区切ります。 / に変更します。 / ストアド プロシージャに含まれる複数の SQL ステートメントはセミコロン (;) で終わる必要があるためです。次に、CREATE PROCEDURE キーワードを使用して、username と age の 2 つのパラメータを受け入れる insert_user という名前のストアド プロシージャを定義します。新しいレコードを users テーブルに挿入するために、特定の SQL ステートメントが BEGIN キーワードと END キーワードの間に書き込まれます。
import MySQLdb def call_insert_user(username, age): db = MySQLdb.connect(host="localhost", user="root", passwd="password", db="testdb") cursor = db.cursor() try: cursor.callproc('insert_user', (username, age)) db.commit() print("存储过程成功执行") except Exception as e: db.rollback() print("存储过程执行失败:" + str(e)) db.close() # 调用存储过程 call_insert_user("John", 25)
上記のコードでは、まず MySQLdb モジュールを使用して MySQL データベースに接続します。次に、cursor.callproc 関数を使用してストアド プロシージャを呼び出します。この関数は、ストアド プロシージャの名前とパラメーターのタプルの 2 つのパラメーターを受け入れます。最後に、db.commit() を使用してトランザクションをコミットし、データベース接続を閉じます。
概要:
この記事では、Python を使用して MySQL にストアド プロシージャを作成する方法を紹介し、レコードを挿入する例を示します。ストアド プロシージャを使用すると、複雑なデータベース操作をカプセル化することで、データベースの実行効率とセキュリティを向上させることができます。この記事が、MySQL と Python を使用してストアド プロシージャを作成する際の皆様のお役に立てれば幸いです。
以上がPython を使用して MySQL にストアド プロシージャを作成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。