0

我正在编写一个旧的 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))

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

4

2 回答 2

0

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

If(Session(objItem), DBNull.Value)

或者

If(Session(objItem), String.Empty)
于 2012-07-26T14:17:26.430 回答
0

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

于 2012-07-31T13:34:53.827 回答