python - 我可以根据用户输入在表中执行 SQL 查询吗?
问题描述
所以,我是 Stackoverflow 的新手,我希望我能写好这个问题。所以我试图根据python中的用户输入从我的数据库中选择一个表(包含5个表)。但是我不太确定该怎么做。这是代码:
user_input = "table1"
db.execute("SELECT number FROM (?) WHERE person = 1;")
如果可能的话,我正在寻找一种方法。无论如何,任何帮助将不胜感激。
解决方案
好吧,为了禁止 SQL 注入,经过一些验证后,最简单的方法是使用用户输入格式化查询字符串。
db.execute ("SELECT * FROM MyTable WHERE person = {};".format(user_input))
的内容user_input
将放在大括号中。
不过,您如何获得用户输入还不是很清楚。
推荐阅读
- selenium - 如何使用 Geb 验证错误消息
- python - 对于嵌套列表和列表的循环操作
- c# - 使用第一个 Lambda 表达式的结果组合两个 Lambda 表达式
- c++ - 在大型应用程序的 main 上使用 try catch
- php - 使用 Laravel 在控制器中使用不同的功能更改变量数据
- android-espresso - 测试用例无法使用 espresso pressBackUnconditionally() 将应用程序带到后台
- java - 如何根据用户的猜测替换字符串中的特定字符
- javascript - 使用模式匹配生成 JavaScript 语言服务已被禁用
- javascript - 我们将如何维护在fabric js中添加到画布的对象列表
- java - Selenium:如何判断 RemoteWebDriver.findElements(By) 是否可以抛出 StaleElementReferenceException?