在以下查询游标中,异常(执行批处理时发生错误。错误消息为:抛出类型'System.OutOfMemoryException'的异常。)。我不知道为什么?记录数量为:3822
declare @ID int,
@AccNo nvarchar(255),
@Name nvarchar(255),
@Type int,
@SubAcc bit,
@Curr int,
@dept nvarchar(255)
DECLARE cus CURSOR LOCAL FOR
SELECT ID,
AccNo,
Name,
Type,
SubAcc,
Curr,
Department
FROM chart_new
order by ID
OPEN cus;
FETCH NEXT FROM cus INTO @ID,
@AccNo,
@Name,
@Type,
@SubAcc,
@Curr,
@dept
WHILE @@FETCH_STATUS = 0
BEGIN
select @ID -- @ID--, COUNT (*) from FN_SPLIT_INT(@AccNo);
FETCH NEXT FROM cus INTO @ID,
@AccNo,
@Name,
@Type,
@SubAcc,
@Curr,
@dept
END
CLOSE cus;
DEALLOCATE cus;
表差异:
CREATE TABLE [dbo].[chart_new](
[ID] [float] NOT NULL,
[AccNo] [nvarchar](255) NULL,
[Name] [nvarchar](255) NULL,
[Type] [int] NULL,
[SubAcc] [bit] NULL,
[Curr] [int] NULL,
[Department] [nvarchar](255) NULL,
[acclevel] [int] NULL,
[haschild] [bit] NULL,
[ParentID] [int] NULL,
[ClassID] [int] NULL,
CONSTRAINT [PK_chart_new] PRIMARY KEY CLUSTERED
(
[ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO