【发布时间】:2017-07-12 23:46:54
【问题描述】:
在 mysql db 中插入对包含 \" 字符的字符串的查询-
如何编写插入查询,例如:
这是我要插入表格的字符串,
reg="item-cell\"(.*?)</span></div>"
cur = db.cursor()
query='INSERT into table_name(col_name) values("%s")'%(reg)
cur.execute(query)
cur.close()
以下是错误:
_mysql_exceptions.ProgrammingError: (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 \'(.*?)</span></div>")\' at line 1')
我知道它与转义字符有关,但不知道如何使它起作用。
编辑: 这个字符串 reg 是可变的,即我从某个 API 获取这个字符串,我想将它插入到我的数据库中。因此,在字符串文字之间插入转义字符不足以满足我的情况。我想要一些可以概括单引号、双引号或一个双引号(例如reg)所有这些情况的东西。
我希望我的观点很清楚。
编辑:这就是我获取 reg 值的方式(来自 json 文件)
import urllib, json
import MySQLdb
url = "some_url"
response = urllib.urlopen(url)
data = json.loads(response.read())
for item in data["key1"]["key2"]["key3"]["key4"]:
prop=str(item)
reg=str(data["key1"]["key2"]["key3"]["key4"][prop]["regex"])
【问题讨论】:
标签: python mysql regex cherrypy