0

在以下连接的 TSQL 字符串中,很明显单引号将字符串的文字部分与变量分开,但字符串末尾的双引号让我感到困惑,因为模式似乎是 N' 来表示文字片段. 尽管我知道有一个解释,但我没有看到对此的解释?

SET @ntsql = N'SELECT * INTO sdMembership FROM '
    + @BackupName
    + @BackupDate
    + N' WHERE FiscalYear = '
    + CAST(@FiscalYear AS VARCHAR(4))
    + N''
4

1 回答 1

1

最后只是一个 nchar 空字符串
很确定它什么都不做
null 是为了告诉你空字符串和 null 不一样

select null as [dbnull], N'ldkjf' as [string], len(N'ldkjf') as [len]

select null as [dbnull], N'' as [empty_string], len(N'') as [len]

并且为了清楚起见,不要使用术语双引号,因为它是一个字符。
它是两个单引号。

于 2013-10-07T17:47:51.893 回答