mysql select 报错

代码片段:

     sql_url = "select * from webpage where url = '%s'" % b

     try:
cursor.execute(sql_url)
results = cursor.fetchall()
except Exception, e:
print e
pass

系统:centos

语言:python

报错信息:

(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 '''' at line 1")

报错信息说 在‘“'附近有语法错误,

但是大部分数据都很顺利的跑起来,然后我把错误时候的那条数据给打印出来,发现那个url后面有 xxx='xxxxxxxx'

所以把这个url塞进sql语句,就成了 select * from webpage where url ='http://www.baidu.com/index.html?xxx='xxxxxxxxx''

哈哈,看出来了吧?

那个参数的后单引号和url的后单引号合并在一起了,本来是2个的,结果成1个了。

正确的写法是:

sql_url = 'select * from webpage where url = "%s"' % b
上一篇:iOS 判断奇偶数


下一篇:C# ToString格式控制符