Seguimos buscando a Arshak. Ayudanos compartiendo!
Encuesta no oficial de docentes
Resultados de la encuesta no oficial de docentes
Probaste el SIGA Helper?

Donar $100 Donar $200 Donar $500 Donar mensualmente


Enviar respuesta 
 
Calificación:
  • 0 votos - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Buscar en el tema
[Pedido] Final Gestion de Datos 24/02/2015
Autor Mensaje
Nacho14 Sin conexión
Profesor del Modulo A
-
*****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 295
Agradecimientos dados: 36
Agradecimientos: 50 en 36 posts
Registro en: Aug 2009
Mensaje: #1
[Pedido] Final Gestion de Datos 24/02/2015 Finales Gestión de Datos
Básicamente lo que dice el título. Si alguno tiene la fotocopia y la puede compartir o contar mas o menos que fue lo que se tomó en el final de hoy.

Gracias
(Este mensaje fue modificado por última vez en: 24-02-2015 23:13 por Nacho14.)
24-02-2015 23:12
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
CarooLina Sin conexión
Colaborador

********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 3.743
Agradecimientos dados: 1.496
Agradecimientos: 1.686 en 547 posts
Registro en: Sep 2010
Mensaje: #2
RE: [Pedido] Final Gestion de Datos 24/02/2015
Yo estoy esperando que me cuenten. Lo unico que puedo agregar es que dieron 5 min para verlo e irse

love
24-02-2015 23:16
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] CarooLina recibio 1 Gracias por este post
DarkCrazy (28-02-2015)
Martin. Sin conexión
Presidente del CEIT
Enjoy it !
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.380
Agradecimientos dados: 88
Agradecimientos: 296 en 137 posts
Registro en: Oct 2011
Mensaje: #3
RE: [Pedido] Final Gestion de Datos 24/02/2015
Me sumo al pedido así la semana que viene ya lo despachamos para casa =D .

[Imagen: jQJfyBGh9SOmZ.png]
24-02-2015 23:24
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Aoshido Sin conexión
Campeon del cubo Rubik
Tamashi no Kijitsu
****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 135
Agradecimientos dados: 30
Agradecimientos: 90 en 24 posts
Registro en: Jul 2010
Mensaje: #4
RE: [Pedido] Final Gestion de Datos 24/02/2015
Hola

VOF:

1) La unica manera para asegurar unicidad de los campos es con una Primary Key o con UNIQUE
2) El orden de complejidad del AB es igual que el de ----------

Teoria:
1)Defina Niveles de Isolacion
2)Defina 2 objetos para implementar seguridad en una base de datos

Ejercicios

Tabla Habitaciones
numero
estado (Ocupada / Libre)

Tabla Reservaciones
nrohabitacion
fecha desde
fecha hasta

3a) Suponiendo que venga un cliente a pedir una habitacion ahora por 3 dias, realizar una consulta que traiga la primer habitacion que este disponible y cuyo tiempo entre que el cliente que llego y el tiempo de reserva sea menor sabiendo que toads las habitaciones tienen una reservacion a futuro.


3b)Desarrolle los triggers necesarios para emular una foreing key de resrevaciones a habitaciones sabiendo que ninguna posee constrains de ningun tipo


Recuerden agradecer e (?)
25-02-2015 00:03
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] Aoshido recibio 7 Gracias por este post
CarooLina (25-02-2015), drechu (25-02-2015), coolerking (25-02-2015), LeandroG (26-02-2015), juan.91-rc (02-03-2015), aleixen (03-03-2015), takuma1985 (19-02-2017)
Leeo.- Sin conexión
Empleado del buffet
Give me the blues.
*

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 6
Agradecimientos dados: 8
Agradecimientos: 5 en 2 posts
Registro en: Feb 2013
Mensaje: #5
RE: [Pedido] Final Gestion de Datos 24/02/2015
Agrego algunas cosas:

El 1b decía: "El orden de complejidad de un ABB (árbol binario de búsqueda) es similar al del Arbol-B"
El de niveles de aislamiento pedía definición, tipos y ejemplos de c/u.

