IronPython连接MySQL的方法步骤

yipeiwu_com5年前Python基础

原以为在IronPython中使用MySQL是一件很容易的事情,即使有麻烦,也可以改变路径,加载Python下的MySQL模块。事实证明,这是我一厢情愿的想法。要想在IronPython中连接MySQL数据库,必须要调用MySql.Data动态库——这个dll很容易在网上找到,但如何使用这个库,网上的资料如凤毛麟角,难觅其踪。好不容易找到几篇,却又语焉不详,不知所云。

经过好一番折腾,终于搞明白了MySql.Data.dll的用法。

1. 导入模块

import clr
clr.AddReference("MySql.Data.dll")
from MySql.Data.MySqlClient import * 

2. 连接数据库

conStr = 'server=%s; user id=%s; password=%s; database=%s; pooling=false; charset=gbk' % (host, user, passwd, db) 
db = MySqlConnection(conStr) 
db.Open() 
 

3. 执行插入(更新、删除等)操作

sqlStr = "INSERT INTO ..." 
cmd = MySqlCommand(sqlStr, db) 
rows = cmd.ExecuteNonQuery() 

4. 执行查询语句

cmd = self.db.CreateCommand () 
cmd.CommandText = "SELECT ..." 
r = cmd.ExecuteReader () 
tagList = [] 
while r.Read (): 
  tagList.append(r['rfidLabel']) 
r.Close () 
return tag in tagList 

5. 关闭连接

db.Close ()

怎么样?代码风格是不是感觉有点怪异?

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python实现二维码扫码自动登录淘宝

python实现二维码扫码自动登录淘宝

一个小项目自动登录淘宝联盟抓取数据,由于之前在Github上看过类似用Python写的代码因此选择用Python来写,第一次用Python正式写程序还是被其“简单”所震撼,当然用的时候还...

Python编程之event对象的用法实例分析

本文实例讲述了Python编程中event对象的用法。分享给大家供大家参考,具体如下: Python提供了Event对象用于线程间通信,它是由线程设置的信号标志,如果信号标志位为假,则线...

Python解析json之ValueError: Expecting property name enclosed in double quotes: line 1 column 2(char 1)

前言 在Python中提供了json包来方便快捷的解析json字串的转换过程,但是碰到了一个比较奇怪的问题,就是不太正确的json串如何来解析? 1. 问题的提出 今天在处理一个http...

python读取大文件越来越慢的原因与解决

python读取大文件越来越慢的原因与解决

背景: 今天同事写代码,用python读取一个四五百兆的文件,然后做一串逻辑上很直观的处理。结果处理了一天还没有出来结果。问题出在哪里呢? 解决: 1. 同事打印了在不同时间点的时间,在...

python 日期排序的实例代码

问题1:如果日期中有千年以前的情况(没法用格式化函数),如('2010-11-23','1989-3-7','2010-1-5','978-12-1','2010-2-4')参照方法1...