mysql表名替换_用变量替换表名。使用python和mysql conn

我想动态更改插入数据的表的变量名。

这目前有效def dataEntry(subreddit, _title, _post_url, _imageURL):

cnx = mysql.connector.connect(**config)

c = cnx.cursor()

insert = ("""INSERT INTO FoodPorn

(subreddit, title, post_url, imageURL)

VALUES (%s, %s, %s, %s)""")

data_value = (subreddit, _title, _post_url, _imageURL)

c.execute(insert, data_value)

cnx.commit()

c.close()

cnx.close()

dataEntry("fake", "fake", "fake", "fake")

但在本例中,当我尝试对表名“foodborn”执行相同的操作时,对于动态表名,如本例中的MachinePorndef dataEntry(subreddit, _title, _post_url, _imageURL):

cnx = mysql.connector.connect(**config)

c = cnx.cursor()

insert = ("""INSERT INTO subredditName

(subreddit, title, post_url, imageURL)

VALUES (%s, %s, %s, %s, %s)""")

data_value = ("MachinePorn", subreddit, _title, _post_url, _imageURL)

c.execute(insert, data_value)

cnx.commit()

c.close()

cnx.close()

dataEntry("fake", "fake", "fake", "fake")

我知道这个错误mysql.connector.errors.ProgrammingError: 1146 (42S02): Table 'sytykr.subredditname' doesn't exist

这使我相信我不能这样做,所以我想问我如何才能这样做,这样我就可以最终在表中传递一个变量名,而不必每次都硬编码。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值