Saludos!
25-02-2015 10:44
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] Leeo.- recibio 4 Gracias por este post
CarooLina (25-02-2015), drechu (25-02-2015), coolerking (25-02-2015), LeandroG (26-02-2015)
Nacho14 Sin conexión
Profesor del Modulo A
-
*****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 295
Agradecimientos dados: 36
Agradecimientos: 50 en 36 posts
Registro en: Aug 2009
Mensaje: #6
RE: [Pedido] Final Gestion de Datos 24/02/2015
Según tengo entendido los VoF son FALSOS los dos.

No se si era justificando o no pero se podría justificar así

A) FALSO, porque también se puede asegurar la unicidad de un campo creando un trigger que valide cada vez que se hace un update o insert

B) FALSO, porque el orden de complijidad del árbol binario de búsqueda es O(log n) y en el peor de los casos O(n) y el orden de complejidad de un árbol b es siempre O(log n). O sea si se da el peor de los casos no serian iguales. (igual en esta no estoy seguro si esta bien, si alguno me puede corregir mejor)
25-02-2015 11:00
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] Nacho14 recibio 2 Gracias por este post
aleixen (03-03-2015), DarkCrazy (25-07-2015)
Aoshido Sin conexión
Campeon del cubo Rubik
Tamashi no Kijitsu
****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 135
Agradecimientos dados: 30
Agradecimientos: 90 en 24 posts
Registro en: Jul 2010
Mensaje: #7
RE: [Pedido] Final Gestion de Datos 24/02/2015
(25-02-2015 11:00)Nacho14 escribió:  Según tengo entendido los VoF son FALSOS los dos.

No se si era justificando o no pero se podría justificar así

A) FALSO, porque también se puede asegurar la unicidad de un campo creando un trigger que valide cada vez que se hace un update o insert

B) FALSO, porque el orden de complijidad del árbol binario de búsqueda es O(log n) y en el peor de los casos O(n) y el orden de complejidad de un árbol b es siempre O(log n). O sea si se da el peor de los casos no serian iguales. (igual en esta no estoy seguro si esta bien, si alguno me puede corregir mejor)
El 1A seguro es falso por lo que vos dijiste.
El 1B no sabria porque no lo conteste.

Lo de niveles de isolation esta en todos lados, y respecto a la seguridad en la base yo puse con el Catalogo y con Vistas, es una pregunta que (Junto con asegurar integridad) se repite mucho en los finales, saludos!
25-02-2015 11:36
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] Aoshido recibio 1 Gracias por este post
DarkCrazy (25-07-2015)
Nacho14 Sin conexión
Profesor del Modulo A
-
*****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 295
Agradecimientos dados: 36
Agradecimientos: 50 en 36 posts
Registro en: Aug 2009
Mensaje: #8
RE: [Pedido] Final Gestion de Datos 24/02/2015
(25-02-2015 11:36)Aoshido escribió:  
(25-02-2015 11:00)Nacho14 escribió:  Según tengo entendido los VoF son FALSOS los dos.

No se si era justificando o no pero se podría justificar así

A) FALSO, porque también se puede asegurar la unicidad de un campo creando un trigger que valide cada vez que se hace un update o insert

B) FALSO, porque el orden de complijidad del árbol binario de búsqueda es O(log n) y en el peor de los casos O(n) y el orden de complejidad de un árbol b es siempre O(log n). O sea si se da el peor de los casos no serian iguales. (igual en esta no estoy seguro si esta bien, si alguno me puede corregir mejor)
El 1A seguro es falso por lo que vos dijiste.
El 1B no sabria porque no lo conteste.

Lo de niveles de isolation esta en todos lados, y respecto a la seguridad en la base yo puse con el Catalogo y con Vistas, es una pregunta que (Junto con asegurar integridad) se repite mucho en los finales, saludos!

Respecto a la seguridad también se podrían agregar los SP y los triggers pero si hay que nombrar solo 2 creo que lo más acertado es lo que decís vos.

Para asegurar la integridad están

