Solucionado (ver solução)

Importante

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!

Solucionado
(ver solução)
3
respostas

Problema no código

INSERT INTO tabelaclientes
(id_cliente,
nome_cliente,
informacoes_de_contato,
Endereço_Cliente)
VALUES
('1', 'Ana Silva', 'ana.silva@email.com', 'rua flores - casa 1');

Ao rodar esse código consta esse tipo de erro : SQLITE_ERROR: sqlite3 result code 1: table tabelaclientes has no column named Endereço_Cliente, porem esta escrito conforme a professora faz ao decorrer da aula.

3 respostas
solução!

Olá, Victor, como vai?

A mensagem indica que o SQLite encontrou a tabela tabelaclientes, mas não localizou uma coluna chamada Endereço_Cliente. Isso significa que o comando INSERT está sendo executado sobre uma estrutura de tabela diferente da esperada. Vale lembrar que o SQLite utiliza exatamente os nomes definidos no momento da criação da tabela, incluindo acentos, maiúsculas e minúsculas quando o identificador é delimitado.

Um bom caminho é conferir como a tabela foi criada. Se ela foi definida com um nome como Endereco_Cliente, sem cedilha, e no INSERT você utilizou Endereço_Cliente, o banco entenderá que são colunas diferentes. Você também pode executar o comando PRAGMA table_info(tabelaclientes); para listar todas as colunas existentes e comparar com o código que está inserindo os dados. Assim fica mais fácil identificar qualquer diferença de nomenclatura.

Conte com o fórum sempre que precisar. Estamos à disposição para ajudar.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado

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

Mesmo com as correçoes no código, o problema ainda segue

Oi, Victor.

Agora o sqlite está indicando que o valor informado já existe na tabela. Ou seja, a coluna foi encontrada e o comando INSERT está sendo executado, mas a inserção é interrompida porque há outro registro utilizando o mesmo identificador.

Você pode verificar os registros da tabela executando SELECT * FROM tabelaclientes;. Se o registro já existir, basta utilizar outro identificador, como 2, ou remover o registro anterior com DELETE FROM tabelaclientes WHERE ID_Clientes = 1;.