快捷导航

python连接数据库出错

python连接数据库出错importpymysqlcon=pymysql.connect(host='127.0.0.1',user='root',passwd='1997520',port=3306,db='test1')cur=con.cursor()list=[("52192325124","liujihong","124")]cur.execute('insertintostudent(Uid,Uname,Upassword)values(%s,%s,%s)',list)con.commit()#cur.execute('select*fromstudent')#res=cur.fetchall()#forrowinres:#print(row[0])cur.close()con.close()报错如下:Traceback(mostrecentcalllast):File"D:/Python/workspace/Pysql/Mysql.py",line8,incur.execute('insertintostudent(Uid,Uname,Upassword)values(%s,%s,%s)',list)File"D:\Python\workspace\Pysql\venv\lib\site-packages\pymysql\cursors.py",line168,inexecutequery=self.mogrify(query,args)File"D:\Python\workspace\Pysql\venv\lib\site-packages\pymysql\cursors.py",line147,inmogrifyquery=query%self._escape_args(args,conn)TypeError:notenoughargumentsforformatstring

免责声明:本内容仅代表回答者见解不代表本站观点,请谨慎对待。

版权声明:作者保留权利,不代表本站立场。

回复

使用道具 举报

参与会员2

list=[("52192325124","liujihong","124")]
cur.execute('insertintostudent(Uid,Uname,Upassword)values(%s,%s,%s)',list)


改成


list=["52192325124","liujihong","124"]
cur.execute('insertintostudent(Uid,Uname,Upassword)values(%s,%s,%s)',list)
回复

使用道具 举报

字符串格式错误,你字符串三个变量,而实际后面只传了一个变量。你不能用一个含有三个元素的数组去代表这三个变量、
修正:
importpymysqlcon=pymysql.connect(host='127.0.0.1',user='root',passwd='root',port=3306,db='pytest')cur=con.cursor()list=["52192325124","liujihong","124"]cur.execute('insertintostudent(Uid,Uname,Upassword)values(%s,%s,%s)',list)con.commit()
回复

使用道具 举报

可能感兴趣的问答

发新帖
TA的信息
  • 会员所属: 注册会员
  • 认证信息: 邮箱认证手机认证
  • 微信访问
  • 手机APP