Need to convert Text field to Varchar temporarily

2020-03-01 09:44发布

问题:

I am using a SQL 2000 database.

I am working with a database in which I cannot change the types on the tables, or the stored procedures. One of the stored procedures I need to call expects a parameter of 'text'. I can get to the text field, but I am unable to figure out who to store that in a variable or any other way to pass it into the stored procedure?

If I try and create a text variable, SQL won't let me - if I convert it to varchar I only get the first character from the text field.

Any tricks to get around this much appreciated! Thank you!

回答1:

Declare the variable of type varchar(8000)

declare @v varchar(8000)
SET @v = (SELECT CAST(textcol as varchar(8000)) FROM yourtable WHERE ....)

Obviously it might still be truncated but not at 1 character.