Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Como converter uma coluna varchar em coluna bit no SQL SERVER


Suspeito que existam outros valores além de 'true' e 'false' no campo 'Flag1'. Portanto, verifique os valores em Flag1.

selecione Flag1 distinto do YouTable.

Aqui está a minha prova:
declare @Flag varchar(25) = 'False'
select CONVERT(Bit, @Flag)

Funciona bem.

No entanto, isso dará o mesmo erro.
declare @Flag varchar(25) = '  False' -- Pay attention to the the space in '  False'!
select CONVERT(Bit, @Flag)

-> Msg 245, Level 16, State 1, Line 2Falha na conversão ao converter o valor de varchar 'Falso' para bit de tipo de dados.

Preste atenção no espaço em 'Falso' na mensagem de erro!