问题描述
|
\' 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