0

我收到此错误消息: Msg 16927,Level 16,State 1,Procedure GetWfGenProcessParameters,Line 21 Cannot fetch into text、ntext 和 image 变量。

我真的需要让这个光标与文本数据一起工作。有没有办法克服这个错误?

4

2 回答 2

2

如果您正在使用SQL Server 2005,您可以使用NVARCHAR(MAX)

CREATE TABLE text_test (test NTEXT NOT NULL)

INSERT
INTO    text_test
VALUES  ('test')

DECLARE @t NVARCHAR(MAX);

DECLARE txt_cur CURSOR FOR
        SELECT test
        FROM   text_test

OPEN    txt_cur

FETCH   NEXT
FROM    txt_cur
INTO    @t

CLOSE txt_cur

DEALLOCATE txt_cur
GO

DROP TABLE text_test
GO
于 2009-05-05T14:33:17.313 回答
1

首先,为什么要使用游标,要不惜一切代价避免使用游标。如果您使用基于集合的解决方案,您的问题可能会消失。但是,如果没有更多关于您要在光标中做什么的想法,很难提供建议。当然,我无法改变 SQL Server 不允许您将文本数据放入变量的事实。当您遇到系统限制时,您需要重新考虑您在做什么以及如何做。

于 2009-05-05T14:24:46.863 回答