locked
SQL SERVER 2008 -> O tipo de dados numeric da variável de recebimento não é igual ao tipo de dados numeric da coluna... RRS feed

  • Pergunta

  • Estou com um problema ao migrar para o SQL Server 2008 em relação ao SQL Server 2000.

    Possuo uma procedure que funcionava adequadamente e agora está gerando erro de conversão de tipo.

    Encaminho abaixo informações sobre o caso:

    Estrutura da tabela (TVA0000SFU):

        CODCID, numeric(6,0)

        NUMERO,numeric(8,0)

    ***************************procedure*******************************************

    USE [cplusosasco]

    GO

    /****** Object:  StoredProcedure [dbo].[AUTONUM]    Script Date: 07/16/2013 10:11:33 ******/

    SET ANSI_NULLS ON

    GO

    SET QUOTED_IDENTIFIER ON

    GO

    ALTER PROCEDURE [dbo].[AUTONUM] @pCOMANDO VARCHAR(4000), @sRETORNO NUMERIC OUTPUT AS

    DECLARE @SQL NVARCHAR(4000)

    BEGIN

    SET @SQL = @pCOMANDO

    EXEC SP_EXECUTESQL @SQL, N'@sRETORNO NUMERIC OUT', @sRETORNO OUT

    END

     

     

    ++++++++++++++++++++++++++++++++++retorna++++++++++++++++++++++++++

    USE [cplusosasco]

    GO

     

    DECLARE             @return_value int,

                                  @sRETORNO numeric(18, 0)

     

    EXEC      @return_value = [dbo].[AUTONUM]

                                  @pCOMANDO = N'UPDATE TVA0000SFU SET @sRETORNO=NUMERO=NUMERO+8 WHERE CODCID=19',

                                  @sRETORNO = @sRETORNO OUTPUT

     

    SELECT  @sRETORNO as N'@sRETORNO'

     

    SELECT  'Return Value' = @return_value

     

    GO

     

    mensagens

    Mensagem 425, Nível 16, Estado 1, Linha 1

    O tipo de dados numeric da variável de recebimento não é igual ao tipo de dados numeric da coluna 'NUMERO'.

     

    (1 linha(s) afetadas)

     (1 linha(s) afetadas)

    segunda-feira, 22 de julho de 2013 02:55

Respostas

  • LComar,

    Verifique os tamanhos que você definiu no campo Numero(8,0) e na variável Retorno(18,0) provavelmente esta ocorrendo um estouro de armazenamento de dados.


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]

    quinta-feira, 25 de julho de 2013 14:33
    Moderador