asp-classic – 从Classic ASP执行存储过程
发布时间:2020-11-18 11:42:45 所属栏目:asp.Net 来源:互联网
导读:出于一些奇妙的原因,我发现自己在经典ASP页面中调试了一个问题(在过去的两天里我至少失去了10年的生命). 我正在尝试执行包含一些OUT参数的存储过程.问题是当存储过程返回时,没有填充其中一个OUT参数.我可以从SQL管理工作室(这是2008)执行存储过程,并且所有值
出于一些奇妙的原因,我发现自己在经典ASP页面中调试了一个问题(在过去的两天里我至少失去了10年的生命). 我正在尝试执行包含一些OUT参数的存储过程.问题是当存储过程返回时,没有填充其中一个OUT参数.我可以从SQL管理工作室(这是2008)执行存储过程,并且所有值都被设置并完全按预期返回. declare @inVar1 varchar(255) declare @inVar2 varchar(255) declare @outVar1 varchar(255) declare @outVar2 varchar(255) SET @inVar2 = 'someValue' exec theStoredProc @inVar1,@inVar2,@outVar1 OUT,@outVar2 OUT print '@outVar1=' + @outVar1 print '@outVar2=' + @outVar2 效果很好.太棒了.完善.我期待的确切值将被返回并打印出来. 是的,因为我正在尝试调试经典ASP页面,所以我将代码复制到VBScript文件中以尝试缩小问题范围. 这是我想出的: Set Conn = CreateObject("ADODB.Connection") Conn.Open "xxx" Set objCommandSec = CreateObject("ADODB.Command") objCommandSec.ActiveConnection = Conn objCommandSec.CommandType = 4 objCommandSec.CommandText = "theStoredProc " objCommandSec.Parameters.Refresh objCommandSec.Parameters(2) = "someValue" objCommandSec.Execute MsgBox(objCommandSec.Parameters(3)) 不行.一点儿都没有. (我生命中的另外十年)第三个参数只是NULL – 这也是我在Classic ASP页面中遇到的. 有人可以对此有所了解吗?我认为经典的ASP代码与VBScript代码相同,我是完全愚蠢的吗?我认为它使用相同的脚本引擎和语法,所以我应该没问题,但我不是100%肯定. 我从VBScript中看到的结果与我在ASP中看到的结果相同. 解决方法尝试With objCommandSec Set .ActiveConnection = Conn .CommandType = 4 .CommandText = "theStoredProc" .Parameters.Append .CreateParameter("@inVar1",200,1,255,VALUE1) .Parameters.Append .CreateParameter("@inVar2",VALUE2) .Parameters.Append .CreateParameter("@outVar1",2,255) .Parameters.Append .CreateParameter("@outVar2",255) .Execute Response.Write .Parameters(3).Value End With 如果您知道参数详细信息,则还应该避免.Refresh,因为它涉及到返回服务器的行程. (编辑:莱芜站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-core – asp.net核心身份中的多个SubDomain的cooki
- asp.net-mvc – System.Web.Mvc.WebViewPage.Model.get返回
- asp.net-mvc – 路由是在我的区域中找到控制器,但不是视图
- asp.net-mvc – 在asp.net mvc中启动一组未选中的radiobutt
- asp.net-mvc – 如何在多个Asp.net MVC应用程序中使用通用布
- QueryString与ASP.NET MVC 6锚点标签助手
- asp.net-core – “netcoreapp1.0”是一个不受支持的框架.
- asp.net-mvc – 帖子上的Mvc模型ID 0
- asp.net-core – 在执行DI时指定服务选项的干净方法
- .net – asp:GridView文本框始终返回空值