【问题标题】:Null string causing type mismatch导致类型不匹配的空字符串
【发布时间】:2012-07-26 14:03:37
【问题描述】:

我正在编写一个旧的 asp 页面,以将会话变量插入数据库,以将它们传输到 ASP.NET 应用程序。所以我遍历它们并使用存储过程将它们插入到数据库中。其中一个有一个空字符串作为值,当插入那些它失败时:

Microsoft VBScript 运行时错误“800a000d”

类型不匹配

我已将它们以 key=value=vartype 的形式写到页面上,而 vartype 确实是 8,一个字符串。失败的 GoBack 行:

User_id=2029=8
GoBack==8
ID_Reps=12345726=8

来电:

.Parameters.Append .CreateParameter("@SessionValue", adVarChar, adParamInput, 4000, Session(objItem))

我宁愿在插入时不将其转换为空字符串。有没有办法解决这个问题?

【问题讨论】:

标签: asp-classic vbscript ado


【解决方案1】:

两个选项将 Session(objItem) 替换为:

If(Session(objItem), DBNull.Value)

If(Session(objItem), String.Empty)

【讨论】:

    【解决方案2】:

    我刚刚将参数设为可选,默认值为 null,如果值为 null,则绕过添加它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-01-29
      • 1970-01-01
      • 1970-01-01
      • 2020-06-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多