[英]Table name as variable in sql string
有人可以告诉我如何使表成为变量吗?
tableX = "test"
sql = "SELECT * FROM tableX WHERE datum = %s and name = %s"
val = (datumX, nameX,)
我就是做对了。 我试过 {} 和 s%。
谢谢
您可以使用格式函数或 f-string(如果 python 3.6=<)
tableX = "test"
sql = "SELECT * FROM {} WHERE datum = %s and name = %s".format(tableX)
在 Python2.x 中首先回答:
sql = "SELECT * FROM {} WHERE datum = %s and name = %s" .format(tableX)
在 Python3 中,您可以使用带有 f-string 的第二个:
sql = f"SELECT * FROM {tableX} WHERE datum = %s and name = %s"
但是,要小心 SQL 注入。 您必须绝对确定该 tableX 变量的来源(无用户输入)。 通过直接格式化字符串,您可以绕过所有转义输入。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.