從MySQL拉2個十進制值,並試圖if語句用一個非常簡單的拉。 IsNumeric
確認這些值都是數字。如果我使用minval=19.99
而不是從數據庫中提取它的作品。比較數字從MySQL使用if語句
用於檢索minval
的代碼看起來是這樣的:
Set rscontrol = db.Execute("select * from websitecontrol ")
minval = FormatNumber(rscontrol("minordervalue"))
從MySQL拉2個十進制值,並試圖if語句用一個非常簡單的拉。 IsNumeric
確認這些值都是數字。如果我使用minval=19.99
而不是從數據庫中提取它的作品。比較數字從MySQL使用if語句
用於檢索minval
的代碼看起來是這樣的:
Set rscontrol = db.Execute("select * from websitecontrol ")
minval = FormatNumber(rscontrol("minordervalue"))
FormatNumber
是一個用於格式化用於顯示的值的函數。它返回一個格式化的字符串。
>>>n = 1.25
>>>WScript.Echo TypeName(n)
Double
>>>WScript.Echo TypeName(FormatNumber(n))
String
決不除非結果是用於顯示使用格式化功能。
變化
minval = FormatNumber(rscontrol("minordervalue"))
到
minval = rscontrol("minordervalue")
如果仍然沒有幫助,您可以使用CDbl
函數值強制雙。
minval = CDbl(rscontrol("minordervalue"))
請注意,該功能需要在您的系統區域設置中配置的小數點。
set rscontrol = db.execute(「select * from websitecontrol」) minval = formatnumber(rscontrol(「minordervalue」)) – user3417410
@ user3417410查看更新後的答案。另外,請在將來的問題中提供這類信息。這次我冒昧地爲你做了。 –
檢查從數據庫中拉出的值的類型('TypeName(minval)')。很可能你會比較兩個字符串,或者一個字符串與實際數字進行比較。用'IsNumeric'檢查在這裏並沒有真正的幫助,因爲它評估表達式是否可以被評估爲數字,對於只包含數字的字符串也是如此。如需更多幫助:顯示您的代碼。 –
這兩個值在MySQL中都以十進制(19,2)的形式存儲。 Typename將小計顯示爲double,我認爲這對數字是正確的,但minval顯示爲字符串,所以我猜這是我的問題,你能告訴代碼它是數字嗎? – user3417410