2014-10-22 56 views
0

我想从存储在SQL Server中的数据库中的表中填充IF语句的条件。 ,用于从SQL Server中的条件,我使用:从SQL Server中的数据库填充IF语句的条件

... 
SQL_Cond = "SELECT Cond FROM Condition" 
Recordset.open SQL_Cond,ConnString 
Cond = Recordset(0).value 
MsgBox Cond 
... 

这显示MSGBOX条件,条件是一样的东西“0.8 * Table_A_Rows> Table_B_Rows”存储为SQLSERVER一个varchar。现在,我想在if语句使用条件如下

... 
if (Cond) Then 
    ... 
    'Process 
    ... 
End If 

所以基本上可以在条件字符串类型强制转换成数据类型不显示类型不匹配,并放在IF的参数里面是什么时候?这是否可行?

下完美的​​作品在VBScript:

... 
Dim Cond = A>B 'Which datatype is this?? Lets call it CONDITION Data Type 
If (Cond) Then 
    MsgBox "A>B" 
Else 
    MsgBox "A<B" 

但可以字符串转换成这种状况的数据类型为IF语句用法?

回答

0

​​应该做你想做的。

0

查询之后cond是一个字符串,希望包含一个有效的布尔表达式。您可以使用Eval到evalute在您如果语句中的表达式:

>> A = 1 
>> B = 0 
>> cond = "A>B" 
>> If Eval(cond) Then WScript.Echo "Yes" 
>> 
Yes 

这工作,因为A和B在评估的上下文是已知的。你必须确保这适用于像Table_A_Rows这样的变量。

+0

这个工程!谢谢! – 2014-10-22 11:04:26