3
respostas

[Dúvida] ERRO TEST

pq estou com esse erro no livraria.sqlite, e outra nao consigo abrir a pasta da livraria.sqlite no vscode ? "O arquivo não é exibido no editor de texto porque é binário ou usa uma codificação de texto não suportada."

[+] Running 1/0 ✔ Container livraria_api_test Created 0.0s Attaching to livraria_api_test livraria_api_test | livraria_api_test | > api-js-local@1.0.0 test livraria_api_test | > npm rebuild && npm run drop-test-db && export NODE_ENV=test && npm run prepare-test-db && npm run test:mocha && npm run test:jest livraria_api_test | livraria_api_test | rebuilt dependencies successfully livraria_api_test | livraria_api_test | > api-js-local@1.0.0 drop-test-db livraria_api_test | > rm -f ./src/test/livraria.sqlite livraria_api_test | livraria_api_test | livraria_api_test | > api-js-local@1.0.0 prepare-test-db livraria_api_test | > sqlite3 ./src/test/livraria.sqlite < populate.sql livraria_api_test | livraria_api_test | Parse error near line 9: no such column: Júlio Cortázar livraria_api_test | ("Machado de Assis", "brasileira"), ("Júlio Cortázar", "argenti livraria_api_test | error here ---^ livraria_api_test | Parse error near line 24: no such column: Ateliê livraria_api_test | ("Aleph", "São Paulo", "al@al.com"), ("Ateliê", "São Paulo", "a@ livraria_api_test | error here ---^ livraria_api_test | Parse error near line 42: no such column: Memórias Póstumas de Brás Cubas livraria_api_test | 0, 2, 2), ("Os Despossuídos", 300, 2, 3), ("Memórias Póstumas de Brá livraria_api_test | error here ---^ livraria_api_test exited with code 1

3 respostas

E aí, Renan

Vamos lá, o erro que você está recebendo no SQLite está dizendo que tem algo errado com a estrutura do seu banco de dados ou com o arquivo populate.sql.

As mensagens de erro Parse error near line X: no such column: Y indicam que, em algum lugar do seu arquivo populate.sql, você está tentando inserir ou referenciar uma coluna que não existe na tabela correspondente. Por exemplo, parece que há referências a colunas como "Júlio Cortázar" ou "Ateliê" que não foram definidas anteriormente.

Você precisa revisar o arquivo populate.sql e garantir que:

  1. Todas as tabelas estejam corretamente definidas com as colunas correspondentes.
  2. Ao inserir dados nas tabelas, as colunas referenciadas existam de fato.

Quanto ao problema no VSCode, esse aviso "O arquivo não é exibido no editor de texto porque é binário ou usa uma codificação de texto não suportada" geralmente aparece quando o VSCode não consegue interpretar o conteúdo do arquivo, muitas vezes por ser binário ou por usar uma codificação específica. No seu caso, como é um arquivo SQLite, pode ser tratado como binário, e é por isso que você não consegue abri-lo diretamente no editor. Você pode usar ferramentas ou extensões específicas para visualizar o conteúdo de um banco de dados SQLite ou usar comandos para inspecionar o banco.

Espero que isso ajude a esclarecer as coisas!

Então mas eu nao consigo achar esse problema, pra mim está tudo correto a models e o populatesql!

se quiser dar uma olhada ,

https://github.com/RenanOshiroDev/2969-workflow-dev-inicial

Oi Renan, um teste que você pode fazer é apagar o livraria.sqlite atual (o que está dentro de /test!) e criar um novo arquivo no lugar, com o mesmo nome. É importante que tenha exatamente o mesmo nome para que os scripts encontrem o arquivo.

Quanto a não conseguir visualizar o conteúdo de arquivo .sqlite no VSC, é normal. Para conseguir interagir com o banco (ver as tabelas e etc) é preciso usar comandos de terminal específicos do sqlite, ou ferramentas desktop que gerenciam bancos SQL como o dbeaver.

Caso queira, você pode conferir este artigo sobre SQLite com o tutorial de instalação do driver para Windows e como consultar tabelas em um arquivo já existente através da ferramenta de linha de comando.

Espero ter ajudado!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!