Pra mim está dando esse erro:
Error Code: 1406. Data too long for column 'vProduto' at row 1
O que está errado? Fiz a Stored Procedure igual do Instrutor
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Pra mim está dando esse erro:
Error Code: 1406. Data too long for column 'vProduto' at row 1
O que está errado? Fiz a Stored Procedure igual do Instrutor
Tentei resolver esse problema e a solução que eu encontrei foi tirar o número 1 como default da variável vContador, não sei se está correto, mas não deu mais nenhum erro.
```CREATE DEFINER=`root`@`localhost` PROCEDURE `p_inserir_venda`(vData DATE, max_itens INT, max_quantidade INT)
BEGIN
DECLARE vCliente VARCHAR(11);
DECLARE vProduto VARCHAR(10);
DECLARE vVendedor VARCHAR(5);
DECLARE vQuantidade INT;
DECLARE vPreco FLOAT;
DECLARE vItens INT;
DECLARE vNumero_Nota INT;
DECLARE vContador INT;
SELECT MAX(NUMERO) + 1 INTO vNumero_Nota FROM notas_fiscais;
SET vCliente = f_cliente_aleatorio();
SET vVendedor = f_vendedor_aleatorio();
INSERT INTO notas_fiscais(CPF, MATRICULA, DATA_VENDA, NUMERO, IMPOSTO)
VALUES(vCliente, vVendedor, vData, vNumero_Nota, 0.18);
SET vItens = f_numero_aleatorio(1, max_itens);
WHILE vContador <= vItens
DO
SET vProduto = f_produto_aleatorio();
SET vQuantidade = f_numero_aleatorio(10, max_quantidade);
SELECT PRECO_DE_LISTA INTO vPreco FROM tabela_de_produtos WHERE CODIGO_DO_PRODUTO = vProduto;
INSERT INTO itens_notas_fiscais(NUMERO, CODIGO_DO_PRODUTO, QUANTIDADE, PRECO)
VALUES(vNumero_nota, vProduto, vQuantidade, vPreco);
SET vContador = vContador + 1;
END WHILE;
END
Olá, Patrícia, tudo bem?
O erro ocorre porque os dados de entrada eram muito longos para a coluna em uma tabela de banco de dados.
Definimos 'vProduto' como VARCHAR(5) . Isso significa que o valor inserido nessa coluna não deve ter mais de 5 caracteres. Se o valor que você está tentando inserir tem mais de 5 caracteres, você encontrará o erro 1406.
Para resolver esse problema, você pode verificar o valor que está tentando inserir na coluna 'vProduto'.
No entanto, notei que conseguiu resolver o problema. Que bom! Fico feliz que chegou a uma solução.
Caso surja alguma dúvida, é só compartilhar no fórum.
Abraços e até mais!