O erro "Cursor is not connected" ocorre quando você tenta executar uma consulta usando um cursor que não está conectado ao banco de dados. Isso pode acontecer se a conexão com o banco de dados não tiver sido estabelecida corretamente antes de chamar as funções.
Certifique-se de que você está estabelecendo a conexão com o banco de dados antes de chamar as funções que dependem dessa conexão. Você pode fazer isso abrindo a conexão antes de chamar as funções e fechando-a após concluir as operações.
Aqui está um exemplo simplificado de como você pode organizar seu código:
import mysql.connector
# Função para estabelecer a conexão com o banco de dados
def conectar():
conexao = mysql.connector.connect(
host="seu_host",
user="seu_usuario",
password="sua_senha",
database="seu_banco_de_dados"
)
return conexao
# Funções que dependem da conexão com o banco de dados
def ler_qrcode():
conexao = conectar()
cursor = conexao.cursor()
comando = "SELECT * FROM tabela"
cursor.execute(comando)
# Restante do código...
cursor.close()
conexao.close()
# Chamada da função
ler_qrcode()
Certifique-se de adaptar o código acima com as configurações corretas do seu banco de dados. Dessa forma, você estará estabelecendo a conexão com o banco de dados antes de chamar as funções que executam consultas SQL.