Classic ASP/VBScript で記述された Web アプリケーションをサポート/強化しています。どちらも日常的に使用してから約10年になります。「落とし穴」と見なす問題に出くわしたばかりで、他の人にも同様のことを知っておく必要があるかどうか疑問に思っていました。
私の問題:
SQL テーブルの列を float から decimal に変換する必要がありました。decimal は、vbscript で実際にサポートされている (または適切にサポートされている) 型ではないことがわかりました。したがって、次のコード:
Dim var1, var2
var1 = rs("DecimalField1").Value
var2 = rs("DecimalField2").Value
If (var1 <> var2) Then
'Do Something'
End If
次の行で Type Mismatch エラーが発生します。
If (var1 <> var2) Then
よく調べた結果、次のことがわかりました。
var1 = CDBL(rs("DecimalField1").Value)
var2 = CDBL(rs("DecimalField2").Value)
問題を解決します。しかし、それは明白なことのようには思えず、その行で Type Mismatch が発生した理由を理解するのにしばらく時間がかかりました.
皆さんへの私の質問は、このような他の小さな癖に出くわしたことがありますか? ASP/vbscript で気をつけなければならない「落とし穴」と思われるものは何ですか?