1
resposta

exercícios resolvidos

essa é a minha solução para o exercico den criação de banco de dados e manipulação através do python

import sqlite3

def conectar():
    conn = sqlite3.connect('loja.db')
    return conn

def tabela_produtos():
    conn = conectar()
    cursor = conn.cursor()
    cursor.execute('''
        CREATE TABLE IF NOT EXISTS produtos (
            id INTEGER PRIMARY KEY AUTOINCREMENT,
            nome TEXT NOT NULL,
            preco REAL NOT NULL
        )
    ''')
    conn.commit()
    conn.close()
    
def inserir_produto(nome, preco):
    conn = conectar()
    cursor = conn.cursor()
    cursor.execute('''
        INSERT INTO produtos (nome, preco) VALUES (?, ?)
    ''', (nome, preco))
    conn.commit()
    conn.close()

def listar_produtos():
    conn = conectar()
    cursor = conn.cursor()
    cursor.execute('SELECT * FROM produtos')
    produtos = cursor.fetchall()
    for produto in produtos:
        print(f'ID: {produto[0]}, Nome: {produto[1]}, Preco: R${produto[2]:.2f}')
    conn.commit()
    conn.close()
1 resposta

Olá, Tamara! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o sqlite3 para manipulação de banco de dados com Python, utilizou muito bem o CREATE TABLE IF NOT EXISTS para garantir a criação segura da tabela e ainda compreendeu a importância do commit para salvar alterações de forma persistente.

Uma dica interessante para o futuro é aplicar o with para gerenciar automaticamente a conexão e evitar esquecer de fechar o banco. Assim:

def inserir_produto(nome, preco):
    with sqlite3.connect('loja.db') as conn:
        cursor = conn.cursor()
        cursor.execute('INSERT INTO produtos (nome, preco) VALUES (?, ?)', (nome, preco))
        conn.commit()

Isso faz com que a conexão seja aberta e fechada de forma automática, deixando o código mais limpo e seguro.

Conteúdos relacionados

Alguns materiais podem estar em inglês, mas é possível compreendê-los usando o recurso de tradução de páginas do próprio navegador.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!