Maria Luíza Santinho Lima Monteiro
Bom dia!
Essa semana desenvolvi as classes em Python que serão utilizadas para o vínculo com o banco de dados. Estas classes foram definidas durante a reunião. Segue abaixo o código de uma delas:
class Pessoa (DatabaseClasse):
def __init__(self,pessoa_id = None):
DatabaseClasse.__init__(self)
self.id = pessoa_id
self.name=None
self.data_nascimento = None
self.listaPessoas = {}
self.load()
def load(self):
"""
retorna um dicionario (id: (nome, data_nascimento, ...)) de todos
do banco
"""
cursor = self.connection.cursor()
cursor.execute('SELECT nome, data_nascimento FROM pessoa
WHERE id=?',(self.id,))
row = cursor.fetchone()
if row:
self.name = row['nome']
self.data_nascimento = row['data_nascimento']
self.loaded = True
return self.loaded
def get_all_pessoas(self):
"""
Retorna uma lista de todas as pessoas do banco - O objeto Pessoa Se
encontrado, as instancia e retorna seus objetos
"""
cursor = self.connection.cursor()
sql = 'SELECT id FROM pessoa'
cursor.execute(sql)
pessoas = []
for row in cursor:
pessoas.append(Pessoa(row['id']))
return pessoas
def get_dict_all_pessoas(self,params=()):
"""
params = ()
retorna dicionario (id da pessoa : (nome, data de nascimento) de todas as
pessoas do banco
"""
cursor = self.connection.cursor()
cursor.execute("SELECT id,nome,data_nascimento FROM pessoa")
for row in cursor:
self.listaPessoas[str(row['id'])] = ([row['nome']],
str(row['data_nascimento']))
return self.listaPessoas
def get_name(self):
return self.name
def get_data_nascimento(self):
return self.data_nascimento
def get_id(self):
return self.id
def save(self):
cursor = self.connection.cursor()
if self.loaded:
sql = 'UPDATE pessoa SET nome = ?, data_nascimento=? WHERE
id=?'
cursor.execute(sql,(self.name,self.data_nascimento,self.id))
else:
sql = 'INSERT INTO pessoa (nome,data_nascimento,id) VALUES
(?,?,?)'
cursor.execute(sql,(self.name,self.data_nascimento,self.id))
self.connection.commit()
def set_name(self,name):
self.name = name
def set_data_nascimento(self, data_nascimento):
self.data_nascimento = data_nascimento
def set_id(self,id):
#pegar do banco o ultimo id e acrescentar
self.id = id
Observação: As classes poderão sofrer algumas alterações.
Essa semana desenvolvi as classes em Python que serão utilizadas para o vínculo com o banco de dados. Estas classes foram definidas durante a reunião. Segue abaixo o código de uma delas:
class Pessoa (DatabaseClasse):
def __init__(self,pessoa_id = None):
DatabaseClasse.__init__(self)
self.id = pessoa_id
self.name=None
self.data_nascimento = None
self.listaPessoas = {}
self.load()
def load(self):
"""
retorna um dicionario (id: (nome, data_nascimento, ...)) de todos
do banco
"""
cursor = self.connection.cursor()
cursor.execute('SELECT nome, data_nascimento FROM pessoa
WHERE id=?',(self.id,))
row = cursor.fetchone()
if row:
self.name = row['nome']
self.data_nascimento = row['data_nascimento']
self.loaded = True
return self.loaded
def get_all_pessoas(self):
"""
Retorna uma lista de todas as pessoas do banco - O objeto Pessoa Se
encontrado, as instancia e retorna seus objetos
"""
cursor = self.connection.cursor()
sql = 'SELECT id FROM pessoa'
cursor.execute(sql)
pessoas = []
for row in cursor:
pessoas.append(Pessoa(row['id']))
return pessoas
def get_dict_all_pessoas(self,params=()):
"""
params = ()
retorna dicionario (id da pessoa : (nome, data de nascimento) de todas as
pessoas do banco
"""
cursor = self.connection.cursor()
cursor.execute("SELECT id,nome,data_nascimento FROM pessoa")
for row in cursor:
self.listaPessoas[str(row['id'])] = ([row['nome']],
str(row['data_nascimento']))
return self.listaPessoas
def get_name(self):
return self.name
def get_data_nascimento(self):
return self.data_nascimento
def get_id(self):
return self.id
def save(self):
cursor = self.connection.cursor()
if self.loaded:
sql = 'UPDATE pessoa SET nome = ?, data_nascimento=? WHERE
id=?'
cursor.execute(sql,(self.name,self.data_nascimento,self.id))
else:
sql = 'INSERT INTO pessoa (nome,data_nascimento,id) VALUES
(?,?,?)'
cursor.execute(sql,(self.name,self.data_nascimento,self.id))
self.connection.commit()
def set_name(self,name):
self.name = name
def set_data_nascimento(self, data_nascimento):
self.data_nascimento = data_nascimento
def set_id(self,id):
#pegar do banco o ultimo id e acrescentar
self.id = id
Observação: As classes poderão sofrer algumas alterações.
Nenhum comentário:
Postar um comentário