- los triggers
- transacciones
- constraints
- logical logs

Alguno pudo hacer los ejercicios?
(Este mensaje fue modificado por última vez en: 25-02-2015 12:35 por Nacho14.)
25-02-2015 11:58
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
coolerking Sin conexión
Secretario de la SAE
estado' unido'
******

Análisis de Sistemas
Facultad Regional Buenos Aires

Mensajes: 480
Agradecimientos dados: 117
Agradecimientos: 96 en 50 posts
Registro en: Jan 2012
Mensaje: #9
RE: [Pedido] Final Gestion de Datos 24/02/2015
Hola Aoshido! Gracias por publicar! Como te fue?
(o la parte practica la estoy entendiendo mal o es un re quilombo... es UNA reserva o pueden ser varias reservas a futuro?)
Te hago una pregunta... que no terminé de entender, a las vistas de catalogo de seguridad te referis? Cuando hablas de herramientas para asegurar integridad?

[Imagen: donacion1.jpg]
(Este mensaje fue modificado por última vez en: 25-02-2015 20:38 por coolerking.)
25-02-2015 19:43
Visita su sitio web Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Aoshido Sin conexión
Campeon del cubo Rubik
Tamashi no Kijitsu
****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 135
Agradecimientos dados: 30
Agradecimientos: 90 en 24 posts
Registro en: Jul 2010
Mensaje: #10
RE: [Pedido] Final Gestion de Datos 24/02/2015
(25-02-2015 19:43)coolerking escribió:  Hola Aoshido! Gracias por publicar! Como te fue?
(o la parte practica la estoy entendiendo mal o es un re quilombo... es UNA reserva o pueden ser varias reservas a futuro?)
Te hago una pregunta... que no terminé de entender, a las vistas de catalogo de seguridad te referis? Cuando hablas de herramientas para asegurar integridad?

Hola!
No te enquilombes al pedo, dentro de todas las consulta que te piden en los ultimos finales era una de las mas sencillas estas. Para limitar la cantidad de resultados podes usar "TOP" (Select top 1 * from habitaciones) si estas en MSSQL o LIMIT (Select * from habitaciones limit 1) si estas en otros motores .
A mi me fue bien, saque un 4 miseria a pesar de saber todo pq estaba terriblemetne nervioso entregue rapido e hice un solo trigger para la Foreing key.

Te dejo un poco en Pseudocodigo como son las cosas que yo creo qeu hay que hacer


Select h.numero from habitaciones
left join reservas r on (r.nrohabitacion = h.nrohabitacion and datediff(h.desde,getdate('today'))>=3)
where h.estado = libre
order by r.desde asc
limit 1

(al final nada de pseudocodigo ese es el ejercicio entero jajaja)

Y en el otro tenes que hacer 3 triggers
Uno para BEFORE INSERT en RESERVAS (que no te deje insertar un nrohabitacion que no exista en habitaciones)
Uno para BEFORE UPDATE en RESERVAS (que no te deje modificar un nrohabitacion que no exista en habitaciones)
Uno para BEFORE DELETE en HABITACIONES (Que no te deje borrar una haitacion que esta siendo referneciada en resrevas)

Las vistas y el Catalogo son 2 objetos distintos.
Las vistas buscalas en google como "Views" Y el catalogo es el que tiene todos los datos necesarios para representar una BD ademas de las relaciones (Que eso estan en las tablas corrrespondientes)
Por ejemplo en el catalago tenes tablas con los usuarios que pueden acceder a la base de datos, tablas que te dicen que permisos tienen esos usarios en la base y demas.
Un ejemplo mas concreto seria (me imagino, nunca vi un catalogo...)

USERS
ID----Nombre
1----- Aoshido

Permissions
IDUSER IDTABLE "PERMISOS"
1--------- 1--------- TODOS

TABLES
1 --- Ejemplo

Eso seria que el Usuario Aoshido en la tabla "Ejemplo" tiene todos los permisos (Insert update delete drop etc)

