欢迎光临散文网 会员登陆 & 注册

python带参数mysql 参数传递

2023-02-01 18:04 作者:努力学习天天赚钱123456  | 我要投稿

1.通过%替换方法。

organge_id = 98

sql = "select * from orange where id=%s" % orange_id

Python 调用Mysql插入含有变量的数据,注意,占位符和双引号。

sql ="insert into f_table(name,dir) values('%s','%s')" %(filename,filepath)

2.传递参数

color = "yellow"

sql = "select * from orange where color = %s"

注意此处的占位符是%s,无论是字符串、数字或者其他类型,

都是这个占位符。另外, %s不能加引号,如'%s', 这是错误的写法。

第1种方法 与第2种写法,有什么区别呢?

两者区别是对变量的解析:

第1种写法,使用百分号%, 是用Python解释器对%s执行相应的替换。

这种方法存在漏洞,有些时候不能正常解析,比如包含某些特殊字符,甚至会造成注入攻击的风险。

3.python中format用法

 语法: {index0} {index1}.format(value1,value2).即使用format()的()内的值代替{}内的值

默认情况下,如果{}内不填写任何值,则默认从左到右依次取值

python中format用法

4.浅谈pymysql查询语句中带有in时传递参数的问题

浅谈pymysql查询语句中带有in时传递参数的问题 - 腾讯云开发者社区-腾讯云 (tencent.com)

https://zhuanlan.zhihu.com/p/90173762#:~:text=%E5%9C%A8Python%EF%BC%8Cformat%20%28%29%E9%80%9A%E5%B8%B8%E7%94%A8%E6%9D%A5%E5%81%9A%E6%95%B0%E6%8D%AE%E7%9A%84%E6%A0%BC%E5%BC%8F%E5%8C%96%E8%BE%93%E5%87%BA%EF%BC%8C%E8%BF%99%E9%87%8C%E4%B8%BB%E8%A6%81%E8%AE%B0%E5%BD%95format%EF%BC%88%EF%BC%89%E7%9A%84%E5%87%A0%E4%B8%AA%E7%94%A8%E6%B3%95%20%E8%AF%AD%E6%B3%95%EF%BC%9A%20%7Bindex0%7D,%7Bindex1%7D.format%20%28value1%2Cvalue2%29.%E5%8D%B3%E4%BD%BF%E7%94%A8format%EF%BC%88%EF%BC%89%E7%9A%84%EF%BC%88%EF%BC%89%E5%86%85%E7%9A%84%E5%80%BC%E4%BB%A3%E6%9B%BF%20%7B%7D%E5%86%85%E7%9A%84%E5%80%BC%20Part%201%3A%E6%AD%A3%E5%B8%B8%E8%BE%93%E5%87%BA


https://blog.csdn.net/weixin_39899244/article/details/111065626

https://blog.csdn.net/u011085172/article/details/79044490


python带参数mysql 参数传递的评论 (共 条)

分享到微博请遵守国家法律