Advertisement
Guest User

Untitled

a guest
Jun 23rd, 2017
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.31 KB | None | 0 0
  1. create database Lab108892LobbiaLaulhe2
  2. use Lab108892LobbiaLaulhe2
  3.  
  4. create table estadocivil(
  5. id_estado_civil int identity(0,1),
  6. estado_civil varchar(50)
  7. constraint pk_estado_civil primary key(id_estado_civil)
  8. );
  9. create table tipos_licencia(
  10. id_tipo int identity(0,1),
  11. nombre varchar(50)
  12.  
  13. constraint pk_tipolicencia primary key(id_tipo)
  14. )
  15.  
  16.  
  17. create table licencia(
  18. id_licencia int identity(0,1),
  19. id_legajo int,
  20. id_tipo int,
  21. goce_sueldo bit,
  22. fec_inicio datetime,
  23. duracion int
  24.  
  25. constraint pk_licencia primary key(id_licencia)
  26. constraint fk_tipolicencia foreign key (id_tipo) references tipos_licencia(id_tipo),
  27. constraint fk_licenciaempleado foreign key(id_legajo) references empleados(id_legajo)
  28. )
  29. create table categorias(
  30. id_categoria int identity(0,1),
  31. nombre varchar(50)
  32. constraint pk_categoria primary key(id_categoria)
  33. )
  34.  
  35. create table empleados(
  36. id_legajo int identity(0,1),
  37. nombre varchar(50),
  38. id_categoria int,
  39. id_estado_civil int,
  40. cantidad_hijos int,
  41. sueldo_prom float,
  42. constraint pk_id_legajo primary key(id_legajo),
  43. constraint fk_civilempleado foreign key (id_estado_civil) references estadocivil(id_estado_civil),
  44. constraint fk_categorias foreign key(id_categoria) references categorias(id_categoria)
  45. )
  46.  
  47.  
  48. insert into empleados(id_legajo,nom)
  49. insert into categorias (nombre) values ('A')
  50. insert into categorias (nombre) values ('B')
  51. insert into categorias (nombre) values ('C')
  52. insert into categorias (nombre) values ('D')
  53. insert into categorias (nombre) values ('E')
  54.  
  55. insert into tipos_licencia(nombre) values( 'Sin licencia')
  56. insert into tipos_licencia(nombre) values( 'Maternidad')
  57. insert into tipos_licencia(nombre) values( 'Vacaciones')
  58. insert into tipos_licencia(nombre) values( 'Enfermedad')
  59.  
  60.  
  61.  
  62. insert into estadocivil(estado_civil)values('Soltero')
  63. insert into estadocivil(estado_civil)values('Casado')
  64. insert into estadocivil(estado_civil)values('Viudo')
  65. insert into estadocivil(estado_civil)values('Divorciado')
  66.  
  67. insert into licencia (id_legajo,id_tipo, goce_sueldo, fec_inicio,duracion) values(0,0,1,'23/06/2017',10)
  68.  
  69. insert into empleados(nombre,id_categoria,id_estado_civil,cantidad_hijos,sueldo_prom)values('Carlos Gomez',0,0,2,500)
  70.  
  71.  
  72.  
  73. --Seleccionar licencias con el tipo de licencia en string
  74. select id_licencia,T.nombre,goce_sueldo,fec_inicio,duracion from licencia L inner join tipos_licencia T on L.id_tipo = T.id_tipo
  75. --Seleccionar el empleado con el estado civil, el tipo de licencia y la categoria en string
  76. select id_legajo,E.nombre,EC.estado_civil,cantidad_hijos,sueldo_prom,TL.nombre,C.nombre
  77. from empleados E inner join estadocivil EC on E.id_estado_civil = EC.id_estado_civil inner join licencia L on E.id_licencia = L.id_licencia inner join tipos_licencia TL on L.id_tipo = TL.id_tipo
  78. inner join categorias C on E.id_categoria = C.id_categoria
  79.  
  80. --seleccionar todo el empleado con toda su licencia
  81. select id_legajo,E.nombre,E.id_licencia,TL.nombre,L.goce_sueldo,L.fec_inicio,L.duracion
  82. from empleados E inner join estadocivil EC on E.id_estado_civil = EC.id_estado_civil inner join licencia L on E.id_licencia = L.id_licencia inner join tipos_licencia TL on L.id_tipo = TL.id_tipo
  83. inner join categorias C on E.id_categoria = C.id_categoria
  84.  
  85. select TL.nombre,goce_sueldo,fec_inicio,duracion from Licencia L inner join tipos_licencia TL on L.id_tipo = TL.id_tipo
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement