Flake8插件,用于检查SQL代码与主观风格规则的一致性
项目描述
Flake8-SQL是一个flake8插件,用于查找SQL查询并将它们与主观风格进行比较。这种风格主要遵循SQL风格指南,但在以下两个方面有所不同。首先,对齐应该与INTO而不是INSERT关键字,即
INSERT INTO table (columns) VALUES (values)
其次,JOIN应该与河的左侧对齐,即
SELECT * FROM table1 JOIN table2 ON ...
警告
Q440 关键字没有大写
所有SQL保留关键字都应该大写。
Q441 名称无效
所有非SQL关键字都应该使用snake_case,以字母开头,不以下划线结尾。由于限制,snake_case检查确保单词是小写的。
Q442 避免缩写关键字
避免使用缩写关键字,而应使用全长度版本。
Q443 周围的逗号空格不正确
逗号后面应该有空格,但不能有前导空格。
Q444 周围的等于不正确
等于应该用空格包围。
Q445 根关键字之间缺少行间距
根关键字 SELECT、FROM、INSERT、VALUES、DELETE FROM、WHERE、UPDATE、AND、OR 和 SET 应该单独一行(除非整个查询在一行中)。
Q446 分号后缺少换行符
分号必须位于行尾。
Q447 根关键字应该右对齐
根关键字 SELECT、FROM、INSERT、VALUES、WHERE、UPDATE、AND、OR、JOIN 和 SET 应该右对齐,即。
SELECT * FROM table
Q448 子查询应对齐到河的右侧
任何子查询都应对齐到河的右侧,即。
SELECT * FROM table WHERE column IN (SELECT column FROM table)
Q449 令牌应对齐到河的右侧
任何令牌都应对齐到河的右侧,即
SELECT column1, column2 FROM table
配置
有时使用保留关键字作为标识符比努力避免它更简单。为此,将 sql-excepted-names 选项设置为这些名称的逗号分隔列表。
限制
代码中查找字符串常量,如果它们包含选择从、插入到值、更新设置或从删除,则被视为 SQL。这可能导致错误阳性,在这种情况下,只需添加 # noqa 以使此插件忽略该字符串。
F-字符串使用格式化值,{...},在分析之前用常量 formatted_value 替换。这导致错误消息引用 formatted_value 而不是实际写入的内容。
项目详情
关闭
flake8-SQL-0.4.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a8cdd689a5549c6ec73b4478aae152d5e3199270d23a371653f260f7a0e9dedd |
|
MD5 | 120693f9cdd6f9d4558746bfada4969a |
|
BLAKE2b-256 | 807ba82825ecd4aca4e3be4394f31a1179f71bfcdae4d4325c908626d0e09461 |