Bóson Treinamentos em Ciência e Tecnologia

Como efetuar consultas SQL simples no MySQL com Python

Consulta a banco de dados MySQL com Python

Consultas SQL simples no MySQL com Python

Na lição passada mostrei como criar um script em Python que se conecta a um banco de dados MySQL, por meio do uso do módulo mysql-connector-python, e realizamos um teste simples de conexão com um banco de nome db_MeusLivros. O que faremos agora é realizar uma consulta SQL a uma das tabelas desse banco, retornando os dados armazenados. Para tal continuaremos a empregar o módulo mysql.connector.

Código

No código a seguir, logo após criar um objeto de conexão (con), criamos uma variável chamada consulta_sql, que irá armazenar a declaração SQL a ser executada no banco de dados (a consulta), e então criamos um objeto cursor para realizar a consulta desejada. Passamos a variável SQL para o cursor logo após.

Com o método fetchall() retornamos todas as linhas obtidas na consulta para uma variável (array) que batizamos como linhas, e então podemos iterar por essa variável para ler os dados de cada coluna presente no resultado da consulta, linha a linha.

A propriedade rowcount mostra o número total de linhas retornadas no resultset.

Finalmente, fechamos o cursor e a conexão ao banco de dados. Veja o código a seguir:

import mysql.connector
from mysql.connector import Error

try:
    con = mysql.connector.connect(host='localhost',database='db_MeusLivros',user='root',password='abc123**')

    consulta_sql = "select * from tbl_autores"
    cursor = con.cursor()
    cursor.execute(consulta_sql)
    linhas = cursor.fetchall()
    print("Número total de registros retornados: ", cursor.rowcount)

    print("\nMostrando os autores cadastrados")
    for linha in linhas:
        print("Id:", linha[0])
        print("Nome:", linha[1])
        print("Sobrenome:", linha[2], "\n")
except Error as e:
    print("Erro ao acessar tabela MySQL", e)
finally:
    if (con.is_connected()):
        con.close()
        cursor.close()
        print("Conexão ao MySQL encerrada")

Resultado:

(resultado truncado)

É isso aí! Consulta SQL realizada com sucesso em uma tabela no MySQL, a partir de um script escrito em Python.

No próximo artigo prosseguimos com a execução declarações SQL no banco por meio desta conexão, incluindo a inserção de linhas, consultas mais elaboradas (incluindo INNER JOIN) e outras operações de CRUD comuns.

Até!

Sair da versão mobile