Solucionado (ver solução)
Solucionado
(ver solução)
6
respostas

Problemas para popular banco. ERROR 1146(42S02)

Estou tendo problemas para importar o arquivo cap2.sql. Eu acesso a pasta em que está o arquivo e uso o comando indicado:

mysql -u root -p controle_compras<cap2.sql

E então quando pressiono enter após digitar a senha, aparece o seguinte erro:

ERROR 1146 (42S02) at line 1: Table 'controle_compras.COMPRAS' doesn't exist

Já removi o banco de dados pelo comando drop e criei de novo sem caracteres especiais mas mesmo assim não surtiu efeito.

6 respostas

No seu banco existe essa tabela controle_compras.COMPRAS?

Pois é, foi a primeira coisa que suspeitei. Sendo assim, usei o comando show database e la só me mostra o banco controle_compras. Entretanto, quando uso o comando para importar o arquivo cap2.sql, ele retorna essa mensagem....

Olha só:

/Downloads# mysql -u root -p controle_compras<cap2.sql
Enter password: 
ERROR 1146 (42S02) at line 1: Table 'controle_compras.COMPRAS' doesn't exist
solução!

Abre o arquivo e cria essa tabela Compras e depois tenta importar o arquivo, pois pelo que vi esse arquivo só tem os inserts dessa tabela.

Esta tabela já está criada...

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| controle_compras   |
| mysql              |
| performance_schema |
+--------------------+
4 rows in set (0.00 sec)

mysql> use controle_compras
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> desc compras;
+-------------+--------------+------+-----+---------+----------------+
| Field       | Type         | Null | Key | Default | Extra          |
+-------------+--------------+------+-----+---------+----------------+
| id          | int(11)      | NO   | PRI | NULL    | auto_increment |
| valor       | double       | YES  |     | NULL    |                |
| date        | date         | YES  |     | NULL    |                |
| detalhes    | varchar(255) | YES  |     | NULL    |                |
| observacoes | varchar(255) | YES  |     | NULL    |                |
| recebido    | tinyint(1)   | YES  |     | NULL    |                |
+-------------+--------------+------+-----+---------+----------------+
6 rows in set (0.00 sec)

O erro persiste mesmo assim? já tentou dar um use database e depois importar esse arquivo?

Resolvi o problema cara. Criei a tabela com o nome em caixa alta, como estava no arquivo cap2.sql e coloquei os campos na ordem em que estava no arquivo e funcionou! Não tenho uma explicação técnica para isso maaaaaaas funcionou haahah Obrigado pela prestatividade Diego o/