Peewee ORMによるPythonとMySQLデータベースの相乗効果を発見してください。 Python の機能を活用して効率的なデータ処理を行い、MySQL のシンプルさと Peewee のシームレスな統合を融合させる方法を学びます。
• 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インジェクション攻撃の防止によるセキュリティの向上、データベースクエリの明確で簡潔な構文の提供によるコードのメンテナンスの容易化、個別のデータベース設定を必要とせずにメモリ内でオブジェクトを操作できるようにすることで単体テストが容易になります。
ピーウィーとは?
Peewee は、Python 用の軽量でオープンソースの ORM ライブラリです。 これにより、データベースとの対話が簡素化され、PythonオブジェクトからSQLデータへのマッピングが可能になり、Pythonアプリケーションでのデータベースの処理が容易になります。 直感的なデザインにより、データベース操作が簡単かつ効率的になります。
チュートリアルPython – Peewee ORMを使用したMySQLデータベース
MySQLデータベースをインストールします。
必要なパッケージをインストールします。
この例では、Linuxを実行しているコンピューターにインストールしました。
MySQLサービスにROOTユーザーとしてアクセスします。
データベースを作成します。
ユーザー アカウントを作成します。
作成されたデータベースに対する権限をこのユーザー アカウントに付与します。
MY_PYTHON_USERアカウントはDRAGONBALLZデータベースへのアクセスを許可されます。
新しいアカウントを使用して、データベースへのMySQL接続をテストします。
デスクトップで、PIP を使用して Peewee をインストールします。
MySQL サーバーに接続するために必要な Python パッケージをインストールします。
Python ファイルを作成します。
Peewee ORM と MySQL からモジュールと機能をインポートします。
テーブルのモデル クラスを作成します。
モデルクラスでは、IDが主キーであること、または自動インクリメンタルであることが明示的に指定されていません。 ただし、Peewee では、既定では ID フィールドは自動的に主キーとして扱われ、自動的にインクリメンタルになります。
データベースへの接続を確立します。
データベースにテーブルを作成します。
これにより、接続されたMySQLデータベースにテーブルが作成されます。 これは、自動インクリメントに設定された主キーとしての ID、NAME、SPECIAL_MOVE、SS_LEVEL、EYE_COLOR の 5 つの列でテーブルの構造を定義します。
テーブルにデータを挿入します。
Peewee では、データベースに加えられた変更は、挿入、更新、削除などの基本的な操作に対して自動的にコミットされます。
テーブルに格納されているすべての情報を照会します。
取得した情報を表示します。
コマンド出力を次に示します。
書式設定された文字列として取得した情報を表示します。
コマンド出力を次に示します。
必要に応じて、特定のフィールドのみをクエリします。
コマンド出力を次に示します。
データベースへの接続を閉じます。
完全な Python スクリプトを次に示します。
結論
Peewee ORMを組み込むことで、PythonでのMySQLデータベース管理が簡素化され、データ操作の効率が向上し、シームレスなオブジェクト指向のエクスペリエンスが提供されます。 堅牢なデータ操作を簡単に導入できます。