Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Fase 2 Jesus Alexander Grupo5
Fase 2 Jesus Alexander Grupo5
Fase 2 Diseño
PRESENTADO POR.
JESUS ALEXANDER GUERRERO TERAN– 1085309905
No. Grupo:
301125_5
PRESENTADO A.
JHONATAN CAMILO DAVILA
TUTOR
Tabla de contenido
1. Entidades
2. Técnicas de normalización
3. Modelo relacional
4. Base de datos
5. Información de la base de datos
6. Consultas
7. Sentencias
DISEÑO DE PROYECTOS
INTRODUCCION
El trabajo trata de crear una base de datos aprender códigos e insertar información
también consultar que información tiene cada tabla para poder tener una base de
datos organizado
DISEÑO DE PROYECTOS
Objetivos
Tener la información clara aprender todo el tema de base de datos saber cómo
insertar la información y como consultarla, saber qué información necesitamos y
como consultarla
DISEÑO DE PROYECTOS
ACTIVIDAD A DESARROLLAR
7. Crear la base de datos relacional que responda a las necesidades del proyecto propuesto.
Para la creación de la BD, se debe hacer uso del lenguaje de definición de datos DDL y
tomando como insumo el diagrama relacional; se sugiere hacer uso de la herramienta
Oracle APEX.
8. CREATE TABLE programa (
9. id_programa INTEGER NOT NULL,
10. nombre VARCHAR2(80),
11. escuela_escuela_id NUMBER NOT NULL
12.);
13.
14.ALTER TABLE programa ADD CONSTRAINT programa_pk PRIMARY KEY (id_progra
ma );
15.
16.ALTER TABLE programa
17. ADD CONSTRAINT programa_escuela_fk FOREIGN KEY ( escuela_escuela_i
d )
DISEÑO DE PROYECTOS
18. REFERENCES escuela ( escuela_id );
19.
20.ALTER TABLE estudianteprograma
21. ADD CONSTRAINT estudianteprograma_programa_fk FOREIGN KEY (id_prog
rama )
22. REFERENCES programa (id_programa );
23.
24.INSERt INTO escuela(escuela_id,id_escuela,nombre) VALUES (1,1,'Escuela
de Ciencias Básicas, Tecnología e Ingeniería (ECBTI)')
25.INSERt INTO escuela(escuela_id,id_escuela,nombre) VALUES (2,1,'Adminis
trativas, Contables, Económicas y de Negocios')
26.
27. INSERT INTO programa(id_programa,nombre,escuela_escuela_id) values
(1,'INGENIERIA',1);
28. INSERT INTO programa (id_programa,nombre,escuela_escuela_id) values
(2,'Diseño Industrial',1);
29. INSERT INTO programa (id_programa,nombre,escuela_escuela_id) values
(3,'Ingeneria industrial',2);
30.
31. SELECT MIN(id_programa), nombre from programa group by nombre;
32. SELECT MIN(id_programa) from programa;
33. SELECT MAX(id_programa) from programa;
34. SELECT COUNT(id_programa)from programa;
35.
36. CREATE TABLE escuela (
37. escuela_id NUMBER NOT NULL,
38. id_escuela INTEGER,
39. nombre VARCHAR2(80)
40.);
41.
42.ALTER TABLE escuela ADD CONSTRAINT escuela_pk PRIMARY KEY ( escuela_id
);
43.
44.ALTER TABLE programa
45. ADD CONSTRAINT programa_escuela_fk FOREIGN KEY ( escuela_escuela_i
d )
46. REFERENCES escuela ( escuela_id );
47.
48.CREATE SEQUENCE escuela_escuela_id_seq START WITH 1 NOCACHE ORDER;
49.
50.CREATE OR REPLACE TRIGGER escuela_escuela_id_trg BEFORE
51. INSERT ON escuela
52. FOR EACH ROW
53. WHEN ( new.escuela_id IS NULL )
DISEÑO DE PROYECTOS
54. BEGIN
55. :new.escuela_id := escuela_escuela_id_seq.nextval;
56.END;
57.
58.CREATE TABLE estudianteprograma (
59. programa_id_programa INTEGER NOT NULL,
60. usuario_id_usuario INTEGER NOT NULL
61.);
62.
63.ALTER TABLE estudianteprograma ADD CONSTRAINT estudianteprograma_pk PR
IMARY KEY ( programa_id_programa,
64.
usuario_id_usuario );
65.
66.ALTER TABLE estudianteprograma
67. ADD CONSTRAINT estudianteprograma_programa_fk FOREIGN KEY ( progra
ma_id_programa )
68. REFERENCES programa ( id_programa );
69.
70.ALTER TABLE estudianteprograma
71. ADD CONSTRAINT estudianteprograma_usuario_fk FOREIGN KEY ( usuario
_id_usuario )
72. REFERENCES usuario ( id_usuario );
73.
74.CREATE TABLE usuario (
75. id_usuario INTEGER NOT NULL,
76. primernombre VARCHAR2(80),
77. segundonombre VARCHAR2(80),
78. primerapellido VARCHAR2(80),
79. documento DATE,
80. dirreccion DATE,
81. tipousuario_id_tipousuario INTEGER NOT NULL,
82. tipodocumento_id_tipodocumento INTEGER NOT NULL,
83. centro_atencion_id_centro_atencion INTEGER NOT NULL,
84. municipio_id_municipio INTEGER NOT NULL,
85. estadocivil_id_estadocivil INTEGER NOT NULL
86.);
87.
88.ALTER TABLE usuario ADD CONSTRAINT usuario_pk PRIMARY KEY ( id_usuario
);
89.
90.ALTER TABLE usuario
91. ADD CONSTRAINT usuario_centro_atencion_fk FOREIGN KEY ( centro_ate
ncion_id_centro_atencion )
92. REFERENCES centro_atencion ( id_centro_atencion );
DISEÑO DE PROYECTOS
93.
94.ALTER TABLE usuario
95. ADD CONSTRAINT usuario_estadocivil_fk FOREIGN KEY ( estadocivil_id
_estadocivil )
96. REFERENCES estadocivil ( id_estadocivil );
97.
98.ALTER TABLE usuario
99. ADD CONSTRAINT usuario_municipio_fk FOREIGN KEY ( municipio_id_mun
icipio )
100. REFERENCES municipio ( id_municipio );
101.
102. ALTER TABLE usuario
103. ADD CONSTRAINT usuario_tipodocumento_fk FOREIGN KEY ( tipodo
cumento_id_tipodocumento )
104. REFERENCES tipodocumento ( id_tipodocumento );
105.
106. ALTER TABLE usuario
107. ADD CONSTRAINT usuario_tipousuario_fk FOREIGN KEY ( tipousua
rio_id_tipousuario )
108. REFERENCES tipousuario ( id_tipousuario );
109.
110. INSERT INTO usuario (usuario_id,primernombre,segundonombre,prime
rapellido,documento,dirrecion) values (1,)
111.
112. CREATE TABLE centro_atencion (
113. id_centro_atencion INTEGER NOT NULL,
114. nombre VARCHAR2(100),
115. zona_id_zona INTEGER NOT NULL,
116. municipio_id_municipio INTEGER NOT NULL
117. );
118.
119. ALTER TABLE centro_atencion ADD CONSTRAINT centro_atencion_pk PR
IMARY KEY ( id_centro_atencion );
120.
121. ALTER TABLE centro_atencion
122. ADD CONSTRAINT centro_atencion_municipio_fk FOREIGN KEY ( mu
nicipio_id_municipio )
123. REFERENCES municipio ( id_municipio );
124.
125. ALTER TABLE centro_atencion
126. ADD CONSTRAINT centro_atencion_zona_fk FOREIGN KEY ( zona_id
_zona )
127. REFERENCES zona ( id_zona );
128.
129. ALTER TABLE estadocivil
DISEÑO DE PROYECTOS
130. ADD CONSTRAINT estadocivil_centro_atencion_fk FOREIGN KEY (
centro_atencion_id_centro_atencion )
131. REFERENCES centro_atencion ( id_centro_atencion );
132.
133. ALTER TABLE usuario
134. ADD CONSTRAINT usuario_centro_atencion_fk FOREIGN KEY ( cent
ro_atencion_id_centro_atencion )
135. REFERENCES centro_atencion ( id_centro_atencion );
136.
137. CREATE TABLE zona (
138. id_zona INTEGER NOT NULL,
139. nombre VARCHAR2(100)
140. );
141.
142. ALTER TABLE zona ADD CONSTRAINT zona_pk PRIMARY KEY ( id_zona );
143.
144. ALTER TABLE centro_atencion
145. ADD CONSTRAINT centro_atencion_zona_fk FOREIGN KEY ( zona_id
_zona )
146. REFERENCES zona ( id_zona );
147.
148. CREATE TABLE municipio (
149. id_municipio INTEGER NOT NULL,
150. nombre VARCHAR2(80),
151. departamento_id_departamento INTEGER NOT NULL
152. );
153.
154. ALTER TABLE municipio ADD CONSTRAINT municipio_pk PRIMARY KEY (
id_municipio );
155.
156. ALTER TABLE municipio
157. ADD CONSTRAINT municipio_departamento_fk FOREIGN KEY ( depar
tamento_id_departamento )
158. REFERENCES departamento ( id_departamento );
159.
160. ALTER TABLE centro_atencion
161. ADD CONSTRAINT centro_atencion_municipio_fk FOREIGN KEY ( mu
nicipio_id_municipio )
162. REFERENCES municipio ( id_municipio );
163.
164. ALTER TABLE usuario
165. ADD CONSTRAINT usuario_municipio_fk FOREIGN KEY ( municipio_
id_municipio )
166. REFERENCES municipio ( id_municipio );
167.
DISEÑO DE PROYECTOS
168. CREATE TABLE tipodocumento (
169. id_tipodocumento INTEGER NOT NULL
170. );
171.
172. ALTER TABLE tipodocumento ADD CONSTRAINT tipodocumento_pk PRIMAR
Y KEY ( id_tipodocumento );
173.
174. ALTER TABLE usuario
175. ADD CONSTRAINT usuario_tipodocumento_fk FOREIGN KEY ( tipodo
cumento_id_tipodocumento )
176. REFERENCES tipodocumento ( id_tipodocumento );
177.
178. CREATE TABLE estadocivil
179. (
180. id_estadocivil INTEGER NOT NULL,
181. nombre VARCHAR2 (80),
182. centro_atencion_id_centro_atencion INTEGER NOT NULL
183. );
184.
185. CREATE UNIQUE INDEX estadocivil__idxv1 ON
186. estadocivil (
187. centro_atencion_id_centro_atencion
188. ASC );
189.
190. ALTER TABLE estadocivil ADD CONSTRAINT estadocivil_pk PRIMARY KE
Y ( id_estadocivil );
191.
192. ALTER TABLE estadocivil
193. ADD CONSTRAINT estadocivil_centro_atencion_fk FOREIGN KEY (
centro_atencion_id_centro_atencion )
194. REFERENCES centro_atencion ( id_centro_atencion );
195.
196. ALTER TABLE usuario
197. ADD CONSTRAINT usuario_estadocivil_fk FOREIGN KEY ( estadoci
vil_id_estadocivil )
198. REFERENCES estadocivil ( id_estadocivil );
199.
200. CREATE TABLE asistenciasecion (
201. secion_id_secion INTEGER NOT NULL,
202. usuario_id_usuario INTEGER NOT NULL
203. );
204.
205. ALTER TABLE asistenciasecion ADD CONSTRAINT asistenciasecion_pk
PRIMARY KEY ( secion_id_secion,
DISEÑO DE PROYECTOS
206.
usuario_id_usuario );
207.
208. ALTER TABLE asistenciasecion
209. ADD CONSTRAINT asistenciasecion_secion_fk FOREIGN KEY ( seci
on_id_secion )
210. REFERENCES secion ( id_secion );
211.
212. ALTER TABLE asistenciasecion
213. ADD CONSTRAINT asistenciasecion_usuario_fk FOREIGN KEY ( usu
ario_id_usuario )
214. REFERENCES usuario ( id_usuario );
215.
216. CREATE TABLE secion (
217. id_secion INTEGER NOT NULL,
218. nombre VARCHAR2(80),
219. fecha DATE,
220. puntos DATE,
221. evaluacion DATE,
222. periodo_id_periodo INTEGER NOT NULL,
223. curso_id_curso INTEGER NOT NULL
224. );
225.
226. ALTER TABLE secion ADD CONSTRAINT secion_pk PRIMARY KEY ( id_sec
ion );
227.
228. ALTER TABLE secion
229. ADD CONSTRAINT secion_curso_fk FOREIGN KEY ( curso_id_curso
)
230. REFERENCES curso ( id_curso );
231.
232. ALTER TABLE secion
233. ADD CONSTRAINT secion_periodo_fk FOREIGN KEY ( periodo_id_pe
riodo )
234. REFERENCES periodo ( id_periodo );
235.
236. ALTER TABLE asistenciasecion
237. ADD CONSTRAINT asistenciasecion_secion_fk FOREIGN KEY ( seci
on_id_secion )
238. REFERENCES secion ( id_secion );
239.
240. CREATE TABLE curso (
241. id_curso INTEGER NOT NULL,
242. nombre VARCHAR2(80)
243. );
DISEÑO DE PROYECTOS
244.
245. ALTER TABLE curso ADD CONSTRAINT curso_pk PRIMARY KEY ( id_curso
);
246.
247. ALTER TABLE cursosmatriculados
248. ADD CONSTRAINT cursosmatriculados_curso_fk FOREIGN KEY ( cur
so_id_curso )
249. REFERENCES curso ( id_curso );
250.
251. ALTER TABLE secion
252. ADD CONSTRAINT secion_curso_fk FOREIGN KEY ( curso_id_curso
)
253. REFERENCES curso ( id_curso );
254.
255. CREATE TABLE cursosmatriculados (
256. curso_id_curso INTEGER NOT NULL,
257. periodo_id_periodo INTEGER NOT NULL,
258. usuario_id_usuario INTEGER NOT NULL
259. );
260.
261. ALTER TABLE cursosmatriculados
262. ADD CONSTRAINT cursosmatriculados_pk PRIMARY KEY ( curso_id_
curso,
263. periodo_i
d_periodo,
264. usuario_i
d_usuario );
265.
266. ALTER TABLE cursosmatriculados
267. ADD CONSTRAINT cursosmatriculados_curso_fk FOREIGN KEY ( cur
so_id_curso )
268. REFERENCES curso ( id_curso );
269.
270. ALTER TABLE cursosmatriculados
271. ADD CONSTRAINT cursosmatriculados_periodo_fk FOREIGN KEY ( p
eriodo_id_periodo )
272. REFERENCES periodo ( id_periodo );
273.
274. ALTER TABLE cursosmatriculados
275. ADD CONSTRAINT cursosmatriculados_usuario_fk FOREIGN KEY ( u
suario_id_usuario )
276. REFERENCES usuario ( id_usuario );
277.
278. CREATE TABLE periodo (
279. id_periodo INTEGER NOT NULL,
DISEÑO DE PROYECTOS
280. nombre VARCHAR2(80),
281. fechainicio DATE,
282. fechafinal DATE
283. );
284.
285. ALTER TABLE periodo ADD CONSTRAINT periodo_pk PRIMARY KEY ( id_p
eriodo );
286.
287. ALTER TABLE cursosmatriculados
288. ADD CONSTRAINT cursosmatriculados_periodo_fk FOREIGN KEY ( p
eriodo_id_periodo )
289. REFERENCES periodo ( id_periodo );
290.
291. ALTER TABLE secion
292. ADD CONSTRAINT secion_periodo_fk FOREIGN KEY ( periodo_id_pe
riodo )
293. REFERENCES periodo ( id_periodo );
294.
295. CREATE TABLE periodo_academico (
296. id_periodo_academico INTEGER NOT NULL,
297. nombre VARCHAR2(10),
298. fecha_inicio DATE,
299. fecha_cierre DATE
300. );
301.
302. ALTER TABLE periodo_academico ADD CONSTRAINT periodo_academico_p
k PRIMARY KEY ( id_periodo_academico );
303.
304. CREATE TABLE rol_usuario (
305. id_rol_usuario INTEGER NOT NULL,
306. nombre VARCHAR2(20)
307. );
308.
309. ALTER TABLE rol_usuario ADD CONSTRAINT rol_usuario_pk PRIMARY KE
Y ( id_rol_usuario );
310.
311. CREATE TABLE departamento (
312. id_departamento INTEGER NOT NULL,
313. nombre VARCHAR2(50) NOT NULL
314. );
315.
316. ALTER TABLE departamento ADD CONSTRAINT departamento_pk PRIMARY
KEY ( id_departamento );
317.
318. ALTER TABLE municipio
DISEÑO DE PROYECTOS
319. ADD CONSTRAINT municipio_departamento_fk FOREIGN KEY ( depar
tamento_id_departamento )
320. REFERENCES departamento ( id_departamento );
321.
322. CREATE TABLE tipousuario (
323. id_tipousuario INTEGER NOT NULL,
324. nombre VARCHAR2(80)
325. );
326.
327. ALTER TABLE tipousuario ADD CONSTRAINT tipousuario_pk PRIMARY KE
Y ( id_tipousuario );
328.
329. ALTER TABLE usuario
330. ADD CONSTRAINT usuario_tipousuario_fk FOREIGN KEY ( tipousua
rio_id_tipousuario )
331. REFERENCES tipousuario ( id_tipousuario );
332.
333. CREATE TABLE usuariodocente (
334. perfil VARCHAR (80) NOT NULL,
335. usuario_id_usuario INTEGER NOT NULL
336. );
337.
338. ALTER TABLE usuariodocente ADD CONSTRAINT usuariodocente_pk PRIM
ARY KEY ( usuario_id_usuario );
339.
340. ALTER TABLE usuariodocente
341. ADD CONSTRAINT usuariodocente_usuario_fk FOREIGN KEY ( usuar
io_id_usuario )
342. REFERENCES usuario ( id_usuario );
343.
344. INSERT INTO usuariodocente (usuario_id_usuario,perfil) VALUES (1
,'TUTOR')
INSERT INTO
DISEÑO DE PROYECTOS
Select min
DISEÑO DE PROYECTOS
DISEÑO DE PROYECTOS
JOIN
DISEÑO DE PROYECTOS
Conclusiones
Se evidencia una forma de crear una base de datos ordenada donde la entidades se
relacionen entre si para poder sacar información clara y necesaria que nos conllevara a
tener claro
DISEÑO DE PROYECTOS