mysql1054错误——(1054, Unknown column 'xxx' in 'field list')
在使用scrapy框架连接数据库时遇到了1054错误
具体代码如下:
try:self.cursor.execute('insert into qiubai(author,content) values(%s,%s)'%(item['author'],item['content']))self.conn.commit()except Exception as e:print(e)self.conn.rollback()return item
然后报错:
(1054, "Unknown column 'dfsgsfdbsd' in 'field list'")
(1064, "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1")
sql语句错误,经过网上查找
修改sql语句为:
self.cursor.execute('insert into qiubai(author,content) values("%s","%s")'%(item['author'],item['content']))
或
self.cursor.execute("insert into qiubai(author,content) values('%s','%s')"%(item['author'],item['content']))
就执行成功了。
我初学pysql时的代码:
item ={'username':'110','sex':'110','password':'110','pid':'110','tel':'110'}
cursor.execute('insert into user(username,sex,password,pid,tel) values (%s,%s,%s,%s,%s)'%(item['username'],item['sex'],item['password'],item['pid'],item['tel']))
是可以执行的。
最后发现,初学时的数据是我自定义的,但是scrapy爬取到的数据前后有些是有空格的,所以导致报错。
所以以后在编写sql语句时尽量规范,该加引号加引号
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