Cualquier cosa pregunten, saludos!
(Este mensaje fue modificado por última vez en: 25-02-2015 22:30 por Aoshido.)
25-02-2015 22:27
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] Aoshido recibio 4 Gracias por este post
coolerking (26-02-2015), drechu (01-03-2015), holautn (24-02-2016), CarooLina (08-02-2018)
Nacho14 Sin conexión
Profesor del Modulo A
-
*****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 295
Agradecimientos dados: 36
Agradecimientos: 50 en 36 posts
Registro en: Aug 2009
Mensaje: #11
RE: [Pedido] Final Gestion de Datos 24/02/2015
a mi se me ocurrió algo así


CREATE TRIGGER chequeoForeingKey
ON reservas
AFTER UPDATE, INSERT
AS
BEGIN

IF (SELECT 1 FROM INSERTED WHERE INSERTED.nrohabitacion NOT IN (SELECT numero FROM HABITACIONES) = 1)
raiserror ('el numero de habitacion que intenta agregar / modificar no se encuentra en la tabla habitaciones')
rollback

END


CREATE TRIGGER chequeoForeingKey
ON habitaciones
AFTER DELETE
AS
BEGIN

IF (SELECT 1 FROM DELETED WHERE DELETED.numero IN (SELECT nrohabitacion FROM RESERVAS) = 1)
raiserror ('el numero de habitacion que intenta borrar tiene una referencia en la tabla reservas')
rollback

END
25-02-2015 23:24
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
coolerking Sin conexión
Secretario de la SAE
estado' unido'
******

Análisis de Sistemas
Facultad Regional Buenos Aires

Mensajes: 480
Agradecimientos dados: 117
Agradecimientos: 96 en 50 posts
Registro en: Jan 2012
Mensaje: #12
RE: [Pedido] Final Gestion de Datos 24/02/2015
(25-02-2015 22:27)Aoshido escribió:  
(25-02-2015 19:43)coolerking escribió:  Hola Aoshido! Gracias por publicar! Como te fue?
(o la parte practica la estoy entendiendo mal o es un re quilombo... es UNA reserva o pueden ser varias reservas a futuro?)
Te hago una pregunta... que no terminé de entender, a las vistas de catalogo de seguridad te referis? Cuando hablas de herramientas para asegurar integridad?

Hola!
No te enquilombes al pedo, dentro de todas las consulta que te piden en los ultimos finales era una de las mas sencillas estas. Para limitar la cantidad de resultados podes usar "TOP" (Select top 1 * from habitaciones) si estas en MSSQL o LIMIT (Select * from habitaciones limit 1) si estas en otros motores .
A mi me fue bien, saque un 4 miseria a pesar de saber todo pq estaba terriblemetne nervioso entregue rapido e hice un solo trigger para la Foreing key.

Te dejo un poco en Pseudocodigo como son las cosas que yo creo qeu hay que hacer


Select h.numero from habitaciones
left join reservas r on (r.nrohabitacion = h.nrohabitacion and datediff(h.desde,getdate('today'))>=3)
where h.estado = libre
order by r.desde asc
limit 1

(al final nada de pseudocodigo ese es el ejercicio entero jajaja)

Y en el otro tenes que hacer 3 triggers
Uno para BEFORE INSERT en RESERVAS (que no te deje insertar un nrohabitacion que no exista en habitaciones)
Uno para BEFORE UPDATE en RESERVAS (que no te deje modificar un nrohabitacion que no exista en habitaciones)
Uno para BEFORE DELETE en HABITACIONES (Que no te deje borrar una haitacion que esta siendo referneciada en resrevas)

Las vistas y el Catalogo son 2 objetos distintos.
Las vistas buscalas en google como "Views" Y el catalogo es el que tiene todos los datos necesarios para representar una BD ademas de las relaciones (Que eso estan en las tablas corrrespondientes)
Por ejemplo en el catalago tenes tablas con los usuarios que pueden acceder a la base de datos, tablas que te dicen que permisos tienen esos usarios en la base y demas.
Un ejemplo mas concreto seria (me imagino, nunca vi un catalogo...)

