今天在学习python操作MySQL数据库的过程中,遇到了一个问题,Mark!
代码如下:
# 用python操作数据库
import mysql.connector
db_config = {'host':'localhost',
'user':'root',
'password':'',
'port':3306,
'database':'students'
}
# 创建一个数据库连接
cnn = mysql.connector.connect(**db_config)
# 创建游标
cursor = cnn.cursor()
# 编写sql语句(sql语句都是字符串)
query_sql = 'select * from students_01 where id = 1'
# 执行语句
cursor.execute(query_sql)
# 获取并打印结果
res = cursor.fetchone()#返回的数据类型是元组
print(res)
# 关闭游标
cursor.close()
# 关闭连接
cnn.close()
运行结果:
于是开启各种排查之路,最终找出原因:python版本与MySQL库的版本不符,导致找不到模块,从而报错。PyMySQL是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中使用mysqldb。我的python版本是3.7.2,应该安装pymysql。
pymysql的使用也很简单,只需对上述代码做两点改动:
# 用python操作数据库
import pymysql
db_config = {'host':'localhost',
'user':'root',
'password':'',
'port':3306,
'database':'students'
}
# 创建一个数据库连接
cnn = pymysql.connect(**db_config)
运行后得到了自己想要的结果。