Uma das maiores necessidades dos sistemas é o armazenamento de informações em um banco de dados. Sistemas confeccionados com a linguagem Python não é diferente.
Criamos esse post com o objetivo de oferecer um tutorial definitivo para você programador que necessita utilizar o banco de dados MySQL para armazenar informações.
Utilizaremos a biblioteca pymysql para trabalhar com o MySQL.
Criando o banco de dados
Como exemplo, iremos criar um banco de dados para gravar informações sobre carros em uma garagem.
Primeiramente, iremos criar um banco de dados:
CREATE DATABASE garagem;
Agora iremos criar uma tabela para cadastrar os carros:
CREATE TABLE carros ( id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY NOT NULL, placa VARCHAR(10) NOT NULL, nome_dono VARCHAR(20) NOT NULL );
Pronto. Já temos um banco de dados com uma tabela pronta para receber os dados.
Inserindo dados
Vamos inserir um carro no banco de dados. Veja como fazemos:
# Importamos a biblioteca: import pymysql # Abrimos uma conexão com o banco de dados: conexao = pymysql.connect(db='garagem', user='root', passwd='') # Cria um cursor: cursor = conexao.cursor() # Executa o comando: cursor.execute("INSERT INTO carros (placa, nome_dono) VALUES ('ABC-1234', 'Joao')") # Efetua um commit no banco de dados. # Por padrão, não é efetuado commit automaticamente. Você deve commitar para salvar # suas alterações. conexao.commit() # Finaliza a conexão conexao.close()
Veja como ficou no banco de dados:
Atualizando dados
O dono do carro mudou. E agora? Atualizamos no banco de dados. Veja como ficou:
# Importamos a biblioteca: import pymysql # Abrimos uma conexão com o banco de dados: conexao = pymysql.connect(db='garagem', user='root', passwd='') # Cria um cursor: cursor = conexao.cursor() # Executa o comando: cursor.execute("UPDATE carros SET nome_dono = 'Joaquim' WHERE placa = 'ABC-1234'") # Efetua um commit no banco de dados. # Por padrão, não é efetuado commit automaticamente. Você deve commitar para salvar # suas alterações. conexao.commit() # Finaliza a conexão conexao.close()
Veja a alteração no banco de dados:
Buscando dados
Aconteceu um acidente na garagem. O veículo de placa ABC-1234 bateu no fusqueti da dona Maria. Quem é o dono dele? É só fazer um select no banco de dados. Veja como fica o código:
# Importamos a biblioteca: import pymysql # Abrimos uma conexão com o banco de dados: conexao = pymysql.connect(db='garagem', user='root', passwd='') # Cria um cursor: cursor = conexao.cursor() # Executa o comando: cursor.execute("SELECT nome_dono FROM carros WHERE placa = 'ABC-1234'") # Recupera o resultado: resultado = cursor.fetchall() # Mostra o resultado: print('Dono do carro: ') for linha in resultado : print(linha) # Finaliza a conexão conexao.close()
Veja como ficou o console:
Deletando dados
Com o acidente, vamos banir o Joaquim da garagem. Veja como fazemos:
# Importamos a biblioteca: import pymysql # Abrimos uma conexão com o banco de dados: conexao = pymysql.connect(db='garagem', user='root', passwd='') # Cria um cursor: cursor = conexao.cursor() # Executa o comando: cursor.execute("DELETE FROM carros WHERE placa = 'ABC-1234'") # Efetua um commit no banco de dados. # Por padrão, não é efetuado commit automaticamente. Você deve commitar para salvar # suas alterações. conexao.commit() # Finaliza a conexão conexao.close()
Veja que o Sr. Joaquim não está mais na garagem e está parando o carro na rua:
Tem alguma dúvida? Pergunte nos comentários! Será um prazer respondê-lo.