Python mysql游标关闭连接

标签 python mysql python-2.7 mysql-python

我有一个获取我的 mysql 版本的 python 脚本,但我一直收到相同的错误“_mysql_exceptions.InterfaceError: (0, '')”

我去python2.7的控制台也试了一下,

import MySQLdb
conn = MySQLdb.connect (host="localhost",user="user", passwd="pass", db="example")
cursor = conn.cursor()
cursor.execute ("SELECT VERSION()")

Traceback (most recent call last): File "", line 1, in
File "/usr/local/lib/python2.7/site-packages/MySQLdb/cursors.py", line 205, in execute self.errorhandler(self, exc, value) File "/usr/local/lib/python2.7/site-packages/MySQLdb/connections.py", line 36, in defaulterrorhandler raise errorclass, errorvalue _mysql_exceptions.InterfaceError: (0, '')

和文件

import sys
import MySQLdb
try:
    conn = MySQLdb.connect (host="localhost",user="user", passwd="pass", db="example")
except MySQLdb.Error, e:
    print "Error %d: %s" % (e.args[0], e.args[1])
    sys.exit (1)
try:
    cursor = conn.cursor()
    cursor.execute ("SELECT VERSION()")
    row = cursor.fetchone ()
    print "server version:", row[0]
    cursor.close ()
except MySQLdb.Error, e:
    print "Error %d: %s" % (e.args[0], e.args[1])
    #sys.exit (1)
conn.close ()

[user@localhost]$ python b.py

Error 0: Traceback (most recent call last): File "b.py", line 18, in conn.close() _mysql_exceptions.ProgrammingError: closing a closed connection

谢谢

最佳答案

如果您的 try block 成功运行,那么您将关闭连接两次。我想你可以把它放在 finally block 中,这将解决你的问题。

关于Python mysql游标关闭连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27868957/

相关文章:

python - 使用 SQLAlchemy 和 MS SQL Server 实现 Unique if not Null 约束

从维基百科中提取数据的 Python 库?

python - 无法在 Windows 上使用 Python 终止正在运行的子进程

python - 使用 Python 插入变量 MySQL,不工作

Python:多处理和请求

python - 是否可以使用 music21 分析 mp3 文件?

python - 在 Python 中使用周期性正态分布 (von Mises) 提取时间特征

mysql - #1111 - 组功能使用无效

mysql - 诊断 2013 与 MySQL 的连接丢失

mysql - 两个相同的 MYSQL 表之间的性能差异