我想在我的字符串中的每个引号之前插入一个\以使用pymysql将其插入到我的SQL数据库中。如果我不逃避引号,我不能在我的数据库中插入字符串。如何在字符串python中引号前插入反斜杠
对于为例:
str = "ok I'm ready"
必须是:
str = "ok I\'m ready"
but print str must be : "ok I'm ready"
要执行它,我已经做了:
str = str.replace("'", "\'")
但它不工作,我仍然不能插入我的字符串在我的数据库中。我有错误消息:
(1064, u"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 's Semantic Search software can power everything from intuitive chatbots to searc' at line 1"): ProgrammingError Traceback (most recent call last): File "/var/task/setter_organizations.py", line 38, in handler structured_data.insert() File "/var/task/setter_organizations.py", line 107, in insert self.rds.insertItem(self.type, self.data) File "/var/task/RDS/rds.py", line 92, in insertItem return self.insert(req) File "/var/task/RDS/rds.py", line 35, in insert affected_rows = self.cursor.execute(request) File "/var/task/RDS/pymysql/cursors.py", line 166, in execute result = self._query(query) File "/var/task/RDS/pymysql/cursors.py", line 322, in _query conn.query(q) File "/var/task/RDS/pymysql/connections.py", line 856, in query self._affected_rows = self._read_query_result(unbuffered=unbuffered) File "/var/task/RDS/pymysql/connections.py", line 1057, in _read_query_result result.read() File "/var/task/RDS/pymysql/connections.py", line 1340, in read first_packet = self.connection._read_packet() File "/var/task/RDS/pymysql/connections.py", line 1014, in _read_packet packet.check_error() File "/var/task/RDS/pymysql/connections.py", line 393, in check_error err.raise_mysql_exception(self._data) File "/var/task/RDS/pymysql/err.py", line 107, in raise_mysql_exception raise errorclass(errno, errval) ProgrammingError: (1064, u"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 's Semantic Search software can power everything from intuitive chatbots to searc' at line 1")
我也将打印我的字符串,并没有看到\
有谁知道我该怎么办?
“它不工作”并不是一个足够准确的错误描述,可以帮助我们。 *什么*不起作用? *如何*不工作?你的代码有什么问题?你有错误信息吗?什么是错误信息?你得到的结果不是你期待的结果吗?你期望得到什么结果?为什么?你得到的结果是什么?两者有什么不同?你正在观察的行为不是所期望的行为?什么是期望的行为,为什么,观察到的行为是什么,以及它们以何种方式不同? –
这是因为\是一个转义字符。添加另一个,你很好 – Florian
所以基本上你想逃避这些字符时,你插入到SQL数据库使用SQL查询正确吗? –