1
resposta

'Engine' object has no attribute 'cursor'

Estou com o seguinte erro ao tentar executar

Pensei que fiz algo errado mas ao baixar o arquivo do projeto final pelo GitHub também deu erro.

AttributeError                            Traceback (most recent call last)
<ipython-input-16-0bee096334af> in <cell line: 1>()
----> 1 dados.to_sql('clientes', conn, index=False)
------------------------------------------------------------------------------------------------------------------------
2670             raise TypeError("Query must be a string unless using sqlalchemy.")    
2671         args = [] if params is None else [params] -> 
2672         cur = self.con.cursor()    
2673         try:    
2674             cur.execute(sql, *args)  
AttributeError: 'Engine' object has no attribute 'cursor'
1 resposta

Oi Rubens, tudo bem?

Esse erro foi causado por uma atualização no Pandas 2.2.0, que trouxe mudanças na forma como o Pandas interage com objetos Engine do SQLAlchemy em funções como pd.read_sql e pd.to_sql. Para resolver, você pode fazer o downgrade do Pandas para uma versão anterior. Antes da célula que causou o erro, execute o código abaixo:

pip install "pandas<2.2.0"

Depois, reinicie a sessão no Google Colaboratory e execute os códigos novamente:

  1. No menu de ferramentas, clique em "Ambientes de execução";
  2. Selecione "Reiniciar sessão e executar tudo".

Para auxiliar, veja a imagem abaixo.

Reiniciar sessão e executar tudo no Google Colaboratory

Espero ter ajudado.

Qualquer dúvida, não hesite em compartilhar no fórum.

Abraços!

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