需要暂时将Text字段转换为Varchar,以便我可以传递给存储过程

时间:2010-12-05 17:32:32

标签: sql sql-server tsql sql-server-2000

我正在使用SQL 2000数据库。

我正在使用一个数据库,我无法在其中更改表或存储过程的类型。我需要调用的一个存储过程需要一个'text'参数。我可以进入文本字段,但我无法确定将变量或其他任何方式存储到存储过程中的方法?

如果我尝试创建一个文本变量,SQL就不会让我 - 如果我将它转换为varchar,我只会从文本字段中获取第一个字符。

任何可以解决这个问题的技巧都值得赞赏!谢谢!

1 个答案:

答案 0 :(得分:20)

声明varchar(8000)

类型的变量
declare @v varchar(8000)
SET @v = (SELECT CAST(textcol as varchar(8000)) FROM yourtable WHERE ....)

显然它可能仍然被截断但不是1个字符。