Para o primeiro casa do Banco, foi utilizado o Banco de dados relacionais devido ao fato dos dados bancarios precisarem de uma rigidez maior em seus dados.
conn = sqlite3.connect('dados_bancarios.db')
cursor = conn.cursor()
cursor.execute("""
CREATE TABLE IF NOT EXISTS Clientes (
id INTEGER PRIMARY KEY,
nome TEXT NOT NULL,
idade INTEGER NOT NULL,
saldo REAL NOT NULL
)
""")
cursor.execute("""
INSERT INTO Clientes (nome, idade, saldo) VALUES
('João Silva', 30, 1500.00),
('Maria Oliveira', 25, 2500.50),
('Carlos Santos', 40, 500.75)
""")
conn.commit()
cursor.execute("SELECT * FROM Clientes")
clientes = cursor.fetchall()
print("Clientes cadastrados:")
for cliente in clientes:
print(f"Nome: {cliente[1]}, Idade: {cliente[2]}, Saldo: R${cliente[3]:.2f}")
No segundo caso foi utilizado o não relacional, pois em uma rede social os dados precisam ser mais dinamicos. Foi usado o modelo da aula, mas poderia utilizar um banco de dados baseado em grafos, o que ajudaria no processo de conexões e encontrar novos amigos.
client = MongoClient('mongodb://localhost:27017/')
db = client['rede_social']
estudantes = db['membros']
estudantes.insert_many([
{"Nome": 'Ana Beatriz', "Idade": 22, "Cidade": 'São Paulo', "Interesses": ['Música', 'Fotografia'], "Comentários": ['Adoro viajar', 'Gosto de cozinhar']},
{"Nome": 'Lucas Pereira', "Idade": 28, "Cidade": 'Rio de Janeiro', "Interesses": ['Esportes', 'Tecnologia'], "Comentários": ['Sou fã de futebol', 'Gosto de programação']},
{"Nome": 'Mariana Costa', "Idade": 19, "Cidade": 'Belo Horizonte', "Interesses": ['Artes', 'Cinema'], "Comentários": ['Amo pintar', 'Adoro filmes clássicos']},
])
for membro in estudantes.find():
print(f"Nome: {membro['Nome']}, Idade: {membro['Idade']}, Cidade: {membro['Cidade']}, Interesses: {', '.join(membro['Interesses'])}, Comentários: {', '.join(membro['Comentários'])}")