gpt4 book ai didi

python - 一个奇怪的空间问题 Python

转载 作者:行者123 更新时间:2023-12-01 00:53:55 25 4
gpt4 key购买 nike

我几乎成功地通过 Python 查询了 MySQL,它显示了给定品牌的最频繁的数据集。我遇到的问题是当我尝试运行 print row[1], row[2] 命令时,它返回 productnum 而不是我想要的空间,如 product num。我试过 print row[1], "", row[2] 但它不满足测试用例。有没有另一种方法来解决这个问题。我知道这听起来可能不是一个重要的问题,但它一直困扰着我,正是这个问题没有通过测试。完整代码如下。

最佳答案

请不要通过连接字符串来创建 SQL。假装我是攻击者,我这样调用你的函数:

inject = "'; SELECT name,cardnum FROM credit_cards; --"
most_popular(inject, 'LOL')

您的代码将有助于将其扩展为:

SELECT DISTINCT brand, product, COUNT(*) AS num FROM table1 WHERE brand = ''; SELECT * FROM credit_cards; --'" "GROUP BY product ORDER BY num desc, product asc LIMIT LOL

现在您的客户正在起诉您。总是,总是使用参数化查询而不是自己构建查询。将 cursor.execute() 更改为:

 cursor.execute("SELECT DISTINCT brand, product, COUNT(*) AS num FROM table1 WHERE brand = %s GROUP BY product ORDER BY num desc, product asc LIMIT %s", (brands, num_frequency))

多年来我一直在编写 DB 库,尝试正确处理这些东西的想法仍然让我感到恐惧,主要是因为搞砸它的惩罚非常严重。让您的数据库库为您完成繁重的工作。

关于python - 一个奇怪的空间问题 Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12829528/

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