Będziesz musiał cast
lub convert
jako CHAR
typ danych, nie ma varchar
typ danych, na który możesz przesyłać/konwertować dane:
select CAST(id as CHAR(50)) as col1
from t9;
select CONVERT(id, CHAR(50)) as colI1
from t9;
Zobacz następujący SQL — w akcji — na SQL Fiddle :
/*! Build Schema */
create table t9 (id INT, name VARCHAR(55));
insert into t9 (id, name) values (2, 'bob');
/*! SQL Queries */
select CAST(id as CHAR(50)) as col1 from t9;
select CONVERT(id, CHAR(50)) as colI1 from t9;
Oprócz tego, że próbowałeś przekonwertować na nieprawidłowy typ danych, składnia, której używałeś do convert
był niepoprawny. convert
funkcja używa następującego gdzie expr
to Twoja kolumna lub wartość:
CONVERT(expr,type)
lub
CONVERT(expr USING transcoding_name)
Twoje pierwotne zapytanie miało składnię odwrotną.