Usuário com melhor resposta
Converter campo

Pergunta
-
Bom dia,
Caros tenho um campo na minha tabela do tipo nvarchar...gostaria de converte-lo para numeric...já tentei a instrução convert e aparece a seguinte msg: Error converting data type nvarchar to numeric alguem sabe uma outra maneira de converter esse isso?
grato,
Att,
Tiodimi
Respostas
-
Com certeza.... faça um REPLACE antes de fazer o CONVERT
Tipo assim;
Certo:
SELECT
CAST(REPLACE('1,02',',','.') AS NUMERIC(12,4))1.0200
(1 linha(s) afetadas)
Erro:
SELECT
CAST(CAST('1,02' AS NVARCHAR) AS NUMERIC(12,4))Mensagem 8114, Nível 16, Estado 5, Linha 1
Error converting data type nvarchar to numeric.
Todas as Respostas
-
Tiodimi,
Se esta coluna tiver algum caractere invalido para a conversão para numeric...vai gerar esse erro!
Exemplo:
SELECT
CAST(CAST('leivio' AS NVARCHAR) AS NUMERIC(12,4))resultado
---------------------------------------
Mensagem 8114, Nível 16, Estado 5, Linha 1
Error converting data type nvarchar to numeric.
SELECT
CAST(CAST(1.0101 AS NVARCHAR) AS NUMERIC(12,4))resultado
---------------------------------------
1.0101
(1 linha(s) afetadas)
Veja se o tipo de dado na sua coluna tem algum tipo invalido!
-
-
Com certeza.... faça um REPLACE antes de fazer o CONVERT
Tipo assim;
Certo:
SELECT
CAST(REPLACE('1,02',',','.') AS NUMERIC(12,4))1.0200
(1 linha(s) afetadas)
Erro:
SELECT
CAST(CAST('1,02' AS NVARCHAR) AS NUMERIC(12,4))Mensagem 8114, Nível 16, Estado 5, Linha 1
Error converting data type nvarchar to numeric.