美文网首页
数据库相关-python MySQLdb

数据库相关-python MySQLdb

作者: 红色火苗 | 来源:发表于2018-02-24 14:28 被阅读0次

    引言:python mysqldb的操作中遇到的一些坑。
    1.为什么要用conn.ping(True)?
    在实际业务中遇到过因为数据库持久的连接而没有操作数据库的时候就会出现
    MySQL gone away的异常,因此这里使用conn.ping(True)来解决这个问题,
    当然还有另外一种解决方案,就留给读者去探索。

    2.关于为什么要commit?因为在执行一些操作的时候如果没有commit数据库就不
    会真正的执行SQL语句。

    db.py

    !usr/bin/env python

    coding=utf8

    import MySQLdb
    def conn():
    conn = MySQLdb.Connect(host="127.0.0.1",port=3306,user="root",passwd="root",db='test')
    conn.ping(True)
    cursor=conn.cursor()
    return (cursor,conn)

    curd.py

    cursor,t = conn()
    sql = "insert into gaofangip (ip) values ('114.114.114.114');"
    cursor.execute(sql)
    cursor.close()
    t.commit()
    t.close()

    总结:
    各种操作最后都要记得commit,这个关系型数据MySQL当中的myisam和innodb有关,支持事物的特性相关。


    数据库相关-python MySQLdb

    相关文章

      网友评论

          本文标题:数据库相关-python MySQLdb

          本文链接:https://www.haomeiwen.com/subject/hmvqxftx.html