zoukankan      html  css  js  c++  java
  • python——连接MySQL数据库

    python——连接MySQL数据库

     

    都是照着说明文档来的,主要是为了以后忘记了能快一点想起来。

    1. 连接

    安装MySQL的时候,自动按照了Python的模块,如果没有的话,也可以在官网下载。

    看什么都不如看代码来得快:

    复制代码
    import mysql.connector
    conn=mysql.connector.connect(user='demo',password='123456',host='127.0.0.1',database='demo')
    c=conn.cursor()
    c.execute('show tables')
    c.fetchall()
    c.close()
    conn.close()
    复制代码

    这个代码和Oracle的差不多,看来使用的接口都一样。

    2. 执行SQL

    复制代码
    import mysql.connector
    conn=mysql.connector.connect(user='demo',password='123456',host='127.0.0.1',database='demo')
    c=conn.cursor()
    c.execute("insert into nice(id,name) values(7,'good')")
    c.execute("insert into nice(id,name) values(%s,%s)",(8,'nice'))
    conn.commit()
    c.close()
    conn.close()
    复制代码

    这个代码也和Oracle的差不多,看来使用的接口都一样。

    不同在于其占位符使用%s,传递变量使用tupe。

    3. 执行存储过程

    --SQL代码
    create procedure multiply(in p1 int,in p2 int,out pr int)
    begin
    set pr=p1*p2;
    end
    复制代码
    import mysql.connector
    conn=mysql.connector.connect(user='demo',password='123456',host='127.0.0.1',database='demo')
    c=conn.cursor()
    args=(5,5,0)
    r=c.callproc('multiply',args)
    c.close()
    conn.close()
    复制代码

    调用存储过程的代码和Oracle的差不多。

    差别在于传递变量使用tupe,对传递的变量不做修改,直接返回修改后的变量。

    4. 调用函数

    --SQL代码
    create function f1(p1 int) returns int
    begin
    return p1;
    end
    复制代码
    #Python代码
    import mysql.connector
    conn=mysql.connector.connect(user='demo',password='123456',host='127.0.0.1',database='demo')
    c=conn.cursor()
    args=(5,5,0)
    c.execute('select f1(%s)',(1,))
    c.fetchall()
    c.close()
    conn.close()
    复制代码

    mysql没有直接调用函数的方法,所以就是使用执行SQL的方法来调用函数。

    http://www.cnblogs.com/ola2010/
     
    标签: pythonMySQL
     
  • 相关阅读:
    锁表
    vs2010宏的应用
    Oracle:sqlplus查询出的中文是乱码问题的解决(转)
    linux下查看端口和服务的一些命令
    netsh
    xpshutdown关机命令详解
    linux系统如何察看、修改系统时间
    delphi编程中调用其他执行程序?(转)
    如何修改Oracle用户密码的诀窍(转)
    转:用Delphi实现从Excel数据Update(Insert类似)到Oracle数据库表中
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/3291049.html
Copyright © 2011-2022 走看看