报错语句:db=pymysql.connect('localhost','root','123456','mysql')
报错信息:TypeError: __init__() takes 1 positional argument but 5 were given
import pymysql #python2用MySQLdb
def db_connect():
#链接数据库
db=pymysql.connect('localhost','root','123456','mysql')
#创建游标对象
cursor=db.cursor()
#执行SQL语句
cursor.execute('select version()')
#获取数据
data=cursor.fetchone()
print('version is:%s'%data)
#关闭数据库链接
db.close()
if __name__ == '__main__':
db_connect()
版本问题导致连接数据方式发生改变,db=pymysql.connect('localhost','root','123456','mysql')改成
db=pymysql.connect(host='localhost',user='root',password='123456',database='mysql')
问题就解决了。
Connected to pydev debugger (build 203.6682.179)
version is:8.0.25
import sys; print('Python %s on %s' % (sys.version, sys.platform))
Python 3.7.0 (v3.7.0:1bf9cc5093, Jun 27 2018, 04:59:51) [MSC v.1914 64 bit (AMD64)] on win32