【发布时间】:2021-06-18 17:50:07
【问题描述】:
当我将数据从 json 响应存储到 postgresql 时出现错误。 python中如何用单引号存储数据?
我的 json 响应:
{
"status": 2,
"records": 1,
"message": "OK",
"id": "131",
"name": "SUPA'AT",
"address": "RUNGKUT SA'GIRI"
}
我的python代码:
sql = "UPDATE my_data SET name='"+str(response["name"])+"', address='"+str(response["address"])+"' WHERE id='"+id+"'"
cursor.execute(sql)
conn.commit()
【问题讨论】:
-
在更进一步之前。您需要停止像这样创建 SQL 查询。这是主要的 SQL 注入材料。您需要使用参数化查询。 owasp.org/www-community/attacks/SQL_Injection
-
如果您使用
psycopgdocs涵盖您的确切问题以及如何正确参数化您的查询。 psycopg.org/docs/… -
@PacketLoss 谢谢先生,我是 python 新手,将使用参数化查询
-
@NirAlfasi 的意思是先将单引号替换为双引号?
标签: python python-3.x postgresql