1
resposta

Minha RESPOSTA: 12 Desafio: Python e o banco de dados

import sqlite3


database = "store.db"


# 1- Se conecta ao banco loja.db;
def connect():
    connection = sqlite3.connect(database)
    return connection


# 2- Crie uma tabela produtos com os campos id, nome, preco;
def create_products_table():
    connection = connect()
    cursor = connection.cursor()

    cursor.execute(
        """
            CREATE TABLE IF NOT EXISTS products (
            id INTEGER PRIMARY KEY,
            name TEXT,
            price REAL
            )
        """
    )
    connection.commit()
    connection.close()


# 3- Insira 3 produtos diferentes;
def insert_product(product_name: str, price: float):
    connection = connect()
    cursor = connection.cursor()

    cursor.execute(
        """
            INSERT INTO products (name, price) \
            VALUES (?, ?)
        """,
        (product_name, price),
    )
    connection.commit()
    connection.close()


# 4- Liste todos os produtos cadastrados.
def show_all_products():
    connection = connect()
    cursor = connection.cursor()

    cursor.execute(
        """
            SELECT * FROM products
        """
    )

    products = cursor.fetchall()
    for product in products:
        print(product)

    connection.commit()
    connection.close()


def execute_program():
    create_products_table()

    insert_product("Computer Hardware", 299.99)
    insert_product("Notebook Dell", 4599.19)
    insert_product("Keyboard", 50.50)
    show_all_products()
    print("Program finished.")


execute_program()
1 resposta

Olá, Thaís, tudo bem?

Meus parabéns pela resolução do desafio!

Seu código ficou excelente e muito bem organizado. Gostei de ver que você separou as responsabilidades em funções (create_products_table, insert_product, etc.), o que deixa o código muito mais limpo e fácil de dar manutenção. Além disso, o uso de ? no INSERT é uma ótima prática de segurança com bancos de dados.

Bons estudos!

Sucesso

Imagem da comunidade