gpt4 book ai didi

python - 将字符串与另一个包含变量的字符串连接起来

转载 作者:行者123 更新时间:2023-11-29 03:33:17 24 4
gpt4 key购买 nike

我在 Python 中有一个使用 MySQLdb 的 MySQL 查询,我想根据是否提供 LIMIT 给我不同的行数。

所以,像这样:

sql = "SELECT URL, Name AS Category 
FROM sitelist sl
INNER JOIN sitecategory sc ON sc.PlacementCategory_id = sl.Category_id "
if limit > 0 :
sql += "LIMIT %s", (limit)

然而,这失败了:

TypeError: cannot concatenate 'str' and 'tuple' objects

我怎样才能连接包含 limit 数字的字符串,同时保持查询“安全”?如果上面是一个单独的字符串,以上工作正常。

在 PHP 中,我会简单地使用带有 bindparam() 的准备好的 PDO 语句,但我在 Python 中找不到类似的东西。

最佳答案

我认为最简洁的方法是:

sql = ("SELECT URL, Name AS Category "
"FROM sitelist sl "
"INNER JOIN sitecategory sc ON sc.PlacementCategory_id = sl.Category_id")

if limit > 0:
whatever.execute(sql+" LIMIT %s", (limit,))
else:
whatever.execute(sql)

请注意:sql 的每一行都应该有左引号和右引号;并且 limit 需要在元组中作为 execute 的参数。

关于python - 将字符串与另一个包含变量的字符串连接起来,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27292335/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com