sql-server - 执行存储过程时为"Operation is not allowed when the object is closed"

标签 sql-server asp-classic

这是我的存储过程,当我从经典 ASP 代码中调用它时,出现错误:

Operation is not allowed when the object is closed.

当我尝试进行记录计数时。

有人知道这里出了什么问题吗?

我正在尝试返回表@t

谢谢。

USE [Hires_new]
GO
/****** Object:  StoredProcedure [dbo].[sp_selectNewHireWorkPeriodsSQL]    Script Date: 05/13/2013 14:04:12 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author:      
-- Create date: 
-- Description: 
-- =============================================
ALTER PROCEDURE [dbo].[sp_selectNewHireWorkPeriodsSQL] 
    -- Add the parameters for the stored procedure here

AS

    declare @t table (HireID int, StartDate datetime, EndDate datetime, date_initiated datetime, date_closed datetime, firmName nvarchar(100), InquiryID int)
    DECLARE @acc INT 
    SET @acc = 1
    DECLARE @max INT 
    select @max = max(HireID) from NewHire
    WHILE (@acc <= @max)
        BEGIN
            IF (@acc in (select HireID from NewHire))
                BEGIN
                    insert into @t  
                        select HireID, StartDate, EndDate, date_initiated, date_closed, firmName, Inquiries.InquiryID 
                        from WorkPeriod, Firms, Inquiries 
                        where HireID = @acc and WorkPeriod.FirmID = Firms.FirmID and WorkPeriod.InquiryID = Inquiries.InquiryID 
                        order by HireID,StartDate DESC
                END
            set @acc = @acc + 1
        END
    select * from @t

Asp经典代码

selectNewHireWorkPeriodsSQL = "EXEC sp_selectNewHireWorkPeriodsSQL"
Set rsNewHireWorkPeriods = Server.CreateObject("ADODB.Recordset")
rsNewHireWorkPeriods.Open selectNewHireWorkPeriodsSQL,ConnectionString,adOpenStatic
NumOfNewHireWorkPeriods = rsNewHireWorkPeriods.RecordCount

response.write(NumOfNewHireWorkPeriods)

最佳答案

在您的存储过程中尝试一下:

SET NOCOUNT ON
SET ANSI_WARNINGS OFF

就在AS下方。

关于sql-server - 执行存储过程时为"Operation is not allowed when the object is closed",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16529032/

相关文章:

mysql - SQL Server 转储到 MySQL

sql - 从日期集中获取日期范围间隙

sql-server - SQL Server 数据库文件未被截断

javascript - 在 Javascript 中返回一个字符串

asp-classic - 经典 ASP - 完全过时但无关紧要?

sql - 如何从数据库文本字段中删除html标签

SQL Server 连接表语句

javascript - 经典的 asp 页面在 IE9 上无法正常运行

iis - 旧版 ASP 网站问题

session - 在经典 asp 中,我可以在 Session 对象中存储数据库连接吗?