名前付きパラメータを使った値の指定
PythonでSQLを実行する際に、名前付きパラメータに値を指定する方法です。
バージョン)
Python 2.6
MySQL 5.6.17
コード
import MySQLdb
from MySQLdb.cursors import DictCursor
if __name__ == "__main__":
con = MySQLdb.connect(host="localhost", db="test_db", user="test_user", passwd="test123", charset="utf8")
cur = con.cursor(DictCursor)
sql = " SELECT * "
sql += " FROM tbl_test "
sql += " WHERE id = %(test_id)s "
sql += " AND name = %(test_name)s "
param = {}
param["test_id"] = 999;
param["test_name"] = u"テスト";
cur.execute(sql, param)
rs = cur.fetchall()
for row in rs:
# 処理
11,12行目が名前付きパラメータに対して値を指定している箇所です。