新建一个Python project, 里面建一个python file: connect_DB.py
import pymysql
# 打开数据库连接
db = pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='Sheng2020', db='mysql', charset='utf8')
cursor = db.cursor() # 使用cursor()方法获取操作游标
sql = "select * from test0811"
cursor.execute(sql)
info = cursor.fetchall()
db.commit()
cursor.close() # 关闭游标
db.close() # 关闭数据库连接
-----
debug: 报错:
/tool/work/david/venv/bin/python /tool/work/david/DB_related/employee_db_connect.py
File "/tool/work/david/DB_related/employee_db_connect.py", line 3
SyntaxError: Non-ASCII character '\xe6' in file /tool/work/david/DB_related/employee_db_connect.py on line 3, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
Process finished with exit code 1
原因找到:使用了中文,后来把中文去掉,就没有报错了。
下面发现应该import 的是pymysql, 而不是PyMySQL:
把PyMySQL 改成pymysql 后pycharm 就不报错了,Run 一下:
Traceback (most recent call last):
File "/tool/work/xinxin/db_connect.py", line 4, in <module>
db = pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='Sheng2020', db='mysql', charset='utf8')
File "/tool/work/xinxin/venv/lib/python2.7/site-packages/pymysql/__init__.py", line 94, in Connect
return Connection(*args, **kwargs)
File "/tool/work/xinxin/venv/lib/python2.7/site-packages/pymysql/connections.py", line 325, in __init__
self.connect()
File "/tool/work/xinxin/venv/lib/python2.7/site-packages/pymysql/connections.py", line 630, in connect
raise exc
pymysql.err.OperationalError: (2003, "Can't connect to MySQL server on '127.0.0.1' ([Errno 111] Connection refused)")
Process finished with exit code 1
发现是数据库没有开,打开后:编译-成功。
/tool/work/xinxin/venv/bin/python /tool/work/xinxin/db_connect.py
Process finished with exit code 0
----
关于 Python 3.6.X导入pymysql模块出错:No module named 'pymysql'问题
解决方法:https://blog.csdn.net/forrestku/article/details/84846656