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
[APORTE] [Gestión de Datos] Final 26/02/2013
Autor Mensaje
alan2506 Sin conexión
Campeon del cubo Rubik

****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 117
Agradecimientos dados: 23
Agradecimientos: 239 en 38 posts
Registro en: Feb 2011
Mensaje: #1
[APORTE] [Gestión de Datos] Final 26/02/2013 Finales Gestión de Datos
Gente, les dejo el Final de Gestión de Datos de la fecha pasada (26/02/13), saludoos! thumbup3

Final GDD 26/02/13:


.docx  Final GDD 26-02-13.docx (Tamaño: 21,58 KB / Descargas: 748)
(Este mensaje fue modificado por última vez en: 02-03-2013 16:25 por alan2506.)
02-03-2013 16:00
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] alan2506 recibio 16 Gracias por este post
matiasGorosito (03-03-2013), ibarjoaquin (04-03-2013), facditul (05-03-2013), fedevega (09-03-2013), Danlco (18-05-2013), Maxter (19-05-2013), donleopardo (06-07-2013), ortiba (16-08-2013), Cybermac (21-09-2013), martintama (17-11-2013), sebasdp (24-11-2013), Ale88 (19-02-2014), aleixen (12-01-2015), cariddi (01-03-2015), Sir Ulrich (06-03-2017), CarooLina (07-02-2018)
Maxter Sin conexión
Presidente del CEIT
Free
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.103
Agradecimientos dados: 129
Agradecimientos: 82 en 31 posts
Registro en: Dec 2009
Mensaje: #2
RE: [APORTE] [Gestión de Datos] Final 26/02/2013
El punto 3.a)

Cita:CLIENTES
IdCliente (pk) int NOT NULL
Nombre char(100) null
Apellido char(100) null
DNI number null
Mail char(50) null
Genero char (1) null
Localidad char(50) null

Validar sin modificar las estructuras vigentes, que si el valor del campo DNI posee datos este no puede ser igual al de otro cliente, se sabe de antemano que falta el valor de DNI para más de 100 clientes.

Alguien hizo este final?
Cómo se valida el campo DNI? por que con UNIQUE no permitiría que haya nulls, entonces la idea es que se haga un trigger?
....

[Imagen: firma_valkiria3.jpg]
19-05-2013 18:30
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
gonnza Sin conexión
User Verde

*********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 17.356
Agradecimientos dados: 900
Agradecimientos: 887 en 356 posts
Registro en: Mar 2010
BlogSpot Google+ YouTube
Mensaje: #3
RE: [APORTE] [Gestión de Datos] Final 26/02/2013
con un trigger podria ser tranquilamente, verificas que un select de todos los otros datos te de 0


igual, la respuesta creo es con un check constraint

http://www.w3schools.com/sql/sql_check.asp


aunque no se si eso implica "modificar la estructura de la tabla" =P

suponiendo que si (para agregarlo es un alter table) la opcion si, seria un trigggggggger

me rectifico, con un check constraint no. Asique si, la tapos es un triggggger

[Imagen: v34BEFt.gif]
(Este mensaje fue modificado por última vez en: 19-05-2013 19:20 por gonnza.)
19-05-2013 19:07
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
MSC Sin conexión
Militante
Sin estado :(
***

-----
-----

Mensajes: 83
Agradecimientos dados: 27
Agradecimientos: 12 en 10 posts
Registro en: Aug 2012
Mensaje: #4
RE: [APORTE] [Gestión de Datos] Final 26/02/2013
El pto b)

puede ser q la respuesta sea el item V ??

Gracias!
21-05-2013 02:01
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Maxter Sin conexión
Presidente del CEIT
Free
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.103
Agradecimientos dados: 129
Agradecimientos: 82 en 31 posts
Registro en: Dec 2009
Mensaje: #5
RE: [APORTE] [Gestión de Datos] Final 26/02/2013
(21-05-2013 02:01)MSC escribió:  El pto b)

puede ser q la respuesta sea el item V ??

Gracias!

El 3.b decís?
Yo lo probé y si la tabla LOCALIDADES está vacía no devuelve nada, sería la opción II
y la justificación sería que al ser un JOIN entre clientes y localidades, y siendo está última una tabla vacía el producto cartesiano de ambas tablas es 0 (?)

