Python入門トップページ


目次

  1. SQLite を利用してみよう
  2. SQLite でテーブルを作成してデータを投入してみよう
  3. MySQL の準備を行おう
  4. MySQL を利用してみよう
  5. MySQL でテーブルを作成してデータを投入してみよう

データベースを利用してみよう

MySQL を利用してみよう

Python から MySQL データベースに接続するためのパッケージの一つとして mysql-connector-python パッケージがあります.まず,pip コマンドでパッケージをインストールします.

(base) C:\Users\Student\Documents\python>pip install mysql-connector-python ⏎
Collecting mysql-connector-python
  Downloading mysql_connector_python-8.0.32-cp39-cp39-win_amd64.whl (7.9 MB)
     |████████████████████████████████| 7.9 MB 3.2 MB/s
Requirement already satisfied: protobuf<=3.20.3,>=3.11.0 in c:\users\student\anaconda3\lib\site-packages (from mysql-connector-python) (3.19.1)
Installing collected packages: mysql-connector-python
Successfully installed mysql-connector-python-8.0.32

(base) C:\Users\Student\Documents\python>pip list | find "mysql" ⏎
mysql-connector-python        8.0.32

MySQL データベースに接続するために,mysql.connector ライブラリをインポートします.


import mysql.connector

次に,リモートサーバ (192.168.56.101) の MySQL に接続して,カーソルを開きます.なお,ユーザ名やパスワード,データベース名はここで設定したものを使用してください.


conn = mysql.connector.connect(
        user='dbuser',
        password='hogehogehoge',
        host='192.168.56.101',
        database='testDB'
)

curs = conn.cursor()

SQL文を発行して staffs テーブルから全てのレコードを検索します.なお SQL 文の最後に ; を入れていますが,この ; は省略可能です.


sql = ("""
    SELECT * FROM staffs;
    """)

curs.execute(sql)
rows = curs.fetchall()
print(rows)
[(1, '藤川', 23, '営業部'), (2, '藤本', 35, '人事部'), (3, '藤枝', 32, '製造部'), (4, '藤原', 48, '営業部'), (5, '藤森', 44, '人事部'), (6, '藤平', 28, '製造部'), (7, '藤谷', 38, '営業部')]

なお,データベースの利用を終える時には,カーソルを閉じて,データベースから切断することも忘れないようにしよう.


curs.close()
conn.close()

目次に戻る