===============================================================================================
  SQLITE DO ZERO
  Código Python didático · Kardex Tauro · kardex-tauro.muisca.co
===============================================================================================
Produtos lidos do CSV: 8

===============================================================================================
PASSO 1: CRIAR O BANCO E A TABELA
===============================================================================================
SQL: CREATE TABLE IF NOT EXISTS productos (codigo TEXT PRIMARY KEY, producto TEXT NOT NULL, categoria TEXT NOT NULL, precio INTEGER NOT NULL, existencias INTEGER NOT NULL)
Tabela produtos pronta.

===============================================================================================
PASSO 2: INSERIR OS PRODUTOS
===============================================================================================
SQL: INSERT INTO productos (codigo, producto, categoria, precio, existencias) VALUES (?, ?, ?, ?, ?)
Produtos inseridos: 8

===============================================================================================
PASSO 3: CONSULTAR (SELECT ... ORDER BY)
===============================================================================================
SQL: SELECT codigo, producto, categoria, precio, existencias FROM productos ORDER BY codigo
-----------------------------------------------------------------------------------------------
Código  Produto                      Categoria              Preço     Estoque             Valor
-----------------------------------------------------------------------------------------------
E01     Cabo THHN 12 AWG (metro)     Elétrica            3.600,00         500      1.800.000,00
E02     Disjuntor 20 A               Elétrica           42.800,00          24      1.027.200,00
E03     Fita isolante preta          Elétrica            5.900,00         200      1.180.000,00
H01     Furadeira de impacto 650 W   Ferramentas       289.900,00          12      3.478.800,00
H02     Martelo de bola 16 oz        Ferramentas        45.900,00          40      1.836.000,00
H03     Chave ajustável 10 pol       Ferramentas        62.900,00          18      1.132.200,00
P01     Tubo PVC 1/2 pol x 3 m       Hidráulica         18.900,00         120      2.268.000,00
P02     Registro de gaveta 1/2 pol   Hidráulica         34.500,00          35      1.207.500,00
-----------------------------------------------------------------------------------------------
Linhas consultadas: 8

===============================================================================================
PASSO 4: ATUALIZAR UM PREÇO (UPDATE)
===============================================================================================
SQL: SELECT precio FROM productos WHERE codigo = ?
Código atualizado: E01
Preço antes: 3.600,00
SQL: UPDATE productos SET precio = ? WHERE codigo = ?
Preço depois: 3.900,00
Linhas alteradas pelo UPDATE: 1

===============================================================================================
PASSO 5: EXCLUIR UM PRODUTO (DELETE)
===============================================================================================
SQL: DELETE FROM productos WHERE codigo = ?
Código excluído: E03
Linhas excluídas pelo DELETE: 1
SQL: SELECT COUNT(*) FROM productos
Produtos que ficam na tabela: 7

===============================================================================================
PASSO 6: CONSULTA DE NEGÓCIO (SUM ... GROUP BY)
===============================================================================================
SQL: SELECT COUNT(*), SUM(precio * existencias) FROM productos
Produtos na tabela: 7
SQL: SELECT categoria, COUNT(*) AS articulos, SUM(precio * existencias) AS valor FROM productos GROUP BY categoria ORDER BY valor DESC
VALOR DO ESTOQUE POR CATEGORIA
--------------------------------------------------------
Categoria        Produtos             Valor   % do valor
--------------------------------------------------------
Ferramentas             3      6.447.000,00      49,98 %
Hidráulica              2      3.475.500,00      26,94 %
Elétrica                2      2.977.200,00      23,08 %
--------------------------------------------------------
Conferência (soma das categorias = total): FECHA

===============================================================================================
PASSO 7: FECHAR E CONFIRMAR
===============================================================================================
Ao sair do bloco with, a conexão confirma as mudanças pendentes.
Se algo falhasse antes, o with desfaria a operação e o banco ficaria como estava.
Conexão fechada. O banco ficou salvo.

===============================================================================================
FECHAMENTO
===============================================================================================
  Produtos na tabela: 7
  Valor total do estoque: 12.899.700,00
  Arquivo gerado: salida/tienda.db
