Python入門から応用までの学習サイト


MySQL

PostgreSQLと同様、いわゆる「本格的」なデータベースの一つであるMySQLのサンプルです。 Pythonに対応したMySQLドライバも数種類あるようですが、本サイトでは「MySQL for Python」を使用します。

ドライバ「MySQL for Python」は下記リンクよりダウンロードしてください。適切なバージョンとプラットフォームを選びましょう。


http://sourceforge.net/projects/mysql-python/files/mysql-python/


ダウンロード後、インストールを行ってください。


下記データ登録のサンプルとなります。

# -*- coding: utf-8 -*- 

import MySQLdb

connector = MySQLdb.connect(host="localhost", db="sdb", user="msusr", passwd="mspsw", charset="utf8")
cursor = connector.cursor()

sql = u"insert into test_table values('1','python')"
cursor.execute(sql)
sql = u"insert into test_table values('2','パイソン')"
cursor.execute(sql)
sql = u"insert into test_table values('3','ぱいそん')"
cursor.execute(sql)

connector.commit()

cursor.close()
connector.close()


まずは3行目で「MySQLdb」モジュールのインポートを行います。 続く5行目の記述でデータベースへ接続、引数には(ホスト名, データベース名, ユーザー名, ユーザーのパスワード, 文字コード)を設定します。 6行目でカーソルを取得し、8行目から13行目で指定のSQL文を実行します。 15行目でコミットを行い、最後はデータベースをクローズして終了です。


データ参照のサンプルです。先程登録したデータを見てみましょう。

# -*- coding: utf-8 -*- 

import MySQLdb

connector = MySQLdb.connect(host="localhost", db="sdb", user="msusr", passwd="mspsw", charset="utf8")
cursor = connector.cursor()
cursor.execute("select * from test_table order by code")

result = cursor.fetchall()

for row in result:
    print "===== Hit! ====="
    print "code -- " + row[0].encode('utf-8')
    print "name -- " + row[1].encode('utf-8')

cursor.close()
connector.close()

--実行結果--

===== Hit! =====
code -- 1
name -- python
===== Hit! =====
code -- 2
name -- パイソン
===== Hit! =====
code -- 3
name -- ぱいそん


「MySQLdb」モジュールのインポート後、データベースへ接続します。 6行目でカーソルの取得を行い、select文を実行。 「fetchall」を使用すると結果がタプルで返ってきます。



Python
スタートブック


入門 Python 3


Effective
Python


退屈なことは
Pythonにやらせよう

 
 
 

Excel操作も出来ますよ!

▶外部ライブラリ:Excel操作



確かな力が身につく
Python「超」入門




P  R