CRUD em Python – Python e MySQL

Na aula de hoje eu quero te mostrar o que é CRUD em Python e como utilizar esses comandos para alterar o banco de dados!

CRUD em Python é o conjunto das quatro operações básicas em banco de dados: Create (criar), Read (ler), Update (atualizar) e Delete (excluir). Conectando o Python ao MySQL com a biblioteca mysql-connector-python, esses comandos viram os SQL INSERT, SELECT, UPDATE e DELETE executados direto do seu código.

Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo ou acesse o nosso canal do YouTube!

O que você aprende neste vídeo

Resposta rápida: A aula ensina a fazer um CRUD completo em Python contra um banco MySQL real. Você aprende a instalar o driver com pip, abrir a conexão com host, usuário, senha e banco, criar o cursor, executar os comandos INSERT, SELECT, UPDATE e DELETE, aplicar commit() no que altera dados e ler o resultado com fetchall().

Neste vídeo (30 min):

  • 2:00 - Instalação do driver do MySQL com pip install mysql-connector-python
  • 4:00 - As quatro informações de qualquer conexão, host, usuário, senha e nome do banco
  • 7:00 - Criação da tabela de vendas no MySQL, com id em auto increment, nome do produto e valor
  • 9:00 - Conexão aberta no Python com mysql.connector.connect() e os quatro parâmetros
  • 10:00 - Cursor criado a partir da conexão para executar os comandos, e o fechamento dos dois no fim
  • 13:00 - Comando SQL montado como texto no Python, com aspas em volta dos valores de texto
  • 14:00 - commit() no comando que altera o banco e fetchall() no comando que lê
  • 15:00 - Create com INSERT INTO, informando as colunas na mesma ordem dos valores
  • 22:00 - Read com SELECT devolvendo as linhas como uma lista de tuplas
  • 24:00 - Update com UPDATE, SET e a condição em WHERE
  • 27:00 - Delete apagando pela condição, pelo nome do produto, pelo id ou pelo valor
  • 28:00 - Cuidado com a permissão do usuário do banco antes de rodar comando que apaga dado

Trechos do vídeo:

  • CRUD é a sigla das quatro operações básicas de banco de dados, Create, Read, Update e Delete.
  • No Python, INSERT, UPDATE e DELETE só valem no banco depois do commit().
  • O SELECT não pede commit, o resultado dele se lê com fetchall() e vem como lista de tuplas.
  • Texto dentro do comando SQL vai entre aspas, mesmo quando o valor chega por uma variável do Python.

Para receber por e-mail o(s) arquivo(s) utilizados na aula, preencha:

O que é CRUD em Python

Você já sabe o que é o CRUD que muitas pessoas falam por aí? Hoje eu vou te mostrar o que é isso e vou te mostrar um exemplo para que você entenda melhor!

Nessa aula nós vamos utilizar o MySQL como banco de dados, então vamos diferenciar um pouco do que já fizemos aqui no blog!

Ícone PythonPython Impressionador

Você vai aprender a linguagem de Programação que mais cresce no Mundo para fazer automações incríveis, desenvolver sites, fazer análises de dados, trabalhar com Ciência de Dados, Inteligência Artificial, mesmo que você nunca tenha tido nenhum contato com Programação na vida.

Começar agoraSeta para a direita
Fundo PythonTelas Python
Luz Python

Python e MySQL

Antes de entrar nos exemplos propriamente é importante que você saiba o que é esse tal de CRUD, na verdade é uma sigla para Create Read Update Delete, ou seja, vamos ter essas 4 operações de criar, ler, atualizar e deletar informações de um banco de dados.

Como nós vamos utilizar o MySQL para essa aula é importante que você já tenha o programa instalado no seu computador.

Então caso você ainda não tenha instalado e não saiba como fazer isso basta clicar aqui que temos uma publicação ensinando o passo a passo.

Além disso nós vamos precisar instalar o driver do MySQL, mas isso podemos instalar diretamente no terminal do PyCharm.

Para isso basta escrever pip install mysql-connector-python. Com isso vamos ter o download do driver MySQL (para integração entre o banco de dados) e ainda vai instalar a biblioteca que você precisa do MySQL para fazer essa integração com Python.

Para que possamos fazer os nossos procedimentos vamos importar a biblioteca mysql.conector e vamos abrir o MySQL Workbench no computador.

Abrindo o MySQL Workbench
Abrindo o MySQL Workbench

É importante lembrar que assim que entre no MySQL Workbench você precisar colocar a sua senha. Isso é importante, pois vamos precisar disso para fazer a conexão com o Python.

Vamos ter que passar essas informações de login e senha para o Python para que seja possível fazer a conexão.

Dentro do programa vamos clicar no botão Create a new Schema. Isso é para criar o nosso banco de dados, depois vamos dar um nome para esse banco, que nesse caso será bdyoutube.

