Python如何对MySQL存储过程进行调用? |
本文标签:MySQL存储过程 此文章主要向大家描述的是Python对MySQL存储过程进行调用的正确操作步骤,以及在其实际操作中值得我们大家注意的事项的描述,你如果对其有兴趣的话你就可以点击以下的文章进行观看了 。 环境: 1.MySQL5.0 或者以上支持MySQL存储过程的版本 2.安装MySQL-python,目前支持到2.x 步骤: 一.数据库准备 1.建立表
2.建立MySQL存储过程
3.插入部分数据
到这里数据库相关内容就准备好了接下去开始写python脚本 二.python脚本
07 调用MySQL存储过程, 08 输入参数:编号,在线时间,输出:帐号,密码; 09 使用输出参数方式 10 accname= 11 accpwd= 12 conn = MySQLdb.connect(host=localhost,user=root,passwd=111111,db=ceshi) 13 cur =conn.cursor() 14 cur.callproc(proctest,(id,onlinetime,accname,accpwd)) 15 cur.execute(select @_proctest_2,@_proctest_3) 16 data=cur.fetchall() 17 if data: 18 for rec in data: 19 accname=rec[0] 20 accpwd=rec[1] 21 cur.close() 22 conn.close(); 23 return accname,accpwd 24 def CallProct(id,onlinetime): 25 调用MySQL存储过程, 26 输入参数:编号,在线时间,输出:帐号,密码; 27 使用select返回记录方式 28 accname= 29 accpwd= 30 conn = MySQLdb.connect(host=localhost,user=root,passwd=111111,db=ceshi) 31 cur =conn.cursor() 32 cur.nextset() 33 cur.execute(call ptest(%s,%s),(id,onlinetime)) 34 data=cur.fetchall() 35 if data: 36 for rec in data: 37 accname=rec[0] 38 accpwd=rec[1] 39 cur.close() 40 conn.close(); 41 return accname,accpwd 42 name,pwd=CallProct(1,0) 43 print name,pwd 三.测试 将python脚本保存为 并执行可以看到结果 view sourceprint?1 [root@redhat-dev python]# python pycallproc.py 2 luoshulin asdfsdf 测试使用的是select返回记录的方式,对于使用输出参数返回结果情况也是一样的 。 以上的相关内容就是对python调用MySQL存储过程的介绍,望你能有所收获 。 |