python对于Mysql数据库的操作有pyMysql和MySqlDB,网上的教程和文章也看了一些。
我的关注点在pyMysql,所以没测试MySqlDB,有介绍说两者语句是一样的,
现发现一些语句在pyMysql上是有错误的,可能有文章在转载和抄袭的过程中不认真,也可能确实能在MySqlDB能跑通。
现将这些疑问列举如下,有使用MySqlDB或知道的可以留言:
1、%s不能加‘’的
2、使用%%%%%s%%%%不能代替SQL中的参数s
3、使用字典类型传递参数在select 语句上我没有成功,至少看起来这种方法不具有普遍性,只适合"="条件
下面简单说一下我在pyMysql中使用的模糊查询
一、like查询
1、正确的使用方法
第一种:
s='select last_update_dtime,name,org_code,org_name from baseinfo where name like %s"%%"'
或
s='''
select last_update_dtime,name,org_code,org_name from baseinfo where name like %s"%%"
'''
cursor.execute(s,'采')
#包含%%的不能是单引号,即不能是name like %s'%%'
#注意这样会报错
s="select last_update_dtime,name,org_code,org_name from baseinfo where name like %