1

检查 '(1=1 AND (1=1 OR 1=1) OR 0=1)' 字符串返回真或假

if (1=1 AND (1=1 OR 1=1) OR 0=1)
print '1'
else
print '0'

如果我这样检查,那么它会返回完美的值,但是如果我有包含值 '(1=1 AND (1=1 OR 1=1) OR 0=1)' 的字符串变量,那么如何检查 if 子句?

4

1 回答 1

1

您可以建立一个动态查询:

declare @conditionString nvarchar(max)
set @conditionString = '(1=1 AND (1=1 OR 1=1) OR 0=1)'

declare @sql nvarchar(max)
set @sql = 'if ' + @conditionString + '
              print ''1''
            else 
              print ''0'''

sp_executeSql @sql
于 2013-11-07T13:31:28.663 回答