Ir para conteúdo
Fórum Script Brasil
  • 0

Duvida em utilização de variaveis dentro de um if


Maurílio Martins

Pergunta

Criei o código mas esta apresentando o seguinte erro:

"Error Code: 1427. For float(M,D), double(M,D) or decimal(M,D), M must be >= D (column '(null)')."

DELIMITER //
CREATE FUNCTION calcula_imposto(salario decimal(10,2))
returns decimal(8,20)
BEGIN
    DECLARE valor_imp dec(8,2);
    DECLARE vall DEC(8,2);
    IF salario < 1000.00 THEN
        SET valor_imp = 0.00;
    ELSEIF salario < 2000.00 then
        SET valor_imp = 0.15;
    ELSE 
        SET valor_imp = 0.27;
    END IF;
    SET vall = valor_imp * salario;
    RETURN vall;
END//

Poderia fazer de outra forma como na hora do SET VALOR_IMP = X já multiplicar pelo salario. Mas gostaria de saber o porque não funcionou...

AH RAPAIZ...q jumento...coloquei returns decimal (8,20)

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

O erro está dizendo que, ao declarar os tipos de dados Float, Decimal e Double, o valor de "M" deve ser maior ou igual a "D". Exemplo: 8,20 (M = 8, D = 20). "8" não é maior ou igual a 20.

O que acontece? Quando você declara um DECIMAL(7,4), o número poderá ser no máximo 999,9999.

Significa que o número poderá ter 7 dígitos, sendo que 4 serão reservados as casas decimais (após a vírgula), e o restante, 3, irão compor a parte inteira (antes da vírgula).

Obs.: Vírgula no caso de uso no Brasil, pois o padrão do banco é armazenar com "ponto". Os estadunidenses também usam a formatação de números fracionados diferentemente de como aprendemos. Exemplo: 5,763,863.83

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...