USERS
ID----Nombre
1----- Aoshido

Permissions
IDUSER IDTABLE "PERMISOS"
1--------- 1--------- TODOS

TABLES
1 --- Ejemplo

Eso seria que el Usuario Aoshido en la tabla "Ejemplo" tiene todos los permisos (Insert update delete drop etc)

Cualquier cosa pregunten, saludos!

GENIO gracias. Sabes que habia entendido?
Que en la tabla reservaciones, tenias por cada reserva una fila osea podias tener
Habitacion Desde Hasta
1 12/12/14 13/12/14
1 16/12/14 17/12/14
2 13/12/14 19/12/14
...
Y en base a eso tenias que calcular cuando estaba libre una habitación... jajaj gracias!

[Imagen: donacion1.jpg]
26-02-2015 10:52
Visita su sitio web Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Wolframp Sin conexión
Empleado del buffet
Sin estado :(
*

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 5
Agradecimientos dados: 0
Agradecimientos: 0 en 0 posts
Registro en: Oct 2011
Mensaje: #13
RE: [Pedido] Final Gestion de Datos 24/02/2015
Hola, muchas gracias por subir el final e ir tirando las resoluciones.

Quería consultarles porque me queda una duda con el ejercicio de los triggers 3b. Por que no tomaron en cuenta el trigger para el Update en la tabla de habitaciones??

Me parece que también se tendría que validar el caso en que me hagan un Update a un numero de habitación si existen reservas para esa habitación.

En el codigo de Nacho14:
"CREATE TRIGGER chequeoForeingKey
ON habitaciones
AFTER DELETE,UPDATE"

Saludos.
28-02-2015 19:17
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Martin. Sin conexión
Presidente del CEIT
Enjoy it !
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.380
Agradecimientos dados: 88
Agradecimientos: 296 en 137 posts
Registro en: Oct 2011
Mensaje: #14
RE: [Pedido] Final Gestion de Datos 24/02/2015
Porque harían un update del número de Habitación? ya que es la PK de esa tabla.
Incluso en el enunciado te dice que la Foreign Key está en Reservas, por lo que no es necesario el update del IdHabitacion de la tabla de Habitaciones.
"Desarrolle los triggers necesarios para emular una foreing key de resrevaciones a habitaciones sabiendo que ninguna posee constrains de ningun tipo"

Lo único que se está actualizando es el estado de la habitación que en este caso no se involucra en las validaciónes para la FK.

[Imagen: jQJfyBGh9SOmZ.png]
(Este mensaje fue modificado por última vez en: 28-02-2015 21:29 por Martin..)
28-02-2015 21:29
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] Martin. recibio 1 Gracias por este post
holautn (24-02-2016)
Aoshido Sin conexión
Campeon del cubo Rubik
Tamashi no Kijitsu
****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 135
Agradecimientos dados: 30
Agradecimientos: 90 en 24 posts
Registro en: Jul 2010
Mensaje: #15
RE: [Pedido] Final Gestion de Datos 24/02/2015
(28-02-2015 21:29)Martin. escribió:  Porque harían un update del número de Habitación? ya que es la PK de esa tabla.
Incluso en el enunciado te dice que la Foreign Key está en Reservas, por lo que no es necesario el update del IdHabitacion de la tabla de Habitaciones.
"Desarrolle los triggers necesarios para emular una foreing key de resrevaciones a habitaciones sabiendo que ninguna posee constrains de ningun tipo"

Lo único que se está actualizando es el estado de la habitación que en este caso no se involucra en las validaciónes para la FK.

Me parece tiene razon Wolframp.
El enuncidado decia claramente que ninguna de las dos tablas tenian constraints de ningun tipo, asi que habitaciones no tiene nada (PK) que me impida borrar/updatear un numero de habitacion.


Off-topic:
Igual creo que en este caso ambos casos estarian bien, seria la diferencia entre un bien y un bien menos.
02-03-2015 09:58
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Buscar en el tema
Enviar respuesta 




Usuario(s) navegando en este tema: 9 invitado(s)