这个ASP代码中可以容纳多少个数字?

问题描述

|
\'   Now get a Location_ID 
\'
    Set RS = DB.Execute (AF.sql(\"GenerateLocationID\"))
    Location_ID = CInt (RS(0).Value)
    RS.Close
这正在被写入用Number(10)定义的Oracle数据库,但是返回以下错误:   Microsoft VBScript运行时错误\'800a0006 \'      溢出:\'CInt \' 我很怀疑,因为Oracle表中的最大值现在是32767。创建ID的代码是否有限制? (AF.sql(\“ GenerateLocationID \”)是\'从Dual \中选择Location_ID.NextVal',因此它只是标准的Oracle select语句。     

解决方法

@thursdaysgeek:快速修复方法可能是-
Location_ID = CLng(RS(0).Value)
或者如果您想调试它
On Error Resume Next
Location_ID = CInt(RS(0).Value)
If Err.Number <> 0 Then
    Response.Write RS(0).Value
End If
On Error GoTo 0
    ,这应该可以回答您的问题:   CInt函数将   表达式以键入Integer。注意:   值必须是-32768之间的数字   和32767。 根据代码,Location_ID似乎必须很短。 http://www.w3schools.com/VBScript/func_cint.asp