[Imagen: firma_valkiria3.jpg]
21-05-2013 10:43
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
MSC Sin conexión
Militante
Sin estado :(
***

-----
-----

Mensajes: 83
Agradecimientos dados: 27
Agradecimientos: 12 en 10 posts
Registro en: Aug 2012
Mensaje: #6
RE: [APORTE] [Gestión de Datos] Final 26/02/2013
lo volví a hacer , lo probe
y me da como a vos, la respuesta seria la II "no devuelve filas"
21-05-2013 10:47
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
gonnza Sin conexión
User Verde

*********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 17.356
Agradecimientos dados: 900
Agradecimientos: 887 en 356 posts
Registro en: Mar 2010
BlogSpot Google+ YouTube
Mensaje: #7
RE: [APORTE] [Gestión de Datos] Final 26/02/2013
un join con una tabla vacia no devuelve nada, si es INNER JOIN

si es left join y la tabla vacia es la de la derecha (onda select.. from A left join B.. y B esta vacia) devuelve las filas de A

[Imagen: v34BEFt.gif]
21-05-2013 10:56
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Becaxs Sin conexión
Campeon del cubo Rubik
Sin estado :(
****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 121
Agradecimientos dados: 32
Agradecimientos: 73 en 27 posts
Registro en: Dec 2009
Mensaje: #8
RE: [APORTE] [Gestión de Datos] Final 26/02/2013
Buenas, a ver si alguno me da una mano...

El 3.a) Podria ser algo asi? No me termina de convencer, a ver si alguno me lo puede corregir




CREATE TRIGGER Validar
ON clientes
AFTER INSERT OR UPDATE
FOR EACH ROW

BEGIN
IF(not null(:new.dni) AND EXISTS(SELECT dni FROM clientes WHERE dni = :new.dni)
RAISE ERROR ('Son iguales')

END;


(Este mensaje fue modificado por última vez en: 06-08-2013 00:28 por Becaxs.)
06-08-2013 00:27
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
gonnza Sin conexión
User Verde

*********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 17.356
Agradecimientos dados: 900
Agradecimientos: 887 en 356 posts
Registro en: Mar 2010
BlogSpot Google+ YouTube
Mensaje: #9
RE: [APORTE] [Gestión de Datos] Final 26/02/2013
el raise error tiene rollback incluido ??

yo haria igual un instead of insert or update mas que un after

y haria el insert una vez comprobado el if de que puedo hacerlo

[Imagen: v34BEFt.gif]
(Este mensaje fue modificado por última vez en: 06-08-2013 00:32 por gonnza.)
06-08-2013 00:32
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Becaxs Sin conexión
Campeon del cubo Rubik
Sin estado :(
****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 121
Agradecimientos dados: 32
Agradecimientos: 73 en 27 posts
Registro en: Dec 2009
Mensaje: #10
RE: [APORTE] [Gestión de Datos] Final 26/02/2013
Ahh claro. Ahi va mejor si! Gracias!
06-08-2013 00:39
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
NathanDrake Sin conexión
Profesor del Modulo A
...
*****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 399
Agradecimientos dados: 16
Agradecimientos: 91 en 23 posts
Registro en: Apr 2010
Mensaje: #11
RE: [APORTE] [Gestión de Datos] Final 26/02/2013
(06-08-2013 00:32)gonnza escribió:  el raise error tiene rollback incluido ??

yo haria igual un instead of insert or update mas que un after

y haria el insert una vez comprobado el if de que puedo hacerlo

No sería más fácil hacer un BEFORE? Si no cumple la restricción tirás error y sino pasa el trigger como si nada

PD: Pregunto desde la ignorancia eh..
06-08-2013 01:25
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
gonnza Sin conexión
User Verde

*********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 17.356
Agradecimientos dados: 900
Agradecimientos: 887 en 356 posts
Registro en: Mar 2010
BlogSpot Google+ YouTube
Mensaje: #12
RE: [APORTE] [Gestión de Datos] Final 26/02/2013
el before no existe en sql server (t-sql es sql server)

podras decir "en mysql si existe!" pero mysql no es t-sql Ye

IMAGINO que si aclaras que es mysql te lo aceptaran como valido, pero la sintaxis creo (CREO) que cambia levemente (por ej va un ";" al final de cada sentencia)

[Imagen: v34BEFt.gif]
(Este mensaje fue modificado por última vez en: 06-08-2013 09:57 por gonnza.)
06-08-2013 09:57
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
IgnacioM Sin conexión
Empleado del buffet
Sin estado :(
*

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 5
Agradecimientos dados: 2
Agradecimientos: 0 en 0 posts
Registro en: Mar 2011
Mensaje: #13
RE: [APORTE] [Gestión de Datos] Final 26/02/2013
Hola! Alguien podria decirme si esto esta bien para el punto 3.A. Tengo 0 practica con triggers y no se si lo uso bien. Gracias!

CREATE TRIGGER IntegridadDni
ON Clientes
FOR INSERT, UPDATE AS

IF (SELECT COUNT(inserted.DNI) from inserted
WHERE EXISTS (SELECT DNI from clientes where DNI=inserted.DNI) ) >=1
BEGIN
RAISEERROR(´DNI DUPLICADO')
ROLLBACK TRANSACTION
END
18-02-2014 14:21
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
gonnza Sin conexión
User Verde

*********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 17.356
Agradecimientos dados: 900
Agradecimientos: 887 en 356 posts
Registro en: Mar 2010
BlogSpot Google+ YouTube
Mensaje: #14
RE: [APORTE] [Gestión de Datos] Final 26/02/2013
IgnacioM no estas indicando que tipo de trigger es (After, instead of)

Imagino que quisiste hacer "After", porque si fuera Instead of te estaría faltando el insert en caso de que no haya duplicados (acordate que el instead of reemplaza totalmente el insert/update/delete)

[Imagen: v34BEFt.gif]
18-02-2014 14:24
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] gonnza recibio 1 Gracias por este post
IgnacioM (18-02-2014)
IgnacioM Sin conexión
Empleado del buffet
Sin estado :(
*

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 5
Agradecimientos dados: 2
Agradecimientos: 0 en 0 posts
Registro en: Mar 2011
Mensaje: #15
RE: [APORTE] [Gestión de Datos] Final 26/02/2013
Tenia entendido que poner "FOR" era lo mismo que poner "AFTER". Quizas tenia entendido cualquier cosa jaja
18-02-2014 14:51
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: 1 invitado(s)