|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
环境:
SQL:SQL SERVER R2
Windows7 64位
Python3.6
pip 的 pymysql
数据库:
本地数据库
库名:test
账号:sa
密码:123456
端口:没改过,默认的1433
在编辑器的代码,基本都套用网上的代码:
- import pymysql
- import pymysql.cursors
- db=pymysql.connect(host="localhost",user="sa",password="123456",db="test",port=1433,charset="utf8")
- cur=db.cursor()
- sql="select * from test"
- try:
- cur.execute(sql)
- results=cur.fetchall()
- for row in results:
- print(row)
- except Exception as e:
- raise e
- finally:
- db.close()
复制代码
在IDLE的报错:
- Python 3.6.1rc1 (v3.6.1rc1^0:e0fbe5feee4f9c00f09eb9659c2182183036261a, Mar 4 2017, 20:00:12) [MSC v.1900 64 bit (AMD64)] on win32
- Type "copyright", "credits" or "license()" for more information.
- >>> import pymysql
- >>> import pymysql.cursors
- >>> db=pymysql.connect(host="localhost",user="sa",password="123456",db="test",port=1433,charset="utf8")
- Traceback (most recent call last):
- File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\pymysql\connections.py", line 1021, in _read_bytes
- data = self._rfile.read(num_bytes)
- File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\socket.py", line 586, in readinto
- return self._sock.recv_into(b)
- ConnectionResetError: [WinError 10054] 远程主机强迫关闭了一个现有的连接。
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "<pyshell#2>", line 1, in <module>
- db=pymysql.connect(host="localhost",user="sa",password="123456",db="test",port=1433,charset="utf8")
- File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\pymysql\__init__.py", line 90, in Connect
- return Connection(*args, **kwargs)
- File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\pymysql\connections.py", line 706, in __init__
- self.connect()
- File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\pymysql\connections.py", line 931, in connect
- self._get_server_information()
- File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\pymysql\connections.py", line 1245, in _get_server_information
- packet = self._read_packet()
- File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\pymysql\connections.py", line 987, in _read_packet
- packet_header = self._read_bytes(4)
- File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\pymysql\connections.py", line 1029, in _read_bytes
- "Lost connection to MySQL server during query (%s)" % (e,))
- pymysql.err.OperationalError: (2013, 'Lost connection to MySQL server during query ([WinError 10054] 远程主机强迫关闭了一个现有的连接。)')
复制代码
看了下文档,没太明白pymysql的参数传递逻辑,查了网上的范例等也没找到原因,求指导。。。。
本帖最后由 sunnychou 于 2017-6-21 09:11 编辑
我主要在我电脑上,用我自己的数据跑了一下,把那个端口关闭了,可以正常运行
- import pymysql
- import pymysql.cursors
- db=pymysql.connect(host="localhost",user="root",password="",db="cxt",charset="utf8")
- #user='root', passwd='', host='localhost', db='cxt',charset='utf8'
- cur=db.cursor()
- sql="select * from pl "
- try:
- cur.execute(sql)
- results=cur.fetchall()
- for row in results:
- print(row)
- except Exception as e:
- raise e
- finally:
- cur.close()
- db.close()
复制代码
图片是结果
有帮助的话,给我一个最佳
|
|