PythonでMySQLに接続する方法を完全解説!初心者でもわかるpymysqlの基本
生徒
「Pythonからデータベースに接続してみたいのですが、どうすればよいですか?」
先生
「PythonではMySQLというデータベースと接続して情報を保存したり取り出したりできます。そのときに使う便利なライブラリがpymysqlです。」
生徒
「ライブラリって何ですか?パソコンが苦手でも使えますか?」
先生
「ライブラリはプログラムの便利な部品のようなものです。難しい仕組みを自分で作らなくても、必要な機能をすぐに使えるようになります。初心者でも安心して使えますよ。」
生徒
「それなら安心です。PythonとMySQLの接続の流れを教えてください!」
先生
「では、これから順番にわかりやすく説明していきましょう。」
1. PythonとMySQLの関係を理解しよう
Pythonはさまざまな作業を自動化できる便利なプログラミング言語です。そしてMySQLは、たくさんの情報を保存したり必要な情報だけ取り出したりできるデータベースと呼ばれる仕組みです。日常生活で例えるなら、Pythonはメモを整理する人で、MySQLはそのメモを保管する大きな引き出しのような存在です。
引き出しに安全にメモをしまったり、必要な情報を取り出したりするためには、PythonとMySQLをつなぐ橋が必要です。その橋として役立つのがpymysqlです。この仕組みを使うと、データの保存、検索、更新、削除などの作業をPythonから簡単に実行できます。
2. pymysqlをインストールしてみよう
まずPythonでMySQLを扱うための準備として、pymysqlをインストールします。インストールはとても簡単で、コマンドを一つ入力するだけで完了します。コマンドとは、パソコンに「作業して」と伝えるための短い文章のようなものです。
pip install pymysql
このコマンドを入力すると、PythonでMySQLに接続するための部品がパソコンに追加されます。ここでつまずいても焦らなくて大丈夫です。初心者の方でも一つずつ進めれば必ずできます。
3. MySQLとPythonを接続するための基本コード
次に、実際にPythonからMySQLへ接続するコードを見ていきます。コードは決まった形があるため、そのまま書くだけで接続できます。必要に応じて、自分の環境に合わせてユーザー名やパスワードなどを変更します。
import pymysql
connection = pymysql.connect(
host="localhost",
user="root",
password="yourpassword",
database="testdb"
)
print("接続成功!")
connection.close()
このコードの流れとしては、まずpymysqlを取り込み、そのあとデータベースの住所や鍵のような情報を設定して接続します。そして作業が終わったら接続を閉じます。このしくみは、部屋の鍵を開けて作業し、終わったら鍵を閉めるのと同じ感覚です。
4. 実際にデータを取り出す方法を理解しよう
MySQLにはテーブルと呼ばれる表のようなデータが入ります。その表から情報を取り出すことを「データの取得」と呼びます。PythonではSQLという言語を使ってデータを取り出します。SQLはデータベースに伝えるための専用の言葉です。
import pymysql
connection = pymysql.connect(
host="localhost",
user="root",
password="yourpassword",
database="testdb"
)
cursor = connection.cursor()
cursor.execute("SELECT * FROM users")
rows = cursor.fetchall()
for row in rows:
print(row)
connection.close()
この例ではusersというテーブルからすべてのデータを取り出しています。データを並べて確認したいときに役立つ方法です。
5. データを追加する方法も知っておこう
データベースに新しい情報を追加することを「データの挿入」と呼びます。Pythonからデータを追加するには、INSERTというSQL文を使います。例えば、名前や年齢などの情報を新しく登録する場面で使います。
cursor.execute("INSERT INTO users (name, age) VALUES ('Taro', 20)")
connection.commit()
commit()は「保存します」という意味で、この操作を行うことでデータが確実に残ります。メモ帳で書いた内容を保存ボタンで確定するのと同じ感覚です。
6. 接続エラーが出たときの考え方
初心者の方がよく困るポイントとして、接続エラーがあります。これは住所や鍵の情報が一致していない場合に起きることが多いです。ユーザー名、パスワード、データベース名などを一つずつ確認するだけで解決できる場合がほとんどです。
また、MySQLがまだ起動していないという場合もよくあります。最初は慌てず、少しずつ確認することが大切です。
7. PythonとMySQLでできることを広げてみよう
PythonとMySQLを組み合わせると、情報を整理するアプリや、自動で記録を残すツールなど、さまざまな仕組みを作れます。日々の作業を効率化したり、たくさんのデータを安全に管理したりできるため、学んでおくととても役に立ちます。
身近な例では、売上管理、顧客リスト、在庫管理など、業務でも使われる技術です。初心者でも、少しずつ理解しながら進めれば必ず使えるようになるので、ゆっくり取り組んでみてください。