IronPythonからADO.NETを使うサンプル

PythonプログラマIronPythonを始める場合、.NET経験者なことはほとんどないと思うので簡単なサンプルを用意してみました。
データベースはMySqlとしました。ADO.NETのドライバーはここからADO.NETが初めての方は、アプリケーションとデータの仲介役 : DataAdapterを5分ほどご覧ください。(^^;

import clr
clr.AddReferenceByPartialName ('System.Data')
clr.AddReferenceToFile ('MySql.Data.dll')

from System.Data import *
from MySql.Data.MySqlClient import *

connstr = 'User Id=%s;Password=%s;Database=%s' % ('user', 'pass', 'db')
statement = 'SELECT ename, job FROM emp'

def test_reader (conn):
    cmd = conn.CreateCommand ()
    cmd.CommandText = statement
    r = cmd.ExecuteReader ()
    while r.Read ():
        print 'Employee Name:%s, Job:%s' % (r['ename'], r['job'])
    r.Close ()

def test_adapter (conn):
    da = MySqlDataAdapter (statement, conn)
    ds = DataSet ()
    da.Fill (ds)
    for r in ds.Tables[0].Rows:
        print 'Employee Name:%s, Job:%s' % (r['ename'], r['job'])

conn = None
try:
    conn = MySqlConnection (connstr)
    conn.Open ()

    # DataReaderでアクセス
    test_reader (conn)
    # DataAdapterでアクセス
    test_adapter (conn)

finally:
    if not conn is None:
        conn.Close ()