我正在尝试使用Microsoft.SqlServer.TransactSql.ScriptDom来检查表达式是否为标量常量。
这是这样一个表达式:
DATEADD(YEAR, -21, CURRENT_TIMESTAMP)
这里不是这样的表达:
DATEADD(YEAR, -21, DateOfBirth)
它不是一个常量,因为它引用了 column DateOfBirth。我怎样才能确定这一点?
我没想到——以及我遇到麻烦的原因——Microsoft.SqlServer.TransactSql.ScriptDom认为那YEAR是一个ColumnReferenceExpression.