数据库查询语句的生成,以及占位符使用的疑问
直接通过 python的连接字符串生成查询语句,有可能会有sql注入的危险。
如果,只生成单条查询,注意点的话,连接字符串组合成查询语句,危险性大不大?好像应该也没什么问题
如果使用 “?”占位符的话,感觉很不灵活不方便。
比如,多个key
select * from table
select id,name from table
这里使用占位符,貌似不能这么用。
args= ('name','xxx')
c.execute('select * from stocks where ?=?', args)
还有生成查询语句比较好的实践应该是怎样的?
(字符串连接成查询语句,要带入的查询的值使用占位符??还是直接固定死了,尽量不要抽象话)
t.akiha
11 years, 2 months ago