Sql server 如何在SQL Server变量中使用特殊字符?

Sql server 如何在SQL Server变量中使用特殊字符?,sql-server,tsql,special-characters,Sql Server,Tsql,Special Characters,我试图在SQL Server中声明类似于@wi-fi的变量,但不允许使用破折号字符。还有像/*-()这样的其他字符也有同样的问题。我知道对于表名或列名,我们可以将其放在[]中,但是声明变量呢?有解决办法吗 我已经在网上搜索过了,但找不到任何方法。局部变量名必须符合标识符规则。MSDN表示: 在Transact-SQL语句中使用标识符时,不符合这些规则的标识符必须用双引号或括号分隔 但此规则对变量命名无效。在SQL Server中,对变量名有限制。所有变量名必须以单个@符号开头。之后,变量名必须遵

我试图在SQL Server中声明类似于
@wi-fi
的变量,但不允许使用破折号字符。还有像
/*-()
这样的其他字符也有同样的问题。我知道对于表名或列名,我们可以将其放在
[]
中,但是声明变量呢?有解决办法吗


我已经在网上搜索过了,但找不到任何方法。

局部变量名必须符合标识符规则。MSDN表示:

在Transact-SQL语句中使用标识符时,不符合这些规则的标识符必须用双引号或括号分隔

但此规则对变量命名无效。在SQL Server中,对变量名有限制。所有变量名必须以单个
@
符号开头。之后,变量名必须遵循标识符规则,总共可以包含128个字符。当我们说字符时,我们的意思是名称可以包含
字母、数字、@符号、磅符号、美元符号和下划线字符
变量名不能包含任何破折号或空格


你为什么坚持使用特殊字符?因为我必须这样做。什么版本?你能提供你到目前为止尝试过的吗?你必须做什么?你应该更好地描述你需要这个的原因,然后人们可能会提供替代的解决方案。为了澄清-“磅符号”是这个词在美国的用法,指的是
字符,而不是