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

Erro no comando pd.read_sql(query, engine)

Vi que teve pessoas com mesmo erro, porém fazendo o que explicaram na solução ainda assim sigo com o erro e estava tudo certo até aqui, não sei se porque no video anterior a gente modificou um pouco colocando o inspect que não havia no video já que foi uma atualização do curso depois do vídeo. aparece esse erro:

pd.read_sql(query, engine)

OperationalError Traceback (most recent call last) /usr/local/lib/python3.7/dist-packages/sqlalchemy/engine/base.py in executecontext(self, dialect, constructor, statement, parameters, execution_options, args, *kw) 1802 self.dialect.do_execute( -> 1803 cursor, statement, parameters, context 1804 )

13 frames OperationalError: no such table: matriculas

The above exception was the direct cause of the following exception:

OperationalError Traceback (most recent call last) in execute(self, statement, multiparams, *params)

/usr/local/lib/python3.7/dist-packages/sqlalchemy/engine/default.py in do_execute(self, cursor, statement, parameters, context) 730 731 def do_execute(self, cursor, statement, parameters, context=None): --> 732 cursor.execute(statement, parameters) 733 734 def do_execute_no_params(self, cursor, statement, context=None):

OperationalError: (sqlite3.OperationalError) no such table: matriculas [SQL: select * from matriculas where quantidade_de_alunos < 20] (Background on this error at: https://sqlalche.me/e/14/e3q8)

2 respostas
solução!

Roseane, boa tarde!

Eu tive o mesmo erro e percebi que nas aulas passadas, quando o professor estava criando o dataframe 'matriculas', foi renomeado a coluna de 'id_aluno' para 'Quantidade de alunos', conforme abaixo:

matriculas.groupby('id_curso').count().join(cursos['nome_do_curso']).rename(columns={'id_aluno' : 'Quantidade de alunos'})

Porém, nessa parte de uso de querys no SQL, ele está utilizando o nome da coluna como 'quantidade_de_alunos'. Então eu modifiquei o nome da coluna no dataframe 'matriculas' para o nome que está usando nessa aula, conforme abaixo:

matriculas.groupby('id_curso').count().join(cursos['nome_do_curso']).rename(columns={'id_aluno' : 'quantidade_de_alunos'})

Também fiz a alteração toda vez que aparecia novamente no código.

Boa tarde Mathias sim eu acabei refazendo as aulas 2 e 3 e consegui corrigir, mas deu um super trabalho, meu Deus. Professores precisam se atenta a isso né, porque sofri muito para corrigir tive que rever muitos vídeos pra conseguir finalizar o curso. Obrigada pela atenção