SQLAlchemy ORM による Python データベースと MySQL データベースのシームレスな統合について調べてください。 Pythonの強力なツールとベストプラクティスを活用して効率的なデータ管理を行い、MySQLのシンプルさとSQLAlchemyの柔軟性を組み合わせてデータベース操作を強化する方法を学びます。

• Python 3
• Python 3.12

Equipment list

Here you can find the list of equipment used to create this tutorial.

This link will also show the software list used to create this tutorial.

関連するチュートリアル – Python

このページでは、Python に関連するチュートリアルのリストにすばやくアクセスできます。

ORMとは?

ORM は オブジェクトリレーショナル マッピング を表します。 これは、オブジェクト指向プログラミング言語で互換性のないシステム間でデータを変換できるようにするプログラミング手法です。 データベースのコンテキストでは、ORMはリレーショナルデータベース管理システムのテーブルにオブジェクトをマップするために使用されます。

なぜPythonでORMを使うのですか?

Python の ORM は、基礎となる SQL ステートメントを抽象化し、開発者がコード内でオブジェクトを直接操作できるようにすることで、データベースと対話する便利な方法を提供します。 これにより、データベース操作が簡素化され、コードの移植性が向上し、SQLインジェクション攻撃の防止によるセキュリティの向上、データベースクエリの明確で簡潔な構文の提供によるコードのメンテナンスの容易化、個別のデータベース設定を必要とせずにメモリ内でオブジェクトを操作できるようにすることで単体テストが容易になります。

SQLAlchemyとは何ですか?

SQLAlchemyは、Pythonプログラミング言語用のオープンソースのSQLツールキットおよびオブジェクトリレーショナルマッピング(ORM)ライブラリです。 リレーショナルデータベースを操作するための包括的なツールセットを提供し、開発者がPythonオブジェクトを使用してデータベースを操作できるようにします。 SQLAlchemyのコアは、SQLステートメントの作成と実行を可能にするSQL式言語を提供し、そのORMはPythonクラスからデータベーステーブルへのマッピングを容易にし、開発者がデータベース行をオブジェクトとして操作できるようにします。

チュートリアル – SQLAlchemy ORMを使用したMySQLデータベース

MySQLデータベースをインストールします。

Copy to Clipboard

この例では、Linuxを実行しているコンピューターにインストールしました。

MySQLサービスにROOTユーザーとしてアクセスします。

Copy to Clipboard

データベースを作成します。

Copy to Clipboard

ユーザー アカウントを作成します。

Copy to Clipboard

作成されたデータベースに対する権限をこのユーザー アカウントに付与します。

Copy to Clipboard

MY_PYTHON_USERアカウントはDRAGONBALLZデータベースへのアクセスを許可されます。

新しいアカウントを使用して、データベースへのMySQL接続をテストします。

Copy to Clipboard

デスクトップで、PIP を使用して SQLAlchemy をインストールします。

Copy to Clipboard

MySQL サーバーに接続するために必要な Python パッケージをインストールします。

Copy to Clipboard

Python ファイルを作成します。

Copy to Clipboard

SQLAlchemyからモジュールと機能をインポートします。

Copy to Clipboard

データベースへの接続を確立します。

Copy to Clipboard

SQLAlchemyエンジンは、データベースへの接続を確立するために使用されます。

ECHO 引数はオプションであり、実行されたすべての SQL 操作を画面に表示するために使用されます。

モデルを宣言する基底クラスを作成します。

Copy to Clipboard

テーブルのモデルを定義します。

Copy to Clipboard

データベースにテーブルを作成します。

Copy to Clipboard

これにより、接続されたMySQLデータベースにテーブルが作成されます。 これは、自動インクリメントに設定された主キーとしての ID、NAME、SPECIAL_MOVE、SS_LEVEL、EYE_COLOR の 5 つの列でテーブルの構造を定義します。

データベースと対話する前に、セッションを作成する必要があります。

Copy to Clipboard

テーブルにデータを挿入します。

Copy to Clipboard

テーブルへの変更を保存します。

Copy to Clipboard

テーブルに格納されているすべての情報を照会します。

Copy to Clipboard

取得した情報を表示します。

Copy to Clipboard

コマンド出力を次に示します。

Copy to Clipboard

書式設定された文字列として取得した情報を表示します。

Copy to Clipboard

コマンド出力を次に示します。

Copy to Clipboard

必要に応じて、特定のフィールドのみをクエリします。

Copy to Clipboard

コマンド出力を次に示します。

Copy to Clipboard

データベースへの接続を閉じます。

Copy to Clipboard

完全な Python スクリプトを次に示します。

Copy to Clipboard

結論

SQLAlchemy ORMを組み込むことで、PythonでのMySQLデータベース管理が簡素化され、データ操作の効率が向上し、シームレスなオブジェクト指向のエクスペリエンスが提供されます。 堅牢なデータ操作を簡単に導入できます。