SQL Server语言 - DECLARE @name TYPE --##TempGlobalTable



以下是我遇到问题的特定查询。
声明起始日期DATETIME-##日期
如果我在没有--##DATE的情况下运行它,那么查询不会返回任何结果。我知道--是一个注释,##是一个全局临时表。但为什么它不起作用呢?即使去掉--,查询也不会返回任何结果。

事实上,我已经声明了DATETIME数据类型就足够了?

我正在通过一个财务应用程序使用T-SQL,您可以在其中创建自己的视图。

这对于注释来说太长了。

在我看来,这段代码显然有效:

DECLARE @StartDate DATETIME

然而,它不做任何明显的,因此它本身很难诊断(如果没有明确的错误(。因此,要知道这样的代码是否有效,您可能会在之后获得代码。

我怀疑是以下代码导致了错误*,因为DECLARE没有明确的语句分隔符(通常称为分号(。

在这样的场景中,注释为解析器提供了足够的信息来防止错误。然而,最好只写:

DECLARE @StartDate DATETIME;

我想不出办法重现这个问题。但您可以看到语句终止符的重要性,代码如下:

declare @x int;
(select 1)

删除分号,你会得到一个错误

最新更新