Criando um banco de dados
Criando um banco de dados

Depois basta clicar em Apply 2 vezes e depois finish. Com isso o banco de dados já vai estar criado!

Visualizando o banco de dados sem nenhuma tabela
Visualizando o banco de dados sem nenhuma tabela

Depois disso podemos criar uma tabela para poder iniciar.

CRUD em Python
Criando uma tabela

Feito isso podemos ajustar a tabela com as informações abaixo.

CRUD em Python
Configurando a tabela

Em seguida vamos prosseguir para que o programa crie essa tabela com essas informações.

Dentro do código nós vamos utilizar a seguinte estrutura.

Python
import mysql.connector

conexao = mysql.connector.connect(
    host='localhost',
    user='root',
    password='123456',
    database='bdyoutube',
)
cursor = conexao.cursor()

# CRUD

cursor.close()
conexao.close()

Então vamos tanto iniciar a nossa conexão quanto fechá-la ao final do código, e no meio disso, nós vamos criar o nosso CRUD.

IMPORTANTE: Você vai rodar esse código sem inserir nada de CRUD ainda só para garantir que está tudo certo. O código não vai fazer nada, mas não é para dar nenhum erro, então assim você garante que está tudo funcionando corretamente.

Feito isso já podemos começar com os nossos códigos. Vou deixar aqui os códigos de cada uma das siglas do CRUD, então vamos ter um bloco para criar uma informação, para ler uma informação, para alterar/atualizar e para deletar.

Codigo
# CREATE

# nome_produto = "chocolate"

# valor = 15

# comando = f'INSERT INTO vendas (nome_produto, valor) VALUES ("{nome_produto}", {valor})'

# cursor.execute(comando)

# conexao.commit() # edita o banco de dados



# READ

# comando = f'SELECT * FROM vendas'

# cursor.execute(comando)

# resultado = cursor.fetchall() # ler o banco de dados

# print(resultado)



# UPDATE

# nome_produto = "todynho"

# valor = 6

# comando = f'UPDATE vendas SET valor = {valor} WHERE nome_produto = "{nome_produto}"'

# cursor.execute(comando)

# conexao.commit() # edita o banco de dados



# DELETE

# nome_produto = "todynho"

# comando = f'DELETE FROM vendas WHERE nome_produto = "{nome_produto}"'

# cursor.execute(comando)

# conexao.commit() # edita o banco de dados

Lembrando que alguns dos comandos que estamos colocando são comandos do próprio SQL, então se quiser saber um pouco mais a fundo sobre esses comandos você pode dar uma olhada nos nossos posts de SQL aqui no blog!

Lembrando que você pode ir olhando esses resultados diretamente no banco de dados para verificar se o que está fazendo está de fato correto.

CRUD em Python
Verificando os resultados do CRUD no banco de dados

Pode até ir testando novas informações e novos comandos para poder treinar.

Perguntas frequentes

1. O que significa a sigla CRUD?

CRUD significa Create, Read, Update e Delete — criar, ler, atualizar e excluir registros. São as quatro operações fundamentais de qualquer sistema com banco de dados: um cadastro de clientes, por exemplo, precisa inserir novos, consultar, corrigir dados e remover registros antigos.

2. Qual biblioteca conecta o Python ao MySQL?

A oficial é a mysql-connector-python, instalada com pip install mysql-connector-python. Com ela, você cria a conexão informando host, usuário, senha e banco, abre um cursor e executa qualquer comando SQL, confirmando as alterações com commit().

3. Quais comandos SQL correspondem ao CRUD?

Create usa o INSERT INTO para adicionar registros; Read usa o SELECT para consultar; Update usa o UPDATE com WHERE para alterar registros específicos; e Delete usa o DELETE FROM com WHERE para excluir. O WHERE é essencial nos dois últimos para não afetar a tabela inteira.

4. O CRUD funciona com outros bancos de dados?

Sim. O conceito é universal: trocando a biblioteca de conexão — sqlite3 (nativa do Python), psycopg2 para PostgreSQL ou SQLAlchemy como camada única para vários bancos — os mesmos comandos INSERT, SELECT, UPDATE e DELETE continuam valendo em qualquer banco relacional.

Conclusão do CRUD em Python

Nessa aula eu te mostrei como fazer a integração do Python com MySQL para utilizar o CRUD, que é uma sigla para as operações que você pode fazer com as informações.

Então vamos poder criar, ler, atualizar/alterar e deletar informações. Temos comandos para fazer cada uma dessas ações dentro do nosso banco de dados.

Esses comandos vão ser muito úteis quando precisar fazer essa integração do seu código com uma base de dados para fazer uma dessas operações.

Agora que já tem esse bloco de código pronto você vai poder utilizar nos seus próximos projetos!

Hashtag Treinamentos

Para acessar outras publicações de Python, clique aqui!


Quer aprender mais sobre Python com um minicurso gratuito?