JetBrains Rider 2025.2 Help

SQL Server 中的代码检查

本主题列出了 SQL Server 中所有 JetBrains Rider 代码检查

您可以在 编辑器 | 检查设置 | 检查严重性 | 其他语言 设置页面  Ctrl+Alt+S 上切换特定检查或更改其严重性级别。

检查

描述

默认严重性

内置函数

报告 ISNULL 函数中字符串参数的截断。

ISNULL 语法为 ISNULL(check_expression,replacement_value)

According to ISNULL at docs.microsoft.com, replacement_value will be truncated if replacement_value is longer than check_expression.

示例(Microsoft SQL Server):

DECLARE @name1 VARCHAR(2) = NULL; DECLARE @name2 VARCHAR(10) = 'Example'; DECLARE @name3 VARCHAR(2) = 'Hi'; -- `@name2` is VARCHAR(10) and will be truncated SELECT ISNULL(@name1, @name2); -- `@name3` is VARCHAR(2) as `@name1` and will not be truncated SELECT ISNULL(@name1, @name3);

警告 警告

查询中的 ORDER BY

报告在视图、内联函数、派生表、子查询和公用表表达式中使用 ORDER BY 子句但未使用 TOP偏移量FOR XML 的情况。

有关 ORDER BY 用法的更多信息,请参阅 docs.microsoft.com 上的 SELECT - ORDER BY 子句 (Transact-SQL)

示例(Microsoft SQL Server):

CREATE TABLE foo (a INT NOT NULL, b INT NOT NULL); SELECT * FROM (SELECT a, b FROM foo A WHERE a < 89 ORDER BY b) ALIAS;

在子查询中,ORDER BY 将被高亮显示为错误。 您可以向子查询添加 TOP、OFFSET 或 FOR XML。 或者,使用“删除元素”快速修复来删除 ORDER BY 部分。

应用快速修复后:

SELECT * FROM (SELECT a, b FROM foo A WHERE a < 89) ALIAS;

错误 错误

最后修改日期: 2025年 9月 26日