Article image
Carlos Franco
Carlos Franco11/01/2024 13:28
Compartilhe

Python consultando MySQL

  • #Python

Se você estiver trabalhando com um banco de dados MySQL em Python, as instruções relevantes geralmente incluirão a utilização da biblioteca mysql-connector-python ou outra similar. Algumas instruções comumente usadas para interagir com um banco de dados MySQL são:

   import mysql.connector (para importar a biblioteca necessária)

   try e except (para tratamento de exceções durante operações no banco de dados)

   open (pode ser usado para abrir uma conexão com o banco de dados)

Na prática, considere que temos um banco de dados que gerencia um estacionamento, e desejamos saber qua valor será cobrado do veículo cuja placa é SHQ-0605. A cobrança é calculada da seguinte forma: 2 reais iniciais. a partir de 1 real por cada meia hora. Considere que a hora de entrada do veículo foi 10h05 e a saída foi as 15h33. O nome do host é "comunismo", o usuário é "marx", a senha é "pobrecomunista", e a base de dados é "cad_veiculo"

Nesse exemplo, um script básico de conexão e execução de consulta em um banco de dados MySQL pode parecer com isso:

import mysql.connector
from datetime import datetime, timedelta

# Configurações do banco de dados
configuracoes_banco = {
  'host': 'comunismo',
  'user': 'marx',
  'password': 'pobrecomunista',
  'database': 'cad_veiculo'
}

# Placa do veículo
placa_veiculo = 'SHQ-0605'

try:
  # Conectar ao banco de dados
  conexao = mysql.connector.connect(**configuracoes_banco)

  # Criar um cursor para executar consultas
  cursor = conexao.cursor()

  try:
      # Executar uma consulta para obter informações do veículo
      consulta = f"SELECT hora_entrada, hora_saida FROM tabela_veiculos WHERE placa = '{placa_veiculo}'"
      cursor.execute(consulta)

      # Verificar se o veículo existe no banco de dados
      veiculo = cursor.fetchone()

      if veiculo:
          # Recuperar as horas de entrada e saída do resultado da consulta
          hora_entrada, hora_saida = veiculo

          # Calcular o tempo de estacionamento em horas
          tempo_estacionado = hora_saida - hora_entrada
          tempo_em_horas = tempo_estacionado.total_seconds() / 3600

          # Calcular o valor a ser cobrado
          valor_inicial = 2.0
          valor_por_hora = 1.0
          valor_a_pagar = valor_inicial + max(0, tempo_em_horas - 0.5) * valor_por_hora

          print(f"Informações do veículo com a placa {placa_veiculo}:")
          print(f"Hora de entrada: {hora_entrada}")
          print(f"Hora de saída: {hora_saida}")
          print(f"Valor a ser cobrado: R${valor_a_pagar:.2f}")

      else:
          print(f"Veículo com a placa {placa_veiculo} não encontrado no banco de dados.")

  except Exception as e:
      print(f"Erro ao executar consulta: {e}")

finally:
  # Fechar o cursor e a conexão
  cursor.close()
  conexao.close()



Além das documentações oficiais, podem ser úteis:

   Tutoriais Online:

   DIO.me:

      https://web.dio.me/play?search=mysql

      https://web.dio.me/track/formacao-python-developer

   Livros:

       "Python Crash Course" de Eric Matthes.

       "Learning MySQL" de Seyed M.M. (Saied) Tahaghoghi e Hugh E. Williams.

Compartilhe
Comentários (1)

PD

Pedro Datteri - 11/01/2024 13:52

Sensacional!