3
respostas

Problema na Importação

Galera, Minha importação(arquivo do excel - Nota | disponibilizada para aula 7 do Capitulo 3) apresentou problema durante o carregamento. Primeiro, notei que na coluna comissão os dados preenchidos na tabela possuíam ',' substituir por '.' e logo após fiz a importação, que gerou o erro abaixo:

Starting... Prepare Import... Prepare Import done Import data file....

  • Prepare Import

Traceback (most recent call last): File "C:\Program Files\MySQL\MySQL Workbench 8.0\workbench\wizard_progress_page_widget.py", line 197, in thread_work self.func() File "C:\Program Files\MySQL\MySQL Workbench 8.0\modules\sqlide_power_import_wizard.py", line 131, in start_import retval = self.module.start(self.stop) File "C:\Program Files\MySQL\MySQL Workbench 8.0\modules\sqlide_power_import_export_be.py", line 300, in start ret = self.start_import() File "C:\Program Files\MySQL\MySQL Workbench 8.0\modules\sqlide_power_import_export_be.py", line 430, in start_import self._editor.executeManagementCommand(query, 1) grt.DBError: ("Column 'MATRICULA' specified twice", 1110) ERROR: Import data file: ("Column 'MATRICULA' specified twice", 1110) Failed

create database vendas_sucos;

USE VENDAS_SUCOS;

create table PRODUTO(
CODIGO_PRODUTO INT auto_increment NOT NULL,
DESCRITOR VARCHAR(100) NULL,
SABOR VARCHAR(50) NULL,
TAMANHO VARCHAR(50) NULL,
EMBALAGEM VARCHAR(50) NULL,
PRECO_LISTA FLOAT NULL,
primary key (CODIGO_PRODUTO));

create table CLIENTE(
CPF VARCHAR(11),
NOME VARCHAR(100),
ENDERECO_1 VARCHAR(150),
ENDERECO_2 VARCHAR(150),
BAIRRO VARCHAR(50),
CIDADE VARCHAR(50),
ESTADO CHAR(2),
CEP VARCHAR(8),
DATA_NASCIMENTO DATE,
IDADE INT,
SEXO  CHAR(1),
LIMITE_CREDITO FLOAT,
VOLUME_COMPRA INT,
PRIMEIRA_COMPRA BOOLEAN,
PRIMARY KEY(CPF));

CREATE TABLE VENDEDORES(
MATRICULA_VENDEDOR INT auto_increment,
NOME VARCHAR(100),
BAIRRO VARCHAR(100),
COMISSAO FLOAT,
DATA_ADMISSAO DATE,
FERIAS BOOLEAN,
PRIMARY KEY (MATRICULA_VENDEDOR));

CREATE TABLE NOTA(
ID_NOTA INT auto_increment,
DATA_VENDA DATE,
CPF VARCHAR(11),
MATRICULA  INT,
IMPOSTO FLOAT,
PRIMARY KEY (ID_NOTA),
CONSTRAINT FK_CLIENTE FOREIGN KEY (CPF) REFERENCES CLIENTE(CPF),
CONSTRAINT FK_VENDEDORES FOREIGN KEY (MATRICULA) REFERENCES VENDEDORES(MATRICULA_VENDEDOR)
);

CREATE TABLE ITENS_NOTA (
ID_ITEMNOTA INT  NOT NULL,
CODIGO_PRODUTO INT NOT NULL,
QUANTIDADE INT,
PRECO FLOAT,
CONSTRAINT FK_IDITEMNOTA FOREIGN KEY(ID_ITEMNOTA) REFERENCES NOTA(ID_NOTA),
CONSTRAINT FK_IDPRODUTO FOREIGN KEY(CODIGO_PRODUTO) REFERENCES PRODUTO(CODIGO_PRODUTO));


INSERT INTO cliente
(CPF,NOME,ENDERECO_1,BAIRRO,CIDADE,ESTADO,CEP,DATA_NASCIMENTO,IDADE,SEXO,LIMITE_CREDITO,VOLUME_COMPRA,PRIMEIRA_COMPRA)
VALUES 
('1471156710','Érica Carvalho','R. Iriquitia','Jardins','São Paulo','SP','80012212','19900901',27,'F',170000,24500,0),
('19290992743','Fernando Cavalcante','R. Dois de Fevereiro','Água Santa','Rio de Janeiro','RJ','22000000','20000212',18,'M',100000,20000,1),
('2600586709','César Teixeira','Rua Conde de Bonfim','Tijuca','Rio de Janeiro','RJ','22020001','20000312',18,'M',120000,22000,0);


insert into produto()
select codigo_do_produto as codigo_produto, nome_do_produto as descritor,sabor,tamanho,embalagem,preco_de_lista as preco_lista
from sucos_vendas.tabela_de_produtos
where CODIGO_DO_PRODUTO not in (select codigo_produto from produto);

insert into cliente ()
select CPF, NOME, ENDERECO_1,ENDERECO_2,BAIRRO,CIDADE,ESTADO,CEP,DATA_DE_NASCIMENTO AS DATA_NASCIMENTO,IDADE,SEXO,LIMITE_DE_CREDITO AS LIMITE_CREDITO,VOLUME_DE_COMPRA AS VOLUME_COMPRA,PRIMEIRA_COMPRA
FROM SUCOS_VENDAS.TABELA_DE_CLIENTES
WHERE CPF NOT IN( SELECT CPF FROM CLIENTE);

INSERT INTO vendedores()
select MATRICULA as matricula_vendedor,NOME,BAIRRO,PERCENTUAL_COMISSAO as comissao,DATA_ADMISSAO,DE_FERIAS as ferias FROM sucos_vendas.tabela_de_vendedores
where matricula not in (select  matricula_vendedor from vendedores);

insert into nota ()
select NUMERO AS ID_NOTA,DATA_VENDA,CPF, MATRICULA, IMPOSTO FROM sucos_vendas.notas_fiscais
where MATRICULA NOT IN ( SELECT ID_NOTA FROM NOTA);

INSERT INTO ITENS_NOTA ()
SELECT NUMERO AS ID_ITEMNOTA, CODIGO_DO_PRODUTO AS CODIGO_PRODUTO,QUANTIDADE,PRECO FROM sucos_vendas.itens_notas_fiscais
where NUMERO NOT IN ( SELECT ID_ITEMNOTA FROM ITENS_NOTA);
3 respostas

Galera, encontrei o motivo do erro! Durante a importação a coluna 'matricula' estava importando em duas colunas do Excel (Matricula e Numero), conforme print. Após a correções realizadas, a importação ocorreu corretamente!

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Olá, Igor, tudo bem?

Fico feliz em saber que você conseguiu resolver o seu problema e compartilhou a solução aqui com a gente, isso poderá ajudar outros alunos que passem pelo mesmo problema :)

Bons estudos!

Olá Danielle, vocês são de vital importância para o meu crescimento! Agradeço muito pela atenção, dedicação e paciência que você e a equipe da Alura com esse iniciante e suas dúvidas.