gpt4 book ai didi

Python, MySQL _mysql_exceptions.ProgrammingError : (1064, '你的 SQL 语法有错误

转载 作者:行者123 更新时间:2023-11-29 06:06:46 26 4
gpt4 key购买 nike

我目前正在向本地 MySQL 数据库发送 Twitter 流,但我遇到了一个问题。每当用户创建其中包含 "的推文时,我都会收到语法错误,因为它与 Insert 语句混淆。

我很好奇解决这个问题的最佳方法,这样一个人的推文就不会影响插入语句。

示例变量:

tweetId = 98757629
userId = 07gos870sg
text = "this is "what " is messing up my sql"
day = 04
month = 'dec'
year = 2016
hour = 23
minute = 45
placeId = 'kj4h5b899'


c.execute('INSERT INTO tweet VALUES("%s", "%s", "%s", "%s", "%s",
"%s", "%s", "%s", "%s")' % \
(tweetId, userId, text, day, month, year, hour, minute, placeId))

我想过在将插入语句发送到代码之前,只取出任何会弄乱插入语句的字符(“`”);但是,我不想编辑任何用户提交的数据。

最佳答案

您应该绑定(bind)变量而不是格式化 sql 字符串。

sql = "INSERT INTO tweet VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s)"
values = (tweetId, userId, text, day, month, year, hour, minute, placeId)
cursor.execute(sql, values)

关于Python, MySQL _mysql_exceptions.ProgrammingError : (1064, '你的 SQL 语法有错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41028774/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com