python调用mysql中的自定义fu

发布时间:2019-09-21 10:59:30编辑:auto阅读(1742)

    首先在Mysql中创立一个叫ForeignKeyTest的function,链接如下:

    http://mp.blog.csdn.net/postedit/79452914


    然后新开一个sublime,python代码如下:

    # -*- coding:utf-8 -*-
    import pymysql
    import sys
    reload(sys)
    sys.setdefaultencoding('utf-8')  
    # 创建连接
    conn = pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='12345', db='ForeignKeyTest', charset='utf8')
    # 创建游标
    cursor = conn.cursor()
      
    # 执行SQL,并返回收影响行数
    sql="select getMatchResults(111,233)"
    effect_row = cursor.execute(sql)
      
    # 执行SQL,并返回受影响行数
    #effect_row = cursor.execute("update tb7 set pass = '123' where nid = %s", (11,))
    
    results = cursor.fetchall()
    
    print "results=",results
    
    # 执行SQL,并返回受影响行数,执行多次
    #effect_row = cursor.executemany("insert into tb7(user,pass,licnese)values(%s,%s,%s)", [("u1","u1pass","11111"),("u2","u2pass","22222")])
      
      
    # 提交,不然无法保存新建或者修改的数据
    conn.commit()
      
    # 关闭游标
    cursor.close()
    # 关闭连接
    conn.close()

    也就是说python调用mysql中的自定义函数function,这和执行一般的sql语句是几乎完全一致的,

    唯一不同的是sql的写法有点小特殊。

关键字