Hoy se empezó a jugar un poco con la base de datos, creamos una base de datos de prueba junto con una tabla de prueba, esta tabla esta basada en la de empleados, además realizamos el metodo de cerrar sesión en la pagina.
Pruebas con BD:
Para realizar la conexión con la base de datos estamos usando una librería de python llamada 'pyodbc', esta nos permite conectarnos al servidor y a las distintas bases de datos SQL
antes de realizar la conexión mediante código cree dos filas en la tabla de prueba, se muestran a continuación
La conexión con la BD se hace de la siguiente forma:
#hacemos una coneccion on la base de datos
conn = pyodbc.connect(
"Driver={SQL Server};"
"Server=OSWALDO\SQLEXPRESS;"
"Database=Prueba1;"
"Trusted_Connection=yes;"
)
Donde server es el nombre del servidor, Database el nombre de la base de datos, y Trusted_Connection significa que usamos la autenticación de windows.
Luego de esto se empezó a hacer las procedimientos para poder mostrar, insertar, editar y eliminar, todo esto se realizó con la ayuda del siguiente tutorial:
A continuación se muestra el código de todo esto, algunas lineas fueron modificadas en el blog para que no se salieran de la pagina, estas se identifican con un -cl-:
#leemos una tabla
def read(conection):
print("read")
cursor = conection.cursor()
cursor.execute("SELECT * FROM [dbo].[Test_1]")
for row in cursor:
print(row)
print()
#creamos un elemento en la tabla
def create(conection):
print("create")
cursor = conection.cursor()
cursor.execute(
"INSERT INTO [dbo].[Test_1] (Nombre, IdTipoIdentificacion -cl-
,ValorDocumentoIdentificacion, IdDepartamento, Puesto, FechaNacimiento) -cl-
values(?,?,?,?,?,?)",
("Antonio Fronteras",2 ,123456,5, "Jefe de cuidado del cabello","1975-5-10")
)
conection.commit()
read(conection)
print()
#modificamos un elemento en la tabla
def update(conection):
print("update")
cursor = conection.cursor()
cursor.execute(
"UPDATE [dbo].[Test_1] SET Nombre = ? WHERE Nombre = ?",
("Figeruno fugofugo","Antonio Fronteras")
)
conection.commit()
read(conection)
print()
#eliminamos un elemento en la tabla
def delete(conection):
print("delete")
cursor = conection.cursor()
cursor.execute(
"DELETE FROM [dbo].[Test_1] WHERE Id > 2"
)
conection.commit()
read(conection)
print()
De momento todo esto está puesto a la chanchada y se hace lo mismo siempre, pero esto fue hecho para empezar a probar el funcionamiento y prepararnos para a la hora de tener que hacer la base de datos y las conexiones finales, y no hacer prototipos de camino, se muestran las salidas al ejecutar las funciones:
read
(1, 'Juanito Valderrama', 3, 123344555, 7, 'Electricista', '1998-05-10')
(2, 'Pepito Pepote', 1, 402560325, 3, 'Operador de Maquina', '2001-09-15')
create
read
(1, 'Juanito Valderrama', 3, 123344555, 7, 'Electricista', '1998-05-10')
(2, 'Pepito Pepote', 1, 402560325, 3, 'Operador de Maquina', '2001-09-15')
(15, 'Antonio Fronteras', 2, 123456, 5, 'Jefe de cuidado del cabello', '1975-5-10')
update
read
(1, 'Juanito Valderrama', 3, 123344555, 7, 'Electricista', '1998-05-10')
(2, 'Pepito Pepote', 1, 402560325, 3, 'Operador de Maquina', '2001-09-15')
(15, 'Figeruno fugofugo', 2, 123456, 5, 'Jefe de cuidado del cabello', '1975-5-10')
delete
read
(1, 'Juanito Valderrama', 3, 123344555, 7, 'Electricista', '1998-05-10')
(2, 'Pepito Pepote', 1, 402560325, 3, 'Operador de Maquina', '2001-09-15')
Algo que he notado es que la primary key sigue aumentando sin importar que hayamos borrado los elementos anteriores, no se si esto es bueno o malo, pero aun así voy a investigar al respecto sobre una solución
Logout
Se realizó el botón de cerrar sesión, este borra todos los registros de sesión que se encuentran en memoria, además de esto en cada pagina de la pagina web se hace una verificación sobre si se encuentra la sesión iniciada, en caso contrario volvemos a la pantalla de inicio de sesión
-Oswaldo (5 hrs )


Comentarios
Publicar un comentario