首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >%d格式:需要数字,而不是STR

%d格式:需要数字,而不是STR
EN

Stack Overflow用户
提问于 2018-08-31 15:58:05
回答 1查看 351关注 0票数 0

当我使用python将数据批量插入到mysql中时,即使我使用'%s‘格式化每个单词,我仍然得到一个错误:"%d格式:需要一个数字,而不是STR“。

代码:

代码语言:javascript
复制
# SQL 插入语句
sql = ("INSERT INTO sina(topic_info, read_num, top_hot,"
       " create_time, status)"
       " VALUES ('%s', '%s', '%s', '%s', '%s' )"
# 一个tuple或者list
T = ( ('易起鏖战 巅峰之战', 133, 4, '2018-8-31:15', '1'),
      ('向往的美食', 123, 2, '2018-8-31:15', '1'),
      ('发际线男孩表情包', 1223, 1, '2018-8-31:15', '1'),
      ('天坑鹰猎开播', 131, 3, '2018-8-31:15', '1'),
      ('如懿传', 121, 5, '2018-8-31:15', '1') )
try:
    # 执行sql语句
    cursor.executemany(sql, T)
    # 提交到数据库执行
    db.commit()
except:
    # 如果发生错误则回滚
    db.rollback()


# database details
| Field       | Type     | Null | Key | Default | Extra |
+-------------+----------+------+-----+---------+-------+ 
| topfo       | char(30) | NO   |     | NULL    |       | 
| rm          | int(11)  | YES  |     | NULL    |       | 
| tot         | int(11)  | YES  |     | NULL    |       | 
| creme       | char(20) | YES  |     | NULL    |       | 
| st*us       | char(10) | YES  |     | NULL    |       –
EN

回答 1

Stack Overflow用户

发布于 2018-08-31 17:09:50

我已经通过重新理解这个错误解决了这个问题:“正确的语法使用near‘容易打’峰值战','133','4','2018-8-31:15','1')",因为这个%s不能用引号括起来用于批量插入,但它可以用于单个插入。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52110979

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档