【问题标题】:Disable PyCharm SQL inspection for one statement对一条语句禁用 PyCharm SQL 检查
【发布时间】:2021-05-16 10:16:48
【问题描述】:

我真的很喜欢 PyCharm 的 SQL 检查,它们非常有用并且提供了宝贵的见解。但是它们不适用于psycopg2 SQL 组合功能。我正在构建一个简单的查询来执行多行插入:

from psycopg2.sql import SQL, Placeholder, Literal

def build_materials_insert(model_id, materials):
    data = SQL(", ").join(
        SQL("({model_id}, {obj_name}, {material})").format(
            model_id=Literal(model_id),
            obj_name=Literal(mat["object"]),
            material=Literal(mat["material"])
        ) for mat in materials
    )

    return SQL("INSERT INTO materials(model_id, object, material)  VALUES {values}").format(values=data)

检查后,PyCharm 显示警告'(' expected, got '{'。从 SQL 的角度来看它是有效的,但在这里没有用,因为花括号中的文本只是一个格式占位符。

使用 Alt-Enter 显示建议仅提供“更改 SQL 方言”功能。

我通常可以禁用 SQL 语法检查,但我不想这样做,因为在其他地方它非常有用。我试图找到合适的禁用注释命令,但没有找到内置 SQL 的列表。

是否有某种方法可以禁用特定语句的 SQL 验证,因为我真的很想将我的代码保留为所有绿色检查结果?

【问题讨论】:

    标签: pycharm ide


    【解决方案1】:

    与 PyCharm 支持沟通后,目前似乎没有办法做到这一点。

    我已经向 DataGrip 错误跟踪器提交了feature request(与 DB 相关的东西由 DataGrip ream 处理),所以希望有一天会修复

    【讨论】:

      猜你喜欢
      • 2018-12-11
      • 1970-01-01
      • 1970-01-01
      • 2014-10-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多