0% encontró este documento útil (0 votos)
3 vistas108 páginas

Guía Programación en Java - Módulo III

El documento presenta el Módulo III de Programación en JAVA, enfocado en Bases de Datos, diseñado para estudiantes de quinto semestre del Colegio de Bachilleres del Estado de Baja California. Se busca desarrollar competencias laborales y habilidades para la vida y el trabajo, promoviendo un enfoque integral en la educación que incluye aspectos emocionales, cívicos y técnicos. Además, se detalla el contenido del módulo, incluyendo fundamentos de bases de datos y la elaboración de interfaces de usuario.

Cargado por

Ricardo Torres
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
3 vistas108 páginas

Guía Programación en Java - Módulo III

El documento presenta el Módulo III de Programación en JAVA, enfocado en Bases de Datos, diseñado para estudiantes de quinto semestre del Colegio de Bachilleres del Estado de Baja California. Se busca desarrollar competencias laborales y habilidades para la vida y el trabajo, promoviendo un enfoque integral en la educación que incluye aspectos emocionales, cívicos y técnicos. Además, se detalla el contenido del módulo, incluyendo fundamentos de bases de datos y la elaboración de interfaces de usuario.

Cargado por

Ricardo Torres
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Programación en JAVA

MÓDULO III: BASES DE DATOS

DATOS DE IDENTIFICACIÓN

Nombre:

Plantel:

Matrícula: Grupo: Teléfono:

Quinto semestre AGOSTO DE 2025


Marina Del Pilar Ávila Olmeda
GOBERNADORA DEL ESTADO DE BAJA CALIFORNIA

Irma Martínez Manríquez


SECRETARIA DE EDUCACIÓN DEL ESTADO DE BAJA CALIFORNIA

Alejandro Rosales Sotelo


SUBSECRETARIO DE EDUCACIÓN MEDIA SUPERIOR, SUPERIOR E INVESTIGACIÓN

Gerardo Arturo Solís Benavides


DIRECTOR GENERAL DEL COLEGIO DE BACHILLERES DEL ESTADO DE BAJA CALIFORNIA

Juan Gabriel Haro Beltrán


DIRECTOR DE PLANEACIÓN ACADÉMICA DEL CBBC

Programación en JAVA (MEPEO)


Módulo III: Bases de datos.
Edición, agosto de 2019, diseñado por: Cristel Escalante Gutiérrez
José Jonathan Pérez Castro
Patricia Palomares Varela
Rosa Guadalupe Nieblas Pérez

Edición, agosto de 2020, actualizado por: Cristel Escalante Gutiérrez


Elsa Miriam Orduño Rodríguez
Julio César García Jiménez

Edición, agosto de 2021, actualizado por: Elsa Miriam Orduño Rodríguez


Román Saíd Dávila Zamudio

PROGRAMACIÓN EN JAVA (NEM)

Módulo III: Bases de datos


Edición, agosto de 2025
Revisado por:
José Jonathan Pérez Castro
Marcelina Hernández Prado

En la realización del presente material, participaron:

ENCARGADO DE DESPACHO DEL DEPARTAMENTO DE ACTIVIDADES EDUCATIVAS


Alfredo Sánchez Orozco

PROGRAMA DE DESARROLLO EDUCATIVO

Alma Rosalía López Valdez


Diana Castillo Ceceña
Angélica Huerta Sánchez
Guadalupe Figueroa Romero

La presente edición es propiedad del


Colegio de Bachilleres del Estado de Baja California,
Prohibida la reproducción total o parcial de esta obra

Este material fue elaborado bajo la coordinación y supervisión de la


Dirección de Planeación Académica del Colegio de Bachilleres del Estado de Baja California.
Blvd. Anáhuac #936, Centro Cívico, Mexicali, B.C., México
[Link]
Índice
Presentación

Enfoque de la capacitación

Mapa de la capacitación

Competencias Laborales Básicas

Habilidades para la Vida y el Trabajo

Conceptos Centrales de la Educación para el Desarrollo Sostenible (CoCEDS)

Propósito del módulo

SUBMÓDULO 1: FUNDAMENTOS DE BASES DE DATOS 13

ELABORA INTERFACES DE USUARIO CON CONEXIÓN A


SUBMÓDULO 2: BASES DE DATOS
81

REFERENCIAS 101
Presentación
Joven Bachiller:

La Nueva Escuela Mexicana tiene como eje fundamental la transformación social y plantea ir más
allá de los conocimientos que debes adquirir además de desarrollar otros aspectos como son lo
emocional, lo físico, lo moral, lo artístico, como parte de tu historia de vida, así como en lo social y
en lo cívico; por esta razón se tiene como propósito fundamental educar integralmente.

Los jóvenes que el Marco Curricular Común de la Educación Media Superior (MCCEMS) desea
formar serán:

• Mexicanos que tengan amor al país, a su cultura e historia, ciudadanos responsables que se
asuman como agentes de transformación social y orgullosos de su identidad nacional, pero
conscientes de los procesos y problemas globales, y dispuestos a participar en actividades
individuales, comunitarias, escolares y culturales.

• Formados en actividades y valores, con pleno respeto a los derechos humanos y, principalmente,
practicantes y promotores de la HONESTIDAD. Lo cual permitirá la convivencia de manera
asertiva, respetuosa y solidaria, basada en el diálogo y el acuerdo pacífico.

• Estudiantes capaces de construir a lo largo de su trayectoria los conocimientos, las capacidades,


habilidades y destrezas necesarias para conocer, comprender y explicar los diversos procesos
sociales y naturales, y sean conscientes de los diversos caminos que han hecho posible que
la humanidad tenga los niveles actuales de desarrollo, cultura y organización.

De acuerdo a lo anterior, las Guías de Actividades del Alumno de las diferentes Unidades de
Aprendizaje Curricular (UAC) del Componente de Formación Laboral Básico, fueron adecuadas
conforme a los lineamientos pedagógicos del MCCEMS, sin embargo se mantienen bajo el
enfoque de competencias.

El presente documento fue elaborado pensando en ti, en tus necesidades e inquietudes, como un
instrumento que te apoye ahora que estudias el bachillerato. Tiene la finalidad de que conozcas
la forma de trabajo y los recursos didácticos indispensables en el bachillerato, en sus páginas
encontrarás diversas temáticas, contenidos y actividades que son fundamentales para que paso a
paso puedas alcanzar las metas de aprendizaje planteadas al interior de cada UAC.

Ahora te toca a ti, obtener el mayor provecho a esta guía de actividades, que es fruto del esfuerzo
de un grupo de profesores especialistas en su área. Si lo aprovechas al máximo y lo combinas con
el apoyo de tus maestras y maestros y de los demás recursos didácticos que están a tu alcance,
seguramente ampliarás tus conocimientos y habilidades para construir un mejor futuro para ti, y
coadyuvar al desarrollo de tu comunidad, de tu estado y de nuestro México.

¡Te deseamos éxito en esta importante etapa de tu formación, el bachillerato!


ENFOQUE DE LA CAPACITACIÓN

La Formación Laboral Básica de Programación en Java pertenece al Recurso Sociocognitivo de


Cultura Digital, el cual tiene como propósito promover en el estudiantado el pensar y reflexionar
sobre las aplicaciones y los efectos de la tecnología, la capacidad de adaptarse a la diversidad
y disponibilidad de los contextos y circunstancias de las y los estudiantes. El propósito es que
puedan hacer uso de los recursos tecnológicos (TICCAD, entre otras) para seleccionar, procesar,
analizar y sistematizar la información dentro de un marco normativo y de seguridad, y fomenten
el uso de dichos recursos de forma responsable en el entorno que lo rodea. Por otra parte, las
Tecnologías de la Información y Comunicación se vinculan de manera interdisciplinar tanto con
Pensamiento Matemático como con Comunicación, ya que aportan los elementos para la resolución
de problemas mediante los algoritmos y la programación.

El propósito general de la capacitación de Programación en Java es que el estudiantado desarrolle


la capacidad para proponer soluciones a problemas mediante el diseño y el desarrollo de proyectos
en programación, en conjunto con las Tecnologías de la Información y la Comunicación, de forma
creativa e innovadora, con una postura ética y responsable como ciudadano digital.

El uso de las Tecnologías de la Información y Comunicación, desde la capacitación de Programación


en Java, destaca el manejo avanzado de las aplicaciones de software y hardware para la
resolución de problemas de los diferentes ámbitos de la vida cotidiana, desarrollando los aspectos
metodológicos, creativos y comunicativos, mostrando un comportamiento propositivo en beneficio
personal y de la sociedad.

Por lo anterior, se destaca que en este Módulo III, Bases de Datos, impartido en quinto semestre,
el estudiantado aprenderá a gestionar bases de datos, reconociendo la utilidad y ventajas en la
organización y manipulación de información, además de comparar los Sistemas Gestores de Bases
de Datos, para la selección del más útil de acuerdo a las necesidades que se deseen solventar.

Es importante señalar que la capacitación de Programación en Java busca desarrollar en el alumnado


las competencias profesionales en las áreas de aplicaciones y las comunicaciones mediante redes
informáticas, el desarrollo de sistemas y el software de diseño, sin olvidar la interdisciplinariedad
y los ejes transversales de vinculación laboral, emprendimiento e iniciar, continuar y concluir sus
estudios a nivel superior.
MAPA DE CAPACITACIÓN

HORAS
MÓDULO SUBMÓDULO
DOCENTE

SM1: Programación I 4 hrs.


M1. Introducción a la
programación
SM2: Programación II 3 hrs.

SM1: Introducción a la programación orientada a


3 hrs.
M2. Programación objetos
orientada a objetos
SM2: Clases y objetos 4 hrs.

SM1: Fundamentos de bases de datos 4 hrs.


M3. Bases de datos
SM2: Elabora interfaces de usuario con conexión a
3 hrs.
bases de datos

SM1: Introducción a aplicaciones web 4 hrs.


M4. Aplicaciones web y
móviles
SM2: Elabora aplicaciones móviles 3 hrs.
COMPETENCIAS LABORALES BÁSICAS CLAVE

Emplea los conceptos básicos de programación para diseñar programas encargados de


definir y administrar el comportamiento de dispositivos, a través del uso de los elementos
CLBP1
de programación, con una actitud investigadora, de acuerdo a las necesidades del
entorno, con una postura ética y responsable como ciudadano digital.

Ejemplifica sistemas básicos de programación para describir el conjunto de acciones


consecutivas o instrucciones que se deben ejecutar mediante el uso de equipo
CLBP2
informático que permita la resolución de problemas de su contexto, de forma creativa y
emprendedora.

Diseña bases de datos, que permitan el acceso a información actualizada y precisa,


mediante la aplicación de sistemas de administración de bases de datos, para gestionar
CLBP3
grandes ficheros y facilitar la consulta de información, de manera organizada y tomando
decisiones de manera responsable en beneficio de su entorno.

Desarrolla aplicaciones web para obtener, procesar y difundir información, haciendo


uso de la arquitectura cliente-servidor, desarrollando habilidades creativas en pro de su CLBP4
contexto personal y social, con un sentido crítico, autocrítico y ético.

Integra estructuras de programación, para la implementación de proyectos innovadores,


a través del uso del lenguaje de programación y de herramientas digitales, que permita
contribuir con eficiencia en el logro de los objetivos planteados de acuerdo al entorno CLBP5
en donde se desarrolla, mostrando una actitud perseverante, asumiendo la frustración
como parte de un proceso.
HABILIDADES PARA LA VIDA Y EL TRABAJO

Habilidades
Dimensión Habilidad Definición
relacionadas
Capacidad para
compartir significados,
deseos, necesidades y 1.1.1 Autoconocimiento
preocupaciones de forma 1.1.2 Empatía
1.1 Comunicación
verbal, no verbal o escrita, 1.1.3 Colaboración
a través del intercambio de 1.1.4 Trabajo en equipo
información y comprensión
común.
1.2.1 Toma de
Habilidades para reconocer decisiones
1.2 Regulación de y regular la expresión de 1.2.2 Resolución de
1. Empoderamiento emociones emociones, sentimientos e problemas
impulsos de manera efectiva. 1.2.3 Empatía
1.2.4 Comunicación
Conocimiento y comprensión
de sí mismo, toma
1.3.1 Autoestima
de conciencia sobre
1.3.2 Empatía
motivaciones, necesidades,
1.3.3 Confianza
1.3 Autoconocimiento valores, pensamientos
1.3.4 Regulación de
y emociones propias;
emociones
identificación de las propias
1.3.5 Autoeficacia
fortalezas, limitaciones y
potencialidades.
2.1.1 Comunicación
Capacidad para establecer 2.1.2 Conciencia social
relaciones interpersonales 2.1.3 Empatía
2.1 Colaboración y sanas y armónicas con 2.1.4 Regulación de
trabajo en equipo personas y grupos diversos, emociones
que lleven al logro de metas 2.1.5 Asertividad
grupales. 2.1.6 Resolución de
problemas.
2.2.1 Empatía
Habilidad para adoptar la
2.2.2 Respeto por la
perspectiva de otras personas
diversidad
2. Ciudadanía activa con antecedentes y culturas
2.2 Conciencia social 2.2.3 Colaboración
distintas; implica sentir
2.2.4 Comunicación
empatía y entender formas
2.2.5 Resolución de
sociales.
problemas
2.3.1 Respeto por la
Capacidad de comprender los diversidad
sentimientos y emociones de 2.3.2 Resolución de
2.3 Empatía los demás sin juzgarles, y ser conflictos
capaz de experimentarlas por 2.3.3 Comunicación
sí mismo. 2.3.4 Colaboración
2.3.5 Trabajo en equipo.
Habilidades
Dimensión Habilidad Definición
relacionadas
3.1.1 Resolución de
Capacidad de generar, problemas
articular o aplicar ideas, 3.1.2 Manejo de
3.1 Creatividad técnicas y perspectivas emociones
innovadoras, ya sea de forma 3.1.3 Toma de
individual o colaborativa. decisiones
3.1.4 Autonomía.
Capacidad para identificar 3.2.1 Toma de
una dificultad, tomar medidas decisiones
lógicas a fin de encontrar 3.2.2 Conciencia social
3.2 Resolución de
una solución deseada, así 3.2.3 Creatividad
problemas
3. Aprendizaje como supervisar y evaluar 3.2.4 Empatía
la implementación de tal 3.2.5 Pensamiento
solución. crítico
3.3.1 Autoconocimiento
3.3.2 Resolución de
Conocimientos sobre los problemas
talentos y habilidades que 3.3.3 Toma de
3.3 Mentalidad de
son maleables y se pueden decisiones
crecimiento
desarrollar con esfuerzo, 3.3.4 Autonomía en el
perseverancia y práctica. trabajo
3.3.5 Regulación de
emociones.
4.1.1 Autoconocimiento
Proceso sistemático de 4.1.2 Regulación de
elección entre un conjunto emociones
4.1 Toma de
de alternativas, con base 4.1.3 Comunicación
decisiones
en criterios específicos e 4.1.4 Resolución de
información disponible. problemas
4.1.5 Logro de metas.
Capacidad para establecer,
planificar y trabajar para el 4.2.1 Persistencia
logro de objetivos a corto y 4.2.2 Resolución de
largo plazo, con criterios de problemas
éxito tangibles e intangibles. 4.2.3 Regulación de
4.2 Logro de metas
4. Empleabilidad Implica organizar el emociones
trabajo, gestionar el tiempo 4.2.4 Autoconocimiento
adecuadamente y sostener 4.2.5 Autonomía
la motivación, el impulso y el 4.2.6 Propósito.
compromiso.
Capacidad de aplicar 4.3.1 Resolución de
aprendizaje personal (qué problemas
y cómo aprendemos) y 4.3.2 Creatividad
4.3 Autonomía en el hacer uso de la orientación 4.3.3 Toma de
trabajo para buscar continuamente decisiones
el aprendizaje de nuevos 4.3.4 Autoconocimiento
conocimientos y habilidades 4.3.5 Regulación de
para mejorar. emociones.
CONCEPTOS CENTRALES DE LA EDUCACIÓN
PARA EL DESARROLLO SOSTENIBLE (CoCEDS)
Concepto Definición Habilidad
1.1 Comienza por examinar todo el sistema
y sus interrelaciones para entender dónde
hay que actuar para mejorar la sostenibilidad
Es un enfoque holístico e integrado de los recursos y/o servicios; sólo entonces
para asegurar el acceso al se formulan acciones (centradas en el agua
agua, la energía y los alimentos o no).
a largo plazo, por lo que los
ecosistemas desempeñan un 1.2 Gestiona los conflictos e identifica los
papel central en el concepto. Se desafíos y las sinergias en los sectores
centra en la base de los recursos Agua-Energía-Alimento; así como sus
1. Nexo Agua-Energía- biofísicos y socioeconómicos de interrelaciones en el contexto local, regional
Alimento los que dependemos para lograr y/o nacional de los y las estudiantes.
objetivos sociales, ambientales y
económicos relacionados con el 1.3 Pondera igualitariamente todos los
agua, la energía y los alimentos. sectores y tiene una perspectiva sistémica
Surge de la necesidad de ver cada e integral para la protección del bienestar
sector como algo que no está humano y la salud de los ecosistemas.
separado; sino como algo complejo
e inextricablemente entrelazado. 1.4 Ofrece un enfoque holístico e integrado
para coadyuvar al acceso y disponibilidad
al agua, la energía y los alimentos a largo
plazo.
Son todos los servicios que la 2.1 Identifica el tipo de servicio ecosistémico
naturaleza provee a la sociedad urbano/rural procesado en la cadena
para sustentar la vida; varían de valor (provisión, regulación/soporte y
en función de los ecosistemas cultural), y definido por la estructura física
(latitud, topografía, estado de de la localidad, ciudad o región y no sólo por
conservación, entre otros), y sus límites administrativos y/o normativos.
del uso que la sociedad hace
de ellos. Existen cuatro tipos 2.2 Desarrolla una lógica de interacción
de servicios: aprovisionamiento recíproca y equilibrada entre el capital
(productos obtenidos de la natural y el social, para salvaguarda del
naturaleza); regulación (beneficios bienestar humano y la regeneración de los
2. Servicios de la regulación de procesos de servicios ofrecidos por los ecosistemas en
Ecosistémicos los ecosistemas); sostenimiento el mediano y largo plazo.
(servicios necesarios para la
producción de otros servicios
2.3 Identifica compensaciones y
de los ecosistemas) y culturales
(beneficios no materiales). externalidades e incorpora soluciones
basadas en la naturaleza a las funciones
ecológicas y sociales de los servicios
ecosistémicos urbanos y las áreas
protegidas urbanas (p.e. zonas verdes
seminaturales como parques, cementerios),
dentro de un contexto socioeconómico
particular.
Concepto Definición Habilidad
Es un concepto holístico, sistémico 3.1 Identifica interacciones y componentes
e inclusivo del ser humano en la vitales que contribuyan al desarrollo de eco-
naturaleza, es decir, un sistema comunidades resilientes (urbanas, rurales
adaptativo y complejo en el o mixtas; locales, nacionales, regionales).
que interactúan componentes
culturales, políticos, sociales, 3.2 Diseña sistemas complejos con
económicos, ecológicos y enfoque en el desarrollo de la resiliencia
tecnológicos. La condición para socio-ecológica y la regeneración de los
3. Sistemas asumirse como tal es que la servicios ecosistémicos.
Socioecológicos delimitación del sistema se realice
a partir de sus interacciones con
los sistemas sociales y ecológicos 3.3 Transmite claramente los fundamentos
con los que se relaciona. de los sistemas sostenibles, sin importar el
tipo particular de sistema socio-ecológico.
3.4 Delimita los sistemas a partir de las
interacciones entre los componentes
sociales (cultura, sociedad, economía
y política) y ecológicos (naturaleza y
ambiente) relacionados.
Es el estudio de las distintas 4.1 Analiza los procesos de crecimiento
interacciones entre sistemas económico y de desarrollo desde una
económicos y sistemas ecológicos. perspectiva sistémica, transdisciplinaria y
Por lo tanto, el campo de estudio circular.
de la economía es un subconjunto
del campo de estudio de la 4.2 Evalúa las cadenas de suministro y de
ecología. Tiene en cuenta que el valor, a través de análisis multicriterio y
funcionamiento de los ecosistemas criterios bioéticos.
es complejo y no lineal, por lo
que rebasar los umbrales, genera
4. Economía Ecológica 4.3 Interpreta la actividad económica y la
consecuencias irreversibles e
impredecibles. Además, considera gestión ecológica como un proceso co-
que el capital natural requiere evolucionario, en donde las sociedades
ser preservado a un nivel crítico son consideradas organismos vivos
(Principio Precautorio), a través de (metabolismo social).
proyectos de restauración de los
ecosistemas. 4.4 Diseña sistemas de restauración de
ecosistemas para la compensación parcial
de la pérdida de capital natural (principio
precautorio)

PROPÓSITO DEL MÓDULO


Desarrolla aplicaciones de forma creativa, haciendo uso de herramientas informáticas que le permitan
gestionar bases de datos para que se conecten a ellas, y que se pueda utilizar la información que
almacenan, trabajando con responsabilidad y tolerancia a la frustración en los ámbitos organizacionales,
educativos y de la vida cotidiana.
Submódulo 1
FUNDAMENTOS DE BASES DE DATOS

COMPETENCIAS LABORALES BÁSICAS


CLBP1. Emplea los conceptos básicos de programación para diseñar programas
encargados de definir y administrar el comportamiento de dispositivos, a través del uso
de los elementos de programación, con una actitud investigadora, de acuerdo a las
necesidades del entorno, con una postura ética y responsable como ciudadano digital.
CLBP2. Ejemplifica sistemas básicos de programación para describir el conjunto de
acciones consecutivas o instrucciones que se deben ejecutar mediante el uso de equipo
informático que permita la resolución de problemas de su contexto, de forma creativa y
emprendedora.
CLBP3. Diseña bases de datos, que permitan el acceso a información actualizada y
precisa, mediante la aplicación de sistemas de administración de bases de datos, para
gestionar grandes ficheros y facilitar la consulta de información, de manera organizada y
tomando decisiones de manera responsable en beneficio de su entorno.
CLBP4. Desarrolla aplicaciones web para obtener, procesar y difundir información,
haciendo uso de la arquitectura cliente-servidor, desarrollando habilidades creativas en
pro de su contexto personal y social, con un sentido crítico, autocrítico y ético.
Interdisciplinariedad Ejes Transversales

- Temas Selectos de Aritmética y - Emprendimiento.


Geometría - Vinculación laboral.
- Pensamiento algebraico I - Iniciar, continuar y concluir sus estudios
- Lógica I. de nivel superior.

HVyT CoCEDS

2.1. Colaboración y Trabajo en Equipo


(2.1.1., 2.1.6.)
3. Sistemas Socioecológicos (3.4)
3.1. Creatividad (3.1.3)
4.1. Toma de Decisiones (4.1.3., 4.1.4)

PROPÓSITO DEL SUBMÓDULO

Diseña y crea bases de datos para una empresa específica atendiendo sus necesidades
de manejo y control de la información, actuando con sentido ético y
responsable.
Submódulo
Submódulo 1
1 FUNDAMENTOS DE BASES DE DATOS

FUNDAMENTOS DE BASES DE DATOS

APRENDIZAJES ESPERADOS
- Clasifica información, a través de una base de datos, para organizar y manipular
información de manera rápida y eficiente, que satisfaga las necesidades del usuario
final, de acuerdo al contexto en el que se requiere, actuando de manera congruente y
consciente previniendo riesgos.
- Aplica sentencias en lenguaje SQL para realizar modificaciones, agregar y eliminar
datos contenidos en la misma, que le permitan aplicarlas a través de un programa
acorde a las necesidades de la aplicación y de acuerdo con el entorno en el que
implementa, resolviendo situaciones empresariales de forma creativa, favoreciendo
su formación continua.
CONOCIMIENTOS BÁSICOS
Bases de Datos (BD).
- Definición de BD.
- Características de BD.
- Concepto de tabla.
- Elementos de una tabla.
- Tipos de datos.
- Concepto de relación.
- Ventajas de emplear BD.
Lenguaje Estructurado de Consulta (SQL).
- Definición y sintaxis de SQL.
- Comandos Select, Insert, Update, Delete Where, Order By.
- Operadores And, Or, Not.
- Funciones de agregación Count, Avg, Sum.
HABILIDADES

- Analiza la estructura de una base de datos asociando tablas y relaciones.


- Diferencia los tipos de datos.
- Ordena sentencias en lenguaje SQL.

ACTITUDES

- Actúa de manera congruente y consciente previniendo riesgos.


- Resuelve situaciones de forma creativa.

14 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


ACTIVIDAD DE INICIO

Antes de dar inicio a las actividades propias de este


semestre, nos interesa conocer tus expectativas.
Escribe lo que esperas del módulo “Bases de Datos”,
el cual se imparte en quinto semestre de la capacitación
“Programación en Java”.
_______________________________________________
_______________________________________________
_______________________________________________
_______________________________________________
______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

Responde las siguientes preguntas.

1.- De las competencias profesionales que desarrollarás en el módulo, ¿cuáles


te atraen más?
_______________________________________________________________
_______________________________________________________________
_______________________________________________________________
_______________________________________________________________
_______________________________________________________________
_______________________________________________________________

2.- ¿Para qué crees que te servirán estas competencias?


_______________________________________________________________
_______________________________________________________________
_______________________________________________________________
_______________________________________________________________
_______________________________________________________________
_______________________________________________________________

3.- ¿En qué momento las puedes aplicar?


_______________________________________________________________
_______________________________________________________________
_______________________________________________________________
_______________________________________________________________
_______________________________________________________________
_______________________________________________________________

CoBachBC Colegio de Bachilleres del Estado de Baja California 15


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

ACTIVIDAD DIAGNÓSTICA

1.- ¿Qué es una base de datos?


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

2.- ¿Cuál es la función de una base de datos?


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

3.- ¿Qué es una tabla de datos?


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

4.- Menciona ejemplos de una base de datos:


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

5.- ¿Qué elementos consideras que forman una base de datos?


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

6.- ¿Qué es un tipo de dato?


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

7.- Menciona los distintos tipos de datos que recuerdes:


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

16 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


Situación didáctica
Una empresa de la localidad necesita estudiantes para trabajar medio tiempo, por lo que lanzó una
convocatoria en las preparatorias. Aquí se solicita a los interesados presentar una propuesta de diseño
de una base de datos, que incluya la descripción de sus tablas, campos y relaciones para asegurar
un correcto funcionamiento. Pedro y Sofía están interesados en el trabajo y se disponen a hacer la
propuesta requerida. Pueden elegir entre las siguientes temáticas que propone la empresa:

1.- Guardería Infantil.


2.- Compañía disquera.
3.- Asociación de salas de cine.
4.- Emisora de radio.
5.- Futbol.
6.- Librería.
7.- Compañía cinematográfica.
(También tienen la opción de elegir otro tema).

La propuesta de base de datos debe cumplir con lo siguiente:

Cuatro tablas congruentes con la temática.


Determinar mínimo cuatro campos por tabla, definir su tipo y tamaño.
Definir los campos llave y foráneos.
Determinar mínimo 5 registros por tabla.

¿Cómo realizarías tú esta propuesta?

ACTIVIDAD 1
Cuestionario en binas
Realizar una búsqueda en Internet para investigar lo siguiente y en plenaria compartir
los resultados.

1. ¿Qué es un gestor de bases de datos?


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

2. Menciona algunos gestores de bases de datos


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

3. Define base de datos


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

CoBachBC Colegio de Bachilleres del Estado de Baja California 17


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

4. ¿Cuáles son los componentes de una base de datos?


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

5. ¿Qué es una tabla de datos?


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

6. ¿Para qué se utilizan los campos dentro de una base de datos?


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

7. ¿Qué es un registro?
______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

8. ¿Qué son los tipos de datos?


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

9. ¿Para qué se utiliza el campo clave?


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

10. ¿Qué son las relaciones dentro de una base de datos?


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

BASE DE DATOS
1.- Definición de base de datos
Las bases de datos surgen ante la necesidad de almacenar y manejar grandes cantidades
de información. Se presentan como una herramienta que proporciona a los usuarios acceso
a datos que pueden visualizar, ingresar o actualizar, de acuerdo a los derechos que se les
hayan otorgado. Su utilidad aumenta conforme crece el volumen de datos que almacena.
Si bien es cierto que en la Web puedes encontrar un sinfín de definiciones de base de
datos, la gran mayoría son similares como las que se describen a continuación:
• Es una serie de datos organizados y relacionados entre sí, los cuales son recolectados
y explotados por los sistemas de información de una empresa o negocio en particular.
18 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos
• Colección organizada de datos, relativa a un problema concreto, que puede ser
compartida por un conjunto de usuarios/aplicaciones.

• Conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente


para su uso posterior.

• Es un contenedor que permite almacenar información de forma ordenada con


diferentes propósitos y usos.
Las bases de datos se utilizan en casi todas partes. En una empresa, por ejemplo, permite
mantener un adecuado control departamental y de los datos, además de que agiliza la
realización de las actividades diarias. En los bancos se usan para llevar un registro de las
cuentas, saldos y depósitos de los clientes. Se utilizan incluso en dispositivos móviles, en
herramientas como la agenda telefónica y la aplicación musical.

Ejemplos de base de datos.

Un directorio telefónico, recetario, nómina, sistema contable, sistema bancario, etc.

Es imprescindible mencionar que la eficiencia de una base de datos dependerá de ciertas


características y de la organización de la información, la cual se mantendrá clasificada en
tablas, registros, campos llave y relaciones. Todo ello se explicará en el avance del módulo.

También cabe señalar que el manejo de una base de datos implica la utilización de un
sistema llamado Sistema Gestor de Bases de Datos (DBMS) en tanto que este es el
software que permite el acceso y manejo de su contenido.

ACTIVIDAD 2 EXTRA CLASE

Reporte individual (Evaluación)

Mediante una búsqueda en Internet investigar los tipos de bases de datos que
existen con base en:

CoBachBC Colegio de Bachilleres del Estado de Baja California 19


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

VARIABILIDAD DE SU ADMINISTRACIÓN DE SUS


INFORMACIÓN DATOS

2. Características de una base de datos

Entre las principales características de un sistema de base de datos se encuentran:


1. Independencia de los datos. Es decir, que los datos no dependen de un programa y
por tanto cualquier aplicación puede hacer uso de los datos.
2. Reducción de la redundancia. Llamamos redundancia a la existencia de duplicación
de los datos, al reducir esta al máximo conseguimos un mayor aprovechamiento
del espacio y además evitamos que existan inconsistencias entre los datos. Las
inconsistencias se dan cuando nos encontramos con datos contradictorios.
3. Seguridad. Es la protección de los datos frente a usuarios no autorizados. Un SBD
debe contar con un buen control sobre el acceso a los datos.
4. Integridad. Se refiere a la validez y consistencia de los datos almacenados.
5. Concurrencia. Garantiza el acceso simultáneo de varios usuarios a la información.

Por otra parte, cabe mencionar que cuando se crea una base de datos y se inicia su
operación, el volumen de la información es mínimo y el desempeño de la aplicación y base
de datos es óptima. Sin embargo, conforme pasa el tiempo el volumen de información
incrementa y en consecuencia surgen los siguientes problemas:

1. Problemas de espacio en disco.


2. Incrementos de costo en almacenamiento y procesamiento.
3. Problemas de desempeño en las consultas.
4. Fallas en el aplicativo afectando la disponibilidad de los datos.
5. Problemas con la base de datos y la pérdida de información.

De los problemas anteriores surge la necesidad de hacer mejoras a las bases de datos o
crear arquitecturas para dar soluciones a los problemas anteriores. Se han implementado
varias soluciones a nivel Software y Hardware.

ACTIVIDAD 3 (COEVALUACIÓN)

Esquema individual
Con base en la lectura anterior, anotar dentro de los círculos del esquema la
característica que corresponda.

20 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


1. Se refiere al control estricto de la información que se maneja.
2. Permite que varios usuarios tengan acceso a los datos al mismo tiempo.
3. Garantiza el acceso a los datos con independencia del programa que se utilice.
4. Se refiere a la validez y consistencia de los datos almacenados
5. Evita la existencia de datos repetidos.

Al terminar la actividad intercambiar libro con un compañero para que revise que la
actividad fue elaborada correctamente, con ayuda del docente.

Nombre del compañero evaluador:___________________________________________


Numero de aciertos:________

2.1. Tipos de base de datos

Las bases de datos se pueden clasificar considerando diversos enfoques:

De acuerdo a la variabilidad de la información pueden ser: dinámicas y estáticas.

Las bases de datos de tipo OLTP (On Line Transaction Processing) también son llamadas
bases de datos dinámicas lo que significa que la información se modifica en tiempo real,
es decir, se insertan, se eliminan, se modifican y se consultan datos en línea durante
la operación del sistema. Un ejemplo es el sistema de un supermercado donde se van
registrando cada uno de los artículos que el cliente está comprando y a su vez el sistema
va actualizando el inventario1.

1 Información obtenida de [Link]


CoBachBC Colegio de Bachilleres del Estado de Baja California 21
Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Las bases de datos de tipo OLAP (On Line Analytical Processing) también son llamadas
bases de datos estáticas, lo que significa que la información en tiempo real no es afectada,
es decir, no se insertan, no se eliminan y tampoco se modifican datos; sólo se realizan
consultas sobre los datos ya existentes para el análisis y toma de decisiones. Este tipo de
bases de datos son implementadas en Business Intelligence para mejorar el desempeño
de las consultas con grandes volúmenes de información.

De acuerdo a la administración de la información las bases de datos pueden ser:


jerárquicas, transaccionales, relacionales, etc.

Las bases de datos jerárquicas almacenan los datos en una estructura parecida a un
árbol, pero visto al revés. A cada elemento se le denomina NODO y su dependencia es
de tipo padre/hijo. Un hijo no puede tener más de un padre, pero un padre puede tener
varios hijos.

Las bases de datos transaccionales Son bases de datos cuyo único fin es el envío y
recepción de datos a grandes velocidades, estas bases son muy poco comunes y están
dirigidas por lo general al entorno de análisis de calidad, datos de producción e industrial,
es importante entender que su fin único es recolectar y recuperar los datos a la mayor
velocidad posible, por lo tanto la redundancia y duplicación de información no es un
problema como con las demás bases de datos, por lo general para poderlas aprovechar
al máximo permiten algún tipo de conectividad con bases de datos relacionales.

22 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


Las bases de datos relacionales es una recopilación de elementos de datos con
relaciones predefinidas entre ellos. Estos elementos se organizan como un conjunto de
tablas con columnas y filas. Las tablas se utilizan para guardar información sobre los
objetos que se van a representar en la base de datos. Cada columna de una tabla guarda
un determinado tipo de datos y un campo almacena el valor real de un atributo. Las
filas de la tabla representan una recopilación de valores relacionados de un objeto o
entidad. Cada fila de una tabla podría marcarse con un identificador único denominado
clave principal.

Existe software exclusivamente dedicado para realizar base de datos relacionales. Este
software se conoce como SGBD (Sistema Gestor de Base de Datos), entre los más
populares se encuentran MySQL, Oracle y SQL server.

Una base de datos relacional como se mencionó anteriormente contiene tablas, registros,
campos, relaciones, atributos y campos llave. Ejemplo:

CoBachBC Colegio de Bachilleres del Estado de Baja California 23


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

ACTIVIDAD 4

Resumen individual

Con base en la lectura “Tipos de base de datos” elaborar un resumen.

2.2. Componentes de una base de datos:

La implementación de un determinado tipo de base de datos implica una serie de recursos


específicos, no obstante, hay una serie de elementos comunes que se presentan en toda
implementación. Éstos se describen en el siguiente esquema.

24 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


En resumen, todo sistema de base de datos debe contar al menos con estos 3 elementos:
el hardware, que equivale a la parte física del sistema, el software, integrado por el
conjunto de programas que permiten el control y manejo de la base de datos y finalmente
los datos, que son el componente principal, puesto que representan la materia prima para
el funcionamiento de la base de datos.
2.3. Tipos de usuarios en base de datos
Un usuario es toda persona que tiene algún tipo de contacto con el sistema de base de
datos. Esto incluye desde los diseñadores hasta quienes lo utilizan. De acuerdo al tipo de
interacción que se tiene con el sistema, se distinguen 5 tipos de usuarios².
1.- Usuarios normales: son quienes interactúan con el sistema a través de un
programa de aplicación que presenta una interfaz de formulario.
2.- Programadores de aplicaciones: son profesionales informáticos que escriben los
programas de aplicación que interactúan con la base de datos, utilizando herramientas
para el desarrollo de interfaces de usuario.
3.- Usuarios sofisticados: interactúan con el sistema sin recurrir a programas escritos,
en su lugar utilizan un lenguaje de consulta de bases de datos.
4.- Usuarios especializados: son quienes escriben aplicaciones de bases de datos
especializadas y adecuadas para el procesamiento de datos tradicional.
5.- Administradores de la base de datos: son las personas que tienen el control
central del SGBD (programas y datos), se encargan entre otras cosas de realizar el
mantenimiento periódico de los datos manejados por el sistema.
DBMS- Data Base Managment System (Sistema Gestor de Base de Datos)
Los Sistemas Gestores de Bases de Datos son un tipo de software muy específico,
dedicado a servir de interfaz entre las bases de datos y las aplicaciones que la utilizan. Se
compone de un lenguaje de definición de datos, de un lenguaje de manipulación de datos
y de un lenguaje de consulta. En los textos que tratan este tema, o temas relacionados,
se mencionan los términos SGBD y DBMS, siendo ambos equivalentes, y acrónimos,
respectivamente, de Sistema Gestor de Bases de Datos y DataBase
Management System, su expresión inglesa.
Este software se reconoce como el medio que permite el almacenamiento, organización y
recuperación de la información almacenada en una base de datos.

² Información obtenida de [Link]


CoBachBC Colegio de Bachilleres del Estado de Baja California 25
Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

¾ Ejemplos de sistemas gestores de bases de datos


• Oracle Database. Sistema de gestión de base de datos objeto-
relacional desarrollado por Oracle Corporation. Se le considera
uno de los sistemas de bases de datos más completo y hasta
fechas recientes contaba con un gran dominio del mercado.
• Microsoft SQL Server. Sistema de manejo de bases de datos
del modelo relacional desarrollado por Microsoft. Sólo está
disponible para el sistema operativo Windows.
• PostgreSQL. Sistema de gestión de base de datos orientado a
objetos. Es de código abierto y se publica bajo licencia BSD. Su
desarrollo corre a cargo de una comunidad de desarrolladores
denominada PGDG (PostgreSQL Global Development Group).
• MySQL. Sistema de gestión de bases de datos relacional,
multihilo y multiusuario con más de 6 millones de descargas.
Está desarrollado como software libre con licenciamiento dual,
ya que las empresas que deseen usarlo en productos privativos
deben adquirir una licencia específica.
En las actividades del módulo se utilizará el Desarrollador MySQL.
¾ Principales funciones de un gestor de base de datos
Las funciones más importantes que nos puede permitir realizar un sistema gestor de base
de datos son las siguientes³:
a. Función de definición o descripción: permite al diseñador de la base de datos
especificar los elementos de datos que la integran, su estructura y las relaciones que
existen entre ellos, las reglas de validación, así como las características de tipo físico
y las vistas lógicas de los usuarios. Es decir, permite que se creen las estructuras para
integrar adecuadamente los datos.
b. Función de manipulación: permite a los usuarios de la base, informáticos o no,
buscar, añadir, suprimir o modificar los datos de la misma, siempre de acuerdo con
las especificaciones o normas de seguridad dictadas por el administrador. En otras
palabras, permite modificar y utilizar los datos de la base de datos.
c. Función de control o utilización: permite la administración de todas las interfaces
que necesitan los diferentes usuarios para comunicarse con la base de datos,
proporcionándole al administrador un conjunto de procedimientos que le faciliten las
tareas de control sobre la base de datos.

3
Información obtenida de [Link]

26 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


3. Concepto de tabla
Es el elemento principal de la base de datos, ya que allí se registra la información que
se quiere gestionar. Es una estructura formada por filas y columnas, que determinan el
espacio donde se almacena la información. Una base de datos puede contener tantas
tablas como se requiera, pero sin ellas prácticamente no existe, pues son las que dan
origen a los demás componentes de la base de datos.

4. Elementos de una tabla


Los principales elementos de una tabla son los siguientes:

CAMPOS – Son cada una de las columnas de una tabla, cada campo almacena un
dato en concreto. Las columnas o campos son las unidades básicas de la base de
datos, almacenan un segmento de información de cada uno de los registros. Los
campos pueden ser de diversos tipos, dependiendo de la información que contienen,
los más comunes son números, texto y fechas.

REGISTROS – Es cada una de las filas de la tabla, donde se agrupa toda la información
de un mismo elemento. Un registro o fila almacena una sección individual de
información. Por ejemplo, una tabla de "empleados" puede tener filas que contengan
información específica sobre los diferentes empleados.

RELACIONES – Son los vínculos establecidos entre las diferentes tablas que permiten
trabajar con los datos de cada una de ellas, como si estuvieran en una sola.

CAMPOS CLAVES –Cada registro debe tener un campo único que lo identifique, este
también llamado campo clave o llave primaria se utiliza para asociar rápidamente
datos de varias tablas y combinarlos de forma que tenga sentido. Es un campo cuyo
contenido no puede estar duplicado en la misma tabla y permite identificar a cada
registro de manera univoca.

CoBachBC Colegio de Bachilleres del Estado de Baja California 27


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

La estructura interna de la tabla está formada por campos, estos campos determinan el carácter de la
información que almacenan y se identifican mediante un “nombre de campo”. Por ejemplo, en una tabla
donde se almacenen los datos de alumnos, un campo imprescindible sería el nombre del alumno, otro
sería el curso o grupo al que pertenece, también podríamos incluir la fecha de nacimiento y así hasta
completar toda la información que deseamos almacenar sobre el alumno.

En principio cualquier denominación puede ser válida a la hora de elegir un nombre para un campo de
una tabla. Sin embargo, es conveniente cumplir algunas normas:

• El nombre del campo debe describir, en la medida de lo posible, la información que almacena:
nombre, fecha, grupo, etcétera.
• Intenta que no sea tan corto que no permita adivinar su contenido, ni tan largo que resulte incómodo
trabajar con él.
• Es aconsejable no utilizar símbolos o caracteres especiales (guiones, espacios en blanco…) que
puedan generar problemas con ciertas operaciones o al trasladar la base de datos a otros sistemas.
• Elige con cuidado el tipo de datos para optimizar al máximo la base de datos.
• El nombre de los campos no puede empezar por espacios ni contener signos de puntuación ni
corchetes.
• No pueden existir dos campos con el mismo nombre en la misma tabla.

28 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


ACTIVIDAD 5

Tabla individual
Identificar y escribir en la línea el nombre que corresponde a cada uno de los
elementos de la tabla “ALUMNOS”.

TABLA “ALUMNOS”

ACTIVIDAD INTEGRADORA PARTE 1

Diseño de una base de datos en binas (Evaluación)

Pedro y Sofía están interesados en elaborar una propuesta de diseño de base


de datos para una empresa, ayúdales a seleccionar una temática y a elaborar
su propuesta considerando todos los requerimientos que debe cumplir (4
tablas, mínimo 4 campos por tabla con su respectivo tipo y tamaño, campos
llave y foráneos y 5 registros por tabla).

1.- Guardería Infantil.


2.- Compañía disquera.
3.- Asociación de salas de cine.
4.- Emisora de radio.
5.- Futbol.
6.- Librería.
7.- Compañía cinematográfica.
(También tienen la opción de elegir otro tema).

CoBachBC Colegio de Bachilleres del Estado de Baja California 29


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Nombre de los Integrantes:_________________________________________________


______________________________________________________________________

Nombre del tema seleccionado:______________________________________________

Nombre de la Tabla 1:

Nombre de la Tabla 2:

Nombre de la Tabla 3:

30 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


Nombre de la Tabla 4:

5. Concepto de relación
Este término se deriva de las bases de datos relacionales, que se reconocen como el más
popular entre los tipos de bases de datos, en tanto que resultan ser una herramienta muy
eficiente, no sólo para almacenar información, sino también para acceder a ella. Se
caracterizan porque están organizadas en forma de tablas.

En este caso una relación se interpreta como un vínculo o asociación que se establece
entre las tablas de una base de datos, lo que brinda la oportunidad de recuperar información
de varias a la vez.

Ejemplo de una base de datos relacional


El siguiente ejemplo muestra una base de datos relacional la cual permite generar la
boleta de un alumno y donde se pueden observar distintos tipos de relaciones.

La base de datos está dividida en 5 Tablas: Tabla Alumno, Tabla Boleta, Tabla BoletaMateria,
Tabla Materia y Tabla Profesor, cada una de las tablas contiene sus campos, por ejemplo,
la tabla Alumno contiene los campos: Credencial, Nombre, Apellido, FechaNacimiento y
Num Celular.
Una relación se establece cuando el valor de un campo, denominado campo de coincidencia
(a veces recibe el nombre de campo de clave) en un lado de la relación se compara con
éxito con un valor en el campo de coincidencia en el otro lado de la relación de acuerdo
con los criterios que especifique en la relación. En el ejemplo se puede observar que se
establecieron 4 relaciones.
CoBachBC Colegio de Bachilleres del Estado de Baja California 31
Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

¾ Campos utilizados en relaciones


Un campo de coincidencia puede ser un campo o una combinación de campos que
identifican un registro de una tabla. Por ejemplo, un campo de coincidencia puede contener
fechas que, comparadas con los criterios de la relación, determinan si la relación es
correcta.
Estos campos deben corresponder a uno de los siguientes tipos de campos: texto,
numérico, fecha, hora, fecha y hora o de cálculo (con un resultado de texto, numérico, de
fecha, de hora, o de fecha y hora)5.
Una clave es un tipo de campo de coincidencia. Por lo general, las claves contienen
valores que se utilizan como ID, por ejemplo, un ID de producto. Existen dos tipos de
claves:
• Clave principal: Es un campo que se encuentra en la misma tabla que el registro que
identifica. Un valor de clave principal debe ser exclusivo, es decir, no es posible que
se repita en la base de datos y además no puede ser nulo (no tener valor). En una
tabla sólo puede haber una clave principal, pero ésta puede estar formada por varios
campos.
• Clave externa: Es un campo de una tabla que identifica un registro de otra tabla.
También se reconoce como aquel que señala la clave principal de otra tabla. En estos
campos los valores no tienen que ser exclusivos en la tabla y pueden estar vacíos
(nulos). También puede haber varias claves externas en una tabla.

⁵ Información obtenida de [Link]

32 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


¾ Tipos de relaciones
Al establecer una relación entre tablas, a una se le llama tabla principal y a la otra tabla
relacionada. Se pueden establecer los siguientes tipos de relaciones:

1. Relación de uno a uno:


Por cada registro de la tabla principal (tabla que contiene la clave principal) puede existir
un solo registro en la tabla relacionada (tabla que contiene la clave externa). La tabla
relacionada no puede contener un registro que no esté relacionado con uno de la tabla
principal: no puede existir un registro con FECHA_ALTA, SALARIO, etc., si no hay un
empleado con el que se relacione. Esta relación se utiliza para simplificar y organizar las
tablas con muchos campos. Ver el ejemplo siguiente:

Nota: esta relación se indica:

CoBachBC Colegio de Bachilleres del Estado de Baja California 33


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

2. Relación de uno a varios:


Por cada registro de la tabla principal (tabla de la clave principal o lado uno de la relación)
pueden existir muchos (infinitos) registros en la tabla relacionada (tabla de la clave externa
o lado infinito de la relación). La tabla relacionada no puede contener un registro que no
esté relacionado con uno de la tabla principal, pero puede haber muchos registros que
estén relacionados con el mismo registro de la tabla principal: varios (infinitos) empleados
de la tabla EMPLEADO_LABORAL, pueden estar en el mismo departamento de la tabla
DEPARTAMENTO...

Nota: esta relación se indica:

34 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


3. Relación de varios a varios:
Debes tener claro las llaves primarias y una tabla de unión para que se produzca la relación
varios a varios entre PRODUCTOS y NUM_VENTA. Un registro de la tabla NUM_VENTA
puede estar relacionado con varios registros de la tabla PRODUCTOS y un registro de la
tabla PRODUCTOS puede estar relacionado con varios registros de la tabla NUM_VENTA.
Explicación: cuando realizamos una venta le asignamos un número (N_VENTA) y lo
almacenamos en la tabla NUM_VENTA; esa venta puede estar formada por uno o varios
productos identificados con un número de producto (N_PRODUCTO) de la tabla
PRODUCTOS.
Pero ¿cómo podemos relacionar varios registros de la tabla NUM_VENTA con varios de
PRODUCTOS, y viceversa? En realidad, esta relación está formada por dos relaciones de
uno a muchos. Una tabla intermedia (tabla de unión VENTAS) contiene la clave principal
múltiple que se forma con la combinación de dos (o más) claves externas: N_VENTA y
N_PRODUCTO. La combinación de estos dos campos forma un campo que no se repite.
Por ejemplo: la venta 200 (N_VENTA vale 200) se realizó con los productos 12, 14 y
36 (N_PRODUC- TO). Si formamos con N_VENTA y N_PRODUCTO una clave principal
obtenemos 20012, 20014 y 20036, valores no repetidos. Con otros valores de N_VENTA
se procedería igual⁶.

6. Tipos de datos
Una de las características principales de los campos de una tabla, además de su nombre,
es el tipo de datos que va a guardar. Esto define los posibles valores que podrán almacenar,
la forma de guardarlos y hasta el espacio requerido para cada columna. Es importante
señalar que no es lo mismo almacenar valores numéricos, con los que posteriormente
podremos realizar operaciones matemáticas, que guardar textos como los
nombres de los alumnos.
En phpMyAdmin cuando creamos una tabla después de introducir el nombre del campo,
al desplegar el cuadro de lista asociado a la columna Tipo de campo aparecerá una larga
lista de posibilidades para asignar el tipo de dato como puedes ver en la siguiente figura.

⁶ Información obtenida de [Link]


CoBachBC Colegio de Bachilleres del Estado de Baja California 35
Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Existe una gran diversidad de tipos de datos, que varía dependiendo del SGBD, no obstante,
es posible clasificarlos en: números, textos, fechas, booleanos y otros (particulares de
cada gestor).

De esta lista, los que usaremos con más frecuencia son:


Número: Es el tipo numérico más flexible. Permite determinar su tamaño y su precisión
en cuanto al número de valores decimales que puede representar.

Texto [VARCHAR]: Tipo de campo destinado a cadenas de caracteres cuya longitud no


es fija. En la propiedad Longitud se determina su longitud máxima.

Sí/No: Este tipo de datos, conocido como “booleano”, se utiliza para representar datos
Verdadero/Falso o Sí/No o 1/0.

Fecha, Hora y Fecha/Hora [Date]: Estos tipos de datos se utilizan para almacenar
información referida a horas, fechas o su combinación. El formato de presentación lo
podemos seleccionar en la propiedad Formato.

7. Ventajas de las bases de datos

Las principales ventajas de un sistema de base de datos son⁷:

• Acceso rápido a los datos.


• Evitar datos repetidos o duplicados.

36 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


• Aumentar la productividad.
• Permite ingresar datos ilimitados.
• Compartir datos globalmente.
• Centralizar la información.
• Reducción del espacio físico.
• Mantenimiento fácil.
• Permiten hacer respaldos.
• Son portables.
• Son dinámicas

ACTIVIDAD INTEGRADORA PARTE 2

Continuación de diseño de Base de datos en binas (evaluación)

Pedro y Sofía quieren relacionar las tablas para asegurar el correcto


funcionamiento de su base de datos, ayúdales a hacerlo.

Nombre de los integrantes: _________________________ y _________________


__________________________________________________________________

Nombre del tema seleccionado: ________________________________________

Escribe en cada tabla el nombre y los campos correspondientes, posteriormente


debes identificar el campo clave en cada una de las tablas y relacionarlas mediante
una línea.

CoBachBC Colegio de Bachilleres del Estado de Baja California 37


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

ACTIVIDAD 6

Cuestionario individual
Antes de iniciar con la creación de bases de datos, es necesario conocer la plataforma
que se utilizará. Por tanto, a continuación, se va a realizar una investigación individual con
el apoyo de Internet para responder las siguientes preguntas:

1. ¿Qué es Xampp y para qué se utiliza?


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

2. ¿Cuáles son sus componentes?


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

3.- ¿Cuál es la aplicación o función de cada uno?


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

4.- ¿Cuáles son los requerimientos para instalar Xampp?


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

Entorno de desarrollo de bases de datos


Un entorno de desarrollo es una aplicación informática o plataforma que proporciona el
espacio y las herramientas para facilitarle al programador el desarrollo de software. Está
diseñado para realizar acciones como escribir, probar y depurar un programa.

38 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


XAMPP es una plataforma de desarrollo para los sistemas operativos Linux, Windows, Mac OS X y
Solaris. Es un servidor independiente de plataforma de código libre, que consiste principalmente
en el sistema de gestión de bases de datos MySQL y SQLite con sus respectivos gestores
phpMyadmin y phpSQLiteAdmin. Incluye también el servidor Web Apache y los intérpretes para
lenguajes de script PHP y Perl. Su nombre proviene del acrónimo de X (para cualquiera de los
diferentes sistemas operativos), Apache, MySQL, PHP, Perl.
Una de las ventajas de utilizar Xampp es que su instalación es de lo más sencilla, basta
descargarlo, extraerlo y comenzar a usarlo, además de que su uso es gratuito.

ACTIVIDAD 7

Reporte en binas
Buscar y observar un video sobre el proceso de instalación de Xampp y elaborar un
reporte a mano o en digital (según indique el docente).
XAMPP está disponible para su descarga en el siguiente enlace:
[Link] (se recomienda antes verificar la
versión de sistema operativo que está instalada).

ACTIVIDAD 8 (EVALUACIÓN)

Reporte en binas
Elaborar un tutorial sobre la descarga e instalación de Xampp incluyendo los textos
e imágenes necesarios para su mejor comprensión.
Una vez terminada la instalación, es necesario acceder al Panel de Control de
XAMPP. Éste nos da un control completo sobre todos los componentes de XAMPP
instalados.
En la siguiente imagen se muestra una visión rápida del panel de control.
Abre el panel de
configuraciones.

Muestra todos los procesos


ejecutándose en el servidor.

Abre el UNIX Shell.


Abre el explorador
Estos botones se de Windows.
utilizan para iniciar,
Muestra todos los servicios
detener y configurar
ejecutándose en segundo
diferentes módulos de
plano.
XAMPP.

Registros de las
acciones ejecutadas.

CoBachBC Colegio de Bachilleres del Estado de Baja California 39


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Para iniciar el trabajo dentro de Xampp es necesario poner en funcionamiento los servidores
que se utilizarán, en este caso Apache y MySQL. Para hacerlo, haga clic en el botón ‘Start’
correspondiente ubicado bajo ‘Actions’. Si el arranque se realiza correctamente, el panel de
control mostrará el nombre del módulo con fondo verde, el botón “start” se convertirá en “stop”
y en la zona de notificación se verá el resultado de las operaciones realizadas.
Para cerrar el panel de control, hay que hacer clic en el botón Quit. Si en su lugar se usa el
botón Cerrar de la ventana, sólo se minimiza no se cierra el panel de control como tampoco
se detienen los servidores Apache y MsSQL. Para detenerlos hay que hacer clic en el botón
“stop” correspondiente. Si esto se realiza exitosamente, el panel de control mostrará el nombre
del servidor con fondo gris y el botón “stop” se convertirá nuevamente en “start”⁸.
Ahora vamos a abrir el navegador web y escribimos: [Link] o la dirección IP
[Link] con lo que se nos mostrará la siguiente página:

Aquí se elige phpMyAdmin para obtener la siguiente ventana:

⁸ Información obtenida de [Link]

40 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


Aquí escogemos el idioma y otras opciones para configurar nuestra interfaz de trabajo.
Ahora ya podemos empezar con la creación y manejo de bases de datos, para hacerlo,
primero se elige la pestaña “Bases de datos” de la esquina superior izquierda, lo que da
como resultado la siguiente ventana.

Pestañas de opciones

Opciones Espacio para crear la


generales base de datos

Lista de base Información sobre las bases


de datos de datos existentes

Creación de bases de datos


Hay 2 formas de crear una base de datos, la primera es en la pestaña “bases de datos”
y la segunda es haciendo clic en la opción ubicada en el panel izquierdo. En
ambos casos nos redirigirán al formulario para crear una base de datos nueva. Aquí se
solicita el nombre que se le dará a la base de datos y el tipo de “Cotejamiento” que
tendrá. Este último se utiliza para indicar el tipo de codificación que se desea utilizar en la
información de la base de datos.
Aunque no es obligatorio definirlo, al utilizarlo se asegura que los datos se muestren
correctamente y se evita la visualización de caracteres o signos sin sentido.

Para Latinoamérica y países de habla hispana se recomienda utilizar:


utf8_spanish_ci (Español Moderno) o
utf8_spanish2_ci (Español Tradicional).

Ambos reconocen los acentos y la “ñ” y el segundo además acepta la “ch” y la “ll”.

Es importante mencionar que, al crear una base de datos, se da un cambio en nuestra


computadora. Para comprobarlo podemos entrar a Mi PC (o a cualquier otro explorador de
archivos) y llegar hasta: C:/xampp/mySQL/data allí encontraremos una carpeta por cada
base de datos que hayamos creado. Esta ruta puede variar dependiendo del emulador
que estemos usando.

CoBachBC Colegio de Bachilleres del Estado de Baja California 41


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Enseguida se presenta una imagen de un modelo de base de datos de tipo relacional,


conformada por 2 tablas (editorial y libro). Se pueden observar sus campos o atributos con
sus respectivas características, así como la relación que hay entre ellas. El relacionar
tablas correctamente en una base de datos permite la creación de sistemas dinámicos
básicos y avanzados.

ACTIVIDAD 9

Práctica individual BibliotecaBD


Crear una base de datos llamada BibliotecaBD en la cual tendremos las tablas
Libro y Editorial. Con ellas vamos a crear una relación de uno a muchos. Los
campos que nos permitirán esta relación son id_edi de la tabla principal que es
Editorial y el campo idh_edi que será nuestra llave foránea en la tabla Libro.
Estando en la página de phpMyAdmin como se muestra en la imagen, se
ingresa el nombre para la base de datos, se elige el cotejamiento y se da clic
en Crear. Con esto ya está creada la base de datos.

Enseguida se observa un formulario para que empecemos a crear nuestras tablas, de


no ser así, vamos al listado de Bases de datos que aparece a la izquierda, hacemos
clic sobre BibliotecaBD y se nos redireccionará para crear las tablas especificando el
nombre de la tabla y la cantidad de columnas o campos que tendrá.

Ahora crearemos nuestra primera tabla, Editorial, ya que ella es la principal (no
necesita de Libros para existir) y la cantidad de columnas en este caso es 4, como
se puede apreciar en la imagen que se muestra al inicio del ejercicio.

42 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


Damos clic en Continuar y nos aparece el formulario para crear todas sus columnas
especificando el Tipo de datos que recibe, si permite Campos vacíos (Null), si es Clave
Primaria, etc. Para este ejercicio sólo especificamos el tipo de datos y cuál de sus columnas
es Clave Primaria y Auto Incrementable (A_I), es decir que no necesitamos poner un
número a cada registro de manera manual.

Índice Primary
check en A_ I

Los aspectos a determinar en esta ventana son:

• Nombre: es el nombre del campo.


• Tipo: determina el tipo de dato que almacenará.
• Longitud/Valores: es la longitud del campo.
• Defáult: define si el campo tendrá un valor por defáult.
• Colación/Cotejamiento: establece el cotejamiento del campo.
• Atributos: determina un atributo especial al campo.
• Null: Define si el valor del campo puede ser Null. si se deja vacío siempre requerirá
algún valor (Not Null).
• Índice: permite establecer el campo clave (campo llave) y el campo foráneo.
• A-I: los valores en un campo de este tipo se generan en forma automática.
• Comentarios: aquí se puede añadir un comentario que se incluirá en el código SQL de
la base de datos.

CoBachBC Colegio de Bachilleres del Estado de Baja California 43


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Una vez que hayas configurado las columnas con las que desees trabajar, puedes
especificar el Cotejamiento y el Motor de la nueva tabla. Al final hacemos clic en el botón
Guard ar para crear la nueva tabla.

Como habrás observado, el cotejamiento se puede establecer en la base de datos, en las


tablas o en los campos. Por otra parte, el motor de almacenamiento de una tabla es una
parte esencial de un Sistema Gestor de Bases de Datos (SGBD) puesto que se encarga
de crear, recuperar, actualizar y borrar los datos de una base de datos. Si necesitamos
transacciones, claves foráneas y bloqueos, tendremos que escoger InnoDB. Por el
contrario, en aquellos casos en los que predominen las consultas SELECT a la base de
datos, escogeremos MyISAM.

Continuando con el ejercicio, ahora si podemos crear la tabla Libro, ya que en esta hay
una columna que es clave Foránea de la tabla Editorial y por ende teníamos que crear
primero esta para luego especificar en la tabla Libro.

Hacemos los mismos pasos que hicimos para la creación de la tabla Editorial, sólo que
cambiamos algunos datos de sus columnas:

Índice Primary
INDEX esta columna
check en A_ I
será nuestra llave
foránea.

Guardamos y listo. Hasta aquí sólo hemos creado la base de datos y sus tablas, aún no
hemos capturado ningún dato. Antes de llegar a este punto tenemos que crear la relación
entre las tablas. Aquí cabe enfatizar que su propósito central es evitar la redundancia de
datos e información.

Una vez que guardamos la tabla Libro nos dirige a la siguiente ventana donde ya podemos
ver todas las tablas creadas en la base de datos BibliotecaBD. Hacemos clic en la tabla
Libro para establecer la relación.

44 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


Damos clic en la tab la
Libro para especifica
la relación con la tabla
Editorial.
Ahora hacemos clic en la pestaña Estructura con esto se muestra la siguiente ventana:

Clic en vista de
Relaciones

Aquí hacemos clic en el botón Vista de relaciones, que nos lleva a la ventana donde se
crean las relaciones. Es ahí donde vamos a especificar qué columna será Foránea, es
decir, qué columna marcará la relación entre la tabla Editorial y la tabla Libro.
Ahora en el campo de ON DELETE elegimos CASCADE puesto que esta opción borra los
registros de la tabla dependiente cuando se borra el registro de la tabla principal, y en ON
UPDATE elegimos CASCADE porque actualiza el valor de la clave secundaria cuando se
actualiza el valor de la clave referenciada.
En la primera columna elegiremos idh_edi que es la que nos servirá como clave foránea,
después debemos especificar la base de datos en este caso BibliotecaBD, la tabla
Editorial y la columna con la que haremos la relación en este caso id_edi.

Hacemos clic Guardar y listo, ahora así ya tenemos relacionadas las dos tablas.

CoBachBC Colegio de Bachilleres del Estado de Baja California 45


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Manejo de datos
Una vez creada una base de datos con sus respectivas tablas y relaciones, ya es posible
ingresar información. Esta se captura dentro de las tablas, las columnas son los campos
que determinan qué información se va a capturar y las filas de datos son los registros.

A las operaciones de manipulación de datos dentro de una tabla se les conoce como
Proceso de ABM (siglas de “altas”, “bajas” y “modificaciones”). En algunos casos se agrega
la sigla L o C (inicial de “listados” o “consultas”) denominándose ABML o ABMC⁹.

Captura de registros:
1. Abre la tabla desde el panel izquierdo.
2. Haz clic en la pestaña Insertar.
3. Captura el/los registros deseados.
4. Hacer clic en Continuar.

Recuerda que si un campo es de tipo A_I su valor se genera automáticamente. Y si existen


relaciones entre las tablas, se capturan primero los datos en las tablas que no tienen
campos foráneos. Además, cuando se tiene este tipo de campo no se pueden capturar
valores que no han sido ingresados en las tablas principales.

Visualización de registros:
1. Abre la tabla que deseas observar (desde el panel izquierdo).
2. Haz clic en la pestaña Examinar.

Desde esta ventana se puede editar, copiar o borrar registros, entre otras cosas.
Borrar el contenido de una tabla o la misma tabla:
1. Selecciona la tabla en el panel izquierdo.
2. Haz clic en la pestaña Operaciones.
3. Elegir Vaciar la tabla/Borrar la tabla.

En esta pestaña también se puede renombrar una tabla, moverla, copiarla, etc. Igualmente
permite renombrar y eliminar toda la base de datos.

Exportar una base de datos


La manipulación de las bases de datos es un tanto distinta a la del resto de los archivos,
sobre todo lo relacionado con su almacenamiento y recuperación. En este punto Delgado
afirma que "una tarea muy importante cuando trabajamos con bases de datos, es la
posibilidad de poder llevarse tanto la estructura como sus datos hacia otra computadora
(hacia un hosting o para hacer un backup)" (Delgado, 2020).
Para hacerlo se debe:

1. Elegir la base de datos en el panel izquierdo.


2. Hacer clic en la pestaña Exportar.
3. Elegir el método de exportación (rápido o personalizado).
4. Elegir el formato SQL.
5. Dar clic en Continuar.

⁹ Información obtenida de [Link]

46 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


Con este procedimiento la base de datos se descarga a la computadora por lo que ahora
ya es posible guardarla en algún medio de almacenamiento. La exportación resulta
de utilidad cuando se desea asegurarse de conservar la base de datos para continuar
trabajando con ella.

Importar una base de datos


Para recuperar la copia de la base de datos se debe importar, los pasos para hacerlo son:

1. Descargar el archivo de la base de datos de donde se tenga almacenado.


2. Dentro de phpMyAdmin crear una nueva base de datos.
3. Ubicarse en la nueva base de datos.
4. Dar clic en la pestaña Importar.
5. Seleccionar el archivo a importar.
6. Elegir el formato SQL.
7. Dar clic en Continuar.

ACTIVIDAD 10 (EVALUACIÓN)

Continuación de práctica Bibliotecabd

Abrir la base de datos BibliotecaBD y de manera individual realizar


lo siguiente, utilizando las herramientas de phpMyAdmin. Al finalizar
presentarla de acuerdo a las indicaciones del docente.

1. Agregar 8 registros a cada tabla.


2. En la tabla Libro modificar el año de los 2 primeros registros poniendo
como dato 2010.
3. En la tabla Editorial modificar el título de los libros en los registros 5 y 6.
4. En ambas tablas eliminar los 2 últimos registros.
5. Guardar y conservar la práctica para aclaraciones posteriores.

ACTIVIDAD 11 (COEVALUACIÓN)

Práctica Obras literarias

En forma individual, crear una base de datos llamada Obras Literarias, conformada
de acuerdo a lo que indica la imagen que aparece abajo. En cada tabla se deben
definir los campos con su respectivo tipo de dato y los campos llaves y foráneos
señ[Link]és crear las relaciones mostradas y realizar las acciones que
solicite el docente, entre las que se incluye agregar, editar y eliminar registros.

CoBachBC Colegio de Bachilleres del Estado de Baja California 47


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Las relaciones que hay entre las tablas se representan en la siguiente imagen:

ACTIVIDAD 12 (EVALUACIÓN)

Práctica Empresa
Trabajando de manera individual, crear una base de datos llamada Empresa,
conformada por las tablas que aparecen en la imagen de abajo. En cada caso
definir su respectivo tipo de dato. Además, agregar la cantidad de registros
que se indique y realizar las acciones que solicite el docente.

48 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


ACTIVIDAD INTEGRADORA PARTE 3

Continuación de propuesta de Base de datos

Retomando el diseño de la base de datos del bloque anterior y continuando


el trabajo en binas, realizar lo siguiente:
1. Crear la base de datos con sus respectivas tablas dentro de la plataforma
Xampp asegurándose de cumplir con el diseño original en cuanto a
campos, tipos de datos, tamaños y relaciones.
2. Empleando las herramientas de phpMyAdmin capturar registros, añadiendo
los necesarios para completar 8 en cada tabla.
3. Realizar las acciones de edición y eliminación de registros que indique el
docente.
4. Guardar la práctica para su uso posterior.

SQL (LENGUAJE ESTRUCTURADO DE CONSULTA)

Introducción a SQL.

SQL es una herramienta para organizar, gestionar y recuperar datos almacenados en una
base de datos automatizada. El nombre SQL proviene de la abreviatura de Structured
Query Language (Lenguaje estructurado de consultas).

Se le reconoce como "un tipo de lenguaje de programación que ayuda a solucionar


problemas relacionados con la definición, manipulación e integridad de la información
representada por los datos que se almacenan en las bases de datos" (Ramos, 2018).

SQL trabaja con bases de datos relacionales y hace uso de las tablas como elemento
fundamental. Es mucho más que una herramienta de consulta, aunque ese fue su
propósito original y recuperar datos sigue siendo una de sus funciones más importantes.
Se caracteriza porque permite realizar con rapidez y facilidad la definición y manipulación
de los objetos de una base de datos.

En general se utiliza para controlar todas las funciones que un DBMS (Sistema de Gestión
de Bases de Datos) proporciona a sus usuarios, incluyendo:

• Definición de datos.
• Recuperación de datos.
• Manipulación de datos.
• Control de acceso.
• Compartición de datos.
• Integridad de datos.

CoBachBC Colegio de Bachilleres del Estado de Baja California 49


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Y para hacerlo cuenta con alrededor de 30 instrucciones básicas. Por otra parte, SQL
tiene las siguientes funciones:

• Consultas interactivas.
• Lenguaje de programación de base de datos.
• Lenguaje de administración de base de datos.
• Lenguaje cliente/servidor.
• Lenguaje de base de datos distribuidos.

Componentes de SQL
El lenguaje SQL está compuesto por comandos, cláusulas, operadores y funciones de
agregado. Estos elementos se combinan en las instrucciones para crear, actualizar y
manipular las bases de datos. Existen dos tipos de comandos SQL:

• DDL: permiten crear y definir nuevas bases de datos, campos e índices.


• DML: permiten generar consultas para ordenar, filtrar y extraer datos de la base de
datos.

Comandos DDL

Comando Descripción

CREATE Utilizado para crear nuevas tablas, campos e índices.

DROP Empleado para eliminar tablas e índices.

Utilizado para modificar las tablas agregando campos o cambiando la


ALTER
definición de los campos.

Comandos DML
Comando Descripción
Utilizado para consultar registros de la base de datos que satisfagan un
SELECT
criterio determinado.
Utilizado para cargar lotes de datos en la base de datos en una única
INSERT
operación.

UPDATE Utilizado para modificar los valores de los campos y registros especificados.

DELETE Utilizado para eliminar registros de una tabla de una base de datos.

50 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


Cláusulas

Las cláusulas son condiciones de modificación utilizadas para definir los datos que desea
seleccionar o manipular.
Cláusula Descripción

FROM Utilizada para especificar la tabla de la cual se van a seleccionar los registros.

Utilizada para especificar las condiciones que deben reunir los registros que
WHERE
se van a seleccionar.

GROUP BY Utilizada para separar los registros seleccionados en grupos específicos.

HAVING Utilizada para expresar la condición que debe satisfacer cada grupo.

Utilizada para ordenar los registros seleccionados de acuerdo con un orden


ORDER BY
específico.

Operadores Lógicos

Operador Uso
Es el “y” lógico. Evalúa dos condiciones y devuelve un valor de verdad sólo
AND
si ambas son ciertas.
Es el “o” lógico. Evalúa dos condiciones y devuelve un valor de verdad si
OR
alguna de las dos es cierta.

NOT Negación lógica. Devuelve el valor contrario de la expresión.

Operadores de Comparación

Operador Uso

< Menor que

> Mayor que

<> Distinto de

<= Menor ó Igual que

>= Mayor ó Igual que

= Igual que

BETWEEN Utilizado para especificar un intervalo de valores.

LIKE Utilizado en la comparación de un modelo.

In Utilizado para especificar registros de una base de datos.

CoBachBC Colegio de Bachilleres del Estado de Baja California 51


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Funciones Sumarias
Las funciones de agregado o sumatorias, se usan dentro de una cláusula SELECT para
devolver un único valor que se aplica a un grupo de registros.

Función Descripción

AVG Calcula el promedio de los valores de un campo determinado.

COUNT Devuelve el número de registros de la selección.

Devuelve la suma de todos los valores de un campo


SUM
determinado.

MAX Devuelve el valor mayor de un campo especificado.

MIN Devuelve el valor menor de un campo especificado.

Para aplicar los comandos DDL, dentro de phpMyadmin se abre la base de datos con la que
se va a trabajar y se da clic en la pestaña SQL ubicada en la parte superior de la ventana.

Área de trabajo

Con esto se muestra una ventana con un espacio en blanco (área de trabajo) donde se
capturan las instrucciones SQL y después se da clic en el botón Continuar. Si la sentencia
no contiene error aparece un mensaje indicando que se realizó la acción.
SINTAXIS Y EJEMPLOS
CREATE TABLE “nombre_tabla” (campo1 “tipo de datos” (valor), campo2 “tipo de datos (valor), etc.)

CREATE TABLE clientes (apellido varchar(15), nombre varchar(12), num_credencial int (5))

DROP TABLE “nombre_tabla”

DROP TABLE clientes

ALTER TABLE “nombre_tabla”


ALTER TABLE clientes
ADD DIRECCION VARCHAR (20), ADD STATUS VARCHAR (10) DROP COLUMN DIRECCION

52 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


ACTIVIDAD 13

Continuación práctica Empresa


Abrir la base de datos EMPRESA y en forma individual realizar lo siguiente, aplicando
los comandos de SQL.

1. En la tabla Clientes agregar el campo Fecha_Alta enseguida de Dirección.


2. En la tabla Empleados agregar el campo Puesto enseguida de Nombre.
3. Cerrar la base de datos y guardarla para su uso posterior.

Si lo que se desea es trabajar con los comandos DLM y el resto de cláusulas y operadores,
se abre la base de datos, después elegir la tabla a editar y hacer clic en la pestaña
SQL. Con esto igualmente se observa un espacio como área de trabajo para capturar las
instrucciones deseadas.

INSERT
Esta sentencia agrega uno o más registros a una tabla de una base de datos relacional.
La cantidad de columnas y valores deben ser iguales a los de la tabla, si alguna no se
especifica le será asignado el valor por omisión y si ocurre un error de sintaxis no se
agrega el registro y se devuelve un error.

SINTAXIS Y EJEMPLO

INSERT INTO “nombre_tabla” (“campo1“, “campo2”…) VALUES (“valor1”, “valor2”…)

Donde:
• Nombre_tabla es el nombre de la tabla donde se agregarán los registros.
• Campo1, campo2, son los campos que integran la tabla.
• Valor1, valor2, son los valores que se asignará a cada campo.

INSERT INTO “clientes” (apellido, nombre, num_credencial, status) VALUES (“Torres”, “Miguel”,
34562, “activo”)

Es importante señalar que cada dato de la lista VALUES se corresponde y se asigna a


cada campo de la tabla en el mismo orden de aparición de la sentencia INSERT.

UPDATE

Esta instrucción permite actualizar los valores de los campos de una tabla, para uno
o varios registros, incluso para todos los registros de la tabla. Se apoya en la cláusula
WHERE.

SINTAXIS Y EJEMPLO

UPDATE “nombre_tabla” SET “nombre_campo“=nuevo_valor WHERE “condición:campo x=?”

CoBachBC Colegio de Bachilleres del Estado de Baja California 53


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Donde:

• Nombre_tabla es el nombre de la tabla en la que se va a actualizar datos.


• Set, indica los campos que se van a actualizar y los valores que se van a establecer.
• Where se utiliza para identificar a los registros que se va a actualizar.

UPDATE “clientes” SET status=”inactivo” WHERE apellido=”Torres”

Al utilizar el comando Update hay que considerar algunos aspectos, el primero se refiere a
que dentro de SET se debe mencionar sólo los campos que se desea modificar y en
WHERE solo señalar un punto de referencia para ubicar el registro deseado. También es
importante recalcar que, si varios registros cumplen con la condición, también se
modificarán.

DELETE

La instrucción DELETE permite eliminar registros específicos o vaciar por completo una
tabla. Se apoya en las cláusulas FROM y WHERE para indicar de qué tabla y cuáles
registros se van a borrar.

SINTAXIS Y EJEMPLO

DELETE FROM “nombre_tabla” WHERE “nombre campo“=valor

DELETE FROM “clientes” WHERE nombre=”Miguel”


DELETE FROM “clientes” (para borrar todos los registros)

Al eliminar registros de una tabla, éstos no deben figurar como clave foránea en otra tabla
porque se generaría un error de integridad referencial.

ACTIVIDAD 14

Continuación práctica Empresa

Abrir la base de datos EMPRESA y trabajando en forma individual realizar lo


siguiente aplicando los comandos de SQL.

1. Agregar 2 registros a cada tabla.


2. Modificar el 5to registro de la tabla Empleado, anotando tus propios datos.
3. Modificar los 2 últimos registros de la tabla Cliente, anotando los de tus padres /
hermanos.
4. Eliminar los registros que se indique.
5. Cerrar la base de datos y guardarla para su uso posterior.

54 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


ACTIVIDAD INTEGRADORA PARTE 4

Continuación de propuesta de base de datos

Aquí se retoma la base de datos del tema libre creada en la fase anterior
para continuar con el trabajo en binas, pero ahora aplicando sentencias
SQL (Insert, Update, Delete). Los pasos específicos a realizar serán
determinados por el docente, aunque debe asegurarse de cumplir con lo
siguiente:

1. Capturar al menos 2 registros por tabla.


2. Modificar los registros que se indique.
3. Eliminar los registros que se indique.
4. Guardar la práctica para su uso posterior.

CONSULTAS
Una consulta es una búsqueda y recuperación de información contenida dentro de
una base de datos. Esta recuperación suele basarse en filtros o criterios de búsqueda
aplicables a una o varias de las tablas que conforman la base de datos.

Dentro de SQL la realización de consultas se sustenta en la sentencia SELECT, que a su


vez se apoya en una serie de cláusulas como WHERE, ORDER BY, LIKE, AND, etc. El
resultado de una consulta Select devuelve una tabla con los datos que cumplen con
la orden y cuyo contenido es modificable. Esta tabla se ubica en memoria mientras es
utilizada, después se descarta y cada vez que se ejecuta la consulta se vuelve a calcular
el resultado.

Las consultas pueden ser simples o complejas, conforme se combine en la sentencia


Select el uso de distintas cláusulas y funciones.

Consultas básicas o simples


Son aquellas donde la recuperación de datos no implica criterios de selección ni
presentación.

SINTAXIS Y EJEMPLOS

SELECT campo(s) FROM nombre_tabla

En donde campo(s) es la lista de campos que se deseen recuperar y nombre_tabla es el


origen de los mismos, por ejemplo:

SELECT Nombre, Teléfono FROM Clientes

Esta consulta devuelve el campo nombre y teléfono de la tabla Clientes.

SELECT * FROM Clientes

Esta consulta devuelve todos los campos de todos los registros de la tabla Clientes.

CoBachBC Colegio de Bachilleres del Estado de Baja California 55


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Consultas con ordenamiento


Durante una consulta se puede especificar el orden en que se desean recuperar los registros
de las tablas mediante la cláusula ORDER BY. La instrucción se debe complementar
señalando el campo o campos a ordenar, así como el tipo de ordenamiento que se desea
(ascendente o descendente). Si esto último no se especifica como es el caso de los 2
primeros ejemplos, por defecto se realiza un ordenamiento ascendente.
SELECT CódigoPostal, Nombre, Teléfono FROM Clientes ORDER BY Nombre

Esta consulta devuelve los campos CódigoPostal, Nombre, Teléfono de la tabla Clientes
ordenados por el campo Nombre.

También se pueden ordenar los registros por más de un campo, por ejemplo:
SELECT CódigoPostal, Nombre, Teléfono FROM Clientes ORDER BY CódigoPostal, Nombre

Para indicar que se desea un ordenamiento ascendente se utiliza ASC y para descendente
DESC como se muestra en el siguiente ejemplo.
SELECT CódigoPostal, Nombre, Teléfono FROM Clientes ORDER BY CódigoPostal DESC, Nombre
DESC

Esta consulta devuelve los campos CódigoPostal, Nombre, Teléfono de la tabla Clientes
ordenados en forma descendente por el campo Nombre.

Consultas con predicado


Son aquellas que permiten establecer ciertas restricciones para la recuperación de la
información durante la consulta. El predicado se incluye entre el comando y el primer
nombre del campo a recuperar, los posibles predicados son:

Predicado Descripción

ALL Devuelve todos los campos de la tabla.

TOP Devuelve un determinado número de registros de la tabla.

DISTINCT Omite los registros cuyos campos seleccionados coincidan totalmente.

Omite los registros duplicados basándose en la totalidad del registro y no sólo


DISTINCTROW
en los campos seleccionados.

ALL: Es el predicado por defecto, es decir, se aplica en caso de que no se especifique


ningún otro. De esta forma, el Motor de base de datos selecciona todos los registros que
cumplen las condiciones de la instrucción SQL.
Ejemplo:
SELECT ALL FROM Empleados
SELECT * FROM Empleados

Esta consulta devuelve todos los registros de la tabla Empleados.

56 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


TOP: Devuelve un determinado número de registros que se encuentran en la parte superior
o inferior de un intervalo especificado por una cláusula ORDER BY.

Suponiendo que se desea recuperar los nombres de los 25 primeros estudiantes del curso
2010 de la tabla Alumnos, considerando su promedio.

SELECT TOP 25 Nombre FROM Alumnos WHERE Curso=2010 ORDER BY Promedio DESC

Si no se incluye la cláusula ORDER BY, la consulta devolverá un conjunto arbitrario de 25


registros de la tabla Alumnos que cumplan la cláusula WHERE.

DISTINCT: Omite los registros que contienen datos duplicados en los campos
seleccionados. En otras palabras, devuelve aquellos registros cuyos campos indicados en
la cláusula SELECT posean un contenido diferente al eliminar automáticamente aquellos
que estén repetidos.

Por ejemplo, varios empleados listados en la tabla Empleados pueden tener el mismo
apellido. Si dos registros contienen López en el campo Apellido, la siguiente instrucción
SQL devuelve un único registro:

SELECT DISTINCT Apellido FROM Empleados

DISTINCTROW: Omite datos basados en registros duplicados completos, no sólo en ciertos


campos duplicados. Es decir, devuelve los registros diferentes de una tabla, en contraste
con el predicado anterior que sólo revisa el contenido de los campos especificados este lo
hace en el contenido del registro completo, independientemente de los campos indicados
en la sentencia SELECT.

SELECT DISTINCTROW Apellido FROM Empleados


Esta consulta devuelve todos los registros distintos de la tabla Empleados.

Consultas con Criterios de Selección


En una consulta es posible filtrar los registros con el fin de recuperar solamente aquellos
que cumplan ciertas condiciones preestablecidas.

Antes de iniciar hay que recalcar tres detalles de vital importancia.

1. Cada vez que se desee establecer una condición referida a un campo de texto, la
condición de búsqueda debe ir encerrada entre comillas simples.
2. No es posible establecer condiciones de búsqueda en los campos memo.
3. Las fechas se deben escribir siempre en formato mm-dd-aa en donde mm representa
el mes, dd el día y aa el año. Hay que prestar atención a los separadores -no sirve la
separación habitual de la barra (/)- hay que utilizar el guion (-) y además la fecha debe
ir encerrada entre (#). Por ejemplo si deseamos referirnos al día 3 de Septiembre de
2007 se debe hacer de la siguiente forma; #09-03-07# o #9-3-07#.

CoBachBC Colegio de Bachilleres del Estado de Baja California 57


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Las consultas con criterios de selección se apoyan especialmente en las cláusulas FROM
y WHERE. La primera para especificar la tabla o tablas de las que se obtendrán los datos
y la segunda para establecer las condiciones de búsqueda. Por ejemplo:

SELECT Nombre, Teléfono FROM Clientes WHERE Nombre=”Camila”

Esta consulta devuelve el campo nombre y teléfono de la tabla Clientes en donde el


nombre del cliente es Camila.

A. Operadores lógicos y de comparación


Para establecer condiciones durante una consulta se pueden utilizar operadores lógicos o
de comparación, que pueden incluso combinarse para que el usuario pueda obtener la
información específica que necesita.

Los operadores lógicos soportados por SQL son: AND, OR, XOR, Eqv, Imp, Is y Not,
siendo los más comunes AND, OR y NOT.

La forma en la que estos funcionan es la siguiente:


AND: Evalúa 2 condiciones y arroja un resultado de Verdad si ambas son ciertas.
OR: Evalúa 2 condiciones y arroja un resultado de Verdad si alguna de las 2 es cierta.
NOT: Devuelve el valor contrario de la expresión.

Por su parte los operadores de comparación más utilizados son < (menor que), > (mayor
que), = (igual), <= (menor o igual que), >= (mayor o igual que) y <> (distinto de) y su
funcionamiento es el ya conocido dentro del área de la lógica y matemática.

Al realizar una consulta usualmente se aplican combinaciones de ambos tipos de


operadores. Enseguida se presentan algunos ejemplos:

1.- SELECT * FROM Empleados WHERE Edad>25


Devuelve los registros de la tabla Empleados donde la Edad es mayor a 25.

2.- SELECT Apellidos, Salario FROM Empleados WHERE Salario<21000


Devuelve los apellidos y salarios de la tabla Empleados donde el salario es máximo 21000.

3.- SELECT * FROM Empleados WHERE Apellido=”Ramírez” AND Edad>25


Devuelve los registros de la tabla Empleados donde el apellido es Ramírez y la edad es
mayor a 25 (deben cumplir ambas condiciones).

4. - SELECT * FROM Empleados WHERE Edad<=40 OR Nombre=”José”

Devuelve los registros de la tabla Empleados donde la edad es máximo 40 o el nombre es


José (cualquier registro que cumpla al menos una de las condiciones se mostrará).

58 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


5.- SELECT * FROM Empleados WHERE NOT Apellido=”Torres”
Devuelve los registros de la tabla Empleados donde el apellido no es Torres.

6.- SELECT * FROM Empleados WHERE (Edad>30 AND Edad<50) OR Sueldo=1700

Devuelve los registros de la tabla Empleados donde la edad es mayor a 30 pero menor a
50, o bien, el sueldo es 1700.

B. Intervalos de valores (BETWEEN)

Para orientar la recuperación de los datos de acuerdo al intervalo de valores de un campo


específico se utiliza el operador BETWEEN. Se apoya en la cláusula AND y su sintaxis es:

SELECT nombre_campo(s) FROM nombre_tabla WHERE campo [NOT]


BETWEEN valor1 AND valor2 (la condición Not es opcional)

En este caso la consulta devolvería los datos de los campos indicados en nombre_
campo(s), siempre que contengan en “campo” un valor incluido en el intervalo valor1,
valor2 (ambos inclusive). Si se antepone la condición NOT, devolverá aquellos valores no
incluidos en el intervalo.

Ejemplos:

SELECT * FROM Pedidos WHERE CodPostal BETWEEN 28000 AND 28999

Esta consulta devuelve los registros de la tabla Pedidos donde el código postal está entre
28000 y 28999.

SELECT Nombre FROM Productos WHERE Precio BETWEEN 200 AND 600

Aquí se devuelven los nombres de los productos cuyo precio oscila entre 200 y 600.
C. Operador LIKE
Muestra los datos donde el campo especificado cumpla con el patrón señalado. En este
modelo o patrón se puede especificar un valor completo (Ana Paola) o utilizar los caracteres
comodín especiales “%” y “_” para hacer referencia a varios valores. Con el primero se
indica que en su lugar puede ir cualquier cadena de caracteres y con el segundo, que
puede ir cualquier carácter individual (uno solo).
Con la combinación de estos caracteres es posible obtener múltiples patrones de
búsqueda.
Por ejemplo:
Todo nombre que empiece con A: Nombre LIKE ‘A%’
Todo nombre que termine en A: Nombre LIKE ‘%A’
Todo nombre que contiene la letra A: Nombre LIKE ‘%A%’
Todo nombre que empiece con A y después contiene un solo carácter cualquiera: Nombre
LIKE ‘A_’
Todo nombre que empiece con A, después cualquier carácter, luego una E y al final
cualquier cadena de caracteres: Nombre LIKE ‘A_E%’

CoBachBC Colegio de Bachilleres del Estado de Baja California 59


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

La sintaxis de LIKE es:


SELECT nombre_campo(s) FROM nombre_tabla WHERE expresión LIKE ‘Patrón’

En donde “expresión” es una cadena modelo o campo que se compara contra el patrón.

Ejemplos:
SELECT * FROM Empleados WHERE Apellido LIKE ‘%Z’

Esta consulta devuelve los registros de la tabla Empleados donde el apellido termine con
la letra Z.

Aquí se devuelven los apellidos, nombres y puestos de los empleados cuyo nombre
contenga a la letra E.

D. Test de pertenencia (IN)

Este operador devuelve aquellos registros cuyo campo indicado coincide con alguno de
los descritos en una lista. Se puede utilizar solo o combinado con el operador NOT.

Su sintaxis es:

SELECT * FROM nombre_tabla WHERE expresión IN (valor1, valor2, etc.)


SELECT * FROM nombre_tabla WHERE expresión NOT IN (valor1, valor2, etc.)

En donde “expresión” es el campo cuyo valor se compara con la lista mostrada.

Ejemplos:

SELECT * FROM Clientes WHERE Apellido IN (‘Contreras’, ‘Ramírez’, ‘Castro’)

Esta consulta devuelve los registros de la tabla Clientes donde el apellido sea Contreras,
Ramírez y Castro.

SELECT Apellido, Nombre, Depto FROM Empleados WHERE Depto NOT IN


(‘Ensamble’, ‘Motores’) ORDER BY Apellido DESC

Aquí se recuperan los apellidos, nombres y departamentos de los empleados que no


pertenecen a las áreas de ensamble y motores, mostrando los resultados ordenados en
forma descendente de acuerdo a su apellido.

60 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


ACTIVIDAD 15
Continuación práctica Empresa.
Abrir la base de datos EMPRESA y trabajando de manera individual, realizar las
siguientes consultas aplicando los comandos de SQL. En caso de que no se tengan
los datos indicados, pedir apoyo al docente para que adecue el ejercicio.

1. Mostrar a los empleados que pertenecen al departamento de Contabilidad.


2. Mostrar el NumeroEmpleado, Nombre y Apellidos de aquellos cuyo número de
empleado este entre 100 y 400.
3. Mostrar todos los apellidos de los empleados de la empresa omitiendo los que se
repiten.
4. Mostrar el Nombre, Apellido y Dirección de aquellos clientes cuyo apellido inicia con R.
5. Mostrar el Nombre y Apellidos de los empleados donde este último contenga la letra T.
6. Mostrar el NumeroProducto, Nombre y Precio de los productos cuyo precio es máximo
300, ordenándolos en forma descendente de acuerdo a este.
7. Mostrar el NumeroFolio, NumeroProducto y TotalPagar de las facturas donde el total
a pagar sea más de 500 pero menos de 2000.
8. Mostrar el NumeroProducto, Cantidad y TotalPagar de las facturas donde la Cantidad
esté entre 3-5 ó TotalPagar sea mínimo 1000.
9. Mostrar aquellos productos cuyo precio sea: 75, 120, 48 ordenados en forma
ascendente de acuerdo a su nombre.
10. Pedir al profesor que revise los ejercicios y guardar la práctica.

Consultas con Agrupamiento de Registros (GROUP BY)


La cláusula GROUP BY se utiliza para agrupar registros que tienen los mismos valores
en el campo especificado. Las consultas que contienen esta instrucción se denominan
“consultas agrupadas” y sólo devuelven una fila para cada elemento agrupado. Se
recomienda que la columna que guiará el agrupamiento se considere también dentro de
SELECT.

Adicionalmente se puede acompañar de funciones agregadas (AVG, COUNT, SUM) para


obtener resultados sumarios. En los campos GROUP BY los valores Null se agrupan mas
no se evalúan en las funciones agregadas.

Su sintaxis es:

Aplicación simple:
SELECT nombre_campo1 FROM nombre_tabla GROUP BY nombre_campo2

Aplicación con función agregada:


SELECT nombre_campo1 FUNCION (nombre_campo2) FROM nombre_tabla
GROUP BY nombre_campo1

CoBachBC Colegio de Bachilleres del Estado de Baja California 61


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Aplicación con criterio de selección:


SELECT nombre_campo1 FROM nombre_tabla WHERE criterio GROUP BY
nombre_campo2
Donde:

• Select señala el campo que se va a recuperar (pueden ser varios).


• Group by, indica el campo que se utilizará para agrupar.
• Función establece la realización de una operación con los datos del campo especificado.
• Where, permite establecer un criterio para la selección de datos.

Ejemplos:
SELECT País, Ciudad FROM Clientes GROUP BY Ciudad

Devuelve los países y ciudades contenidos en Clientes, agrupándolos de acuerdo a la


ciudad.
SELECT País, COUNT(Ciudad) FROM Clientes GROUP BY Ciudad

Devuelve los países contenidos en Clientes y el conteo de registros agrupándolos por


ciudad.

SELECT Id_Linea, SUM(Stock) FROM Productos GROUP BY Id_Linea.

Devuelve el Id de línea y la suma de stock de la tabla Productos agrupando por id_Linea


SELECT Nombre_cliente, AVG(Ventas) FROM Clientes WHERE Ventas>5000 GROUP BY
Nombre_cliente

Devuelve el nombre de los clientes y su promedio de ventas considerando aquellas que


exceden de 5000 y agrupando los resultados por cliente.
Funciones de agregado.
En algunos de los ejemplos anteriores se han utilizado funciones para realizar operaciones
con los datos. Enseguida se describen las que más comúnmente se incluyen en una
consulta y que maximizan su utilidad.
Las funciones de agregado se utilizan dentro de la cláusula SELECT para realizar
cálculos aritméticos o estadísticos con los datos de un campo incluido en una consulta
con agrupamiento de registros. Por cada agrupamiento realizado se arroja un solo registro
con los resultados.
Las más utilizadas son las siguientes:

SUM: Calcula la suma del conjunto de valores contenido en un campo específico de una
consulta.
Sintaxis: SUM (expresión) donde:
“Expresión” es el nombre del campo que contiene los datos o una expresión que realiza
un cálculo utilizando los datos de dicho campo.

62 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


AVG: Calcula la media aritmética de un conjunto de valores contenidos en un campo
específico de una consulta.

Sintaxis: AVG (expresión) donde:

“Expresión” representa el nombre del campo que contiene los datos para los que se desea
calcular la media o una expresión que realiza un cálculo utilizando los datos de dicho
campo.

Esta función no incluye ningún campo Null.


COUNT: Cuenta el número de registros que cumplen una determinada condición. Puede
contar cualquier tipo de dato, incluso texto, pero no incluye valores Null.

Sintaxis: COUNT (expresión) donde:

“Expresión” contiene el nombre del campo que se desea contar. Si se desea incluir a los
campos NULL en el conteo, se debe escribir COUNT(*)

MAX Y MIN: Permiten determinar el valor máximo o mínimo de un conjunto de datos


contenido en un campo específico de una consulta.

Sintaxis: MAX(expresión) y MIN(expresión) donde:

“Expresión” es el campo sobre el que se desea realizar la operación.

Ejemplos:

SELECT AVG(Precio) FROM Productos


Esta sentencia devuelve un valor que es el promedio de los precios de todos los artículos
de la tabla productos.

SELECT MAX(Precio) FROM Productos

Con esta orden se obtiene el precio mayor de los artículos de la tabla productos.

SELECT MIN(Precio) FROM Productos WHERE Proveedor=”Bimbo”


Esta orden devuelve el menor de los precios de los artículos cuyo proveedor es Bimbo de
la tabla productos.

SELECT País, COUNT(Nombre_cliente) FROM Clientes GROUP BY País


Devuelve los países contenidos en Clientes y el conteo de clientes agrupándolos por país.

SELECT COUNT (Nombre_cliente) FROM Clientes WHERE País=”España”

Devuelve el número de clientes que son de España.

CoBachBC Colegio de Bachilleres del Estado de Baja California 63


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Consultas con Alias (AS)


Un alias es sólo otra forma de nombrar a una tabla o columna y se utiliza sobre todo
cuando los nombres originales son largos o complicados. También se usan para nombrar
a las columnas calculadas, las cuales se generan durante la consulta con el apoyo de los
operadores aritméticos y funciones agregadas.
De esta manera los alias permiten hacer más comprensible el resultado de una consulta.
Su creación se apoya en la palabra reservada AS que al utilizarla dentro de SELECT
renombra columnas (campos) y dentro de FROM renombra tablas.
Su sintaxis para renombrar una columna es:
SELECT nombre_campo AS alias_columna FROM nombre_tabla

Donde “nombre_campo2 es el nombre de la columna a recuperar misma que será


renombrada con el texto que indica “alias_columna”.
Ejemplos:
SELECT Nombre AS Empleado FROM Trabajadores

Esta sentencia devuelve los nombres de los trabajadores poniendo como nombre a la
columna resultante “Empleado”.
SELECT COUNT(Nombre) AS Contador FROM Empleados

Sentencia que devuelve la cantidad de empleados de la tabla Empleados, poniendo como


nombre al resultado “Contador”.

SELECT AVG (Gastos) AS Promedio FROM Pedidos WHERE Gastos > 100

Sentencia que devuelve el promedio de los gastos mayores a 100 de la tabla Pedidos,
poniendo como nombre al resultado “Promedio”.

SELECT Nombreyapellido AS Nombre FROM Clientes

Sentencia que recupera el nombre y apellido de los clientes poniendo como nombre a la
columna resultante “Nombre”.

SELECT MIN (Gasto_total) AS Gastos FROM Pedidos WHERE Pais=”Argentina”

Devuelve el mínimo de los gastos de los pedidos realizados por Argentina nombrando al
valor resultante “Gastos”.
SELECT (PrecioUnidad * Cantidad) AS Total FROM DetallePedido;

Devuelve los productos de las columnas PrecioUnidad y Cantidad de la tabla DetallePedido,


nombrando a la columna resultante “Total”.
SELECT Sum (PrecioUnidad * Cantidad) AS Total FROM DetallePedido;

Devuelve la suma total del producto de las columnas PrecioUnidad y Cantidad de la tabla
DetallePedido, nombrando al valor resultante “Total”.

64 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


SELECT LastName AS Apellido, City AS Ciudad, Region FROM Employess AS Emplea-dos WHERE
Country=”USA”
Devuelve el apellido, ciudad y región de los empleados de USA cambiando el nombre de
la tabla y los campos a español.
Consultas con subconsultas
Una subconsulta es una sentencia SELECT que aparece dentro de la sentencia SELECT
que pertenece a la consulta principal. Se puede encontrar en la lista de selección (SELECT)
o en las cláusulas WHERE o HAVING de la consulta principal.
La subconsulta tiene la misma sintaxis que una sentencia SELECT normal exceptuando
que aparece encerrada entre paréntesis. No puede contener la cláusula ORDER BY ni
puede ser la unión de varias sentencias Select, igualmente se recomienda que no contenga
campos calculados. Su uso tiene además algunas restricciones en cuanto al número de
columnas que puede incluir según el lugar donde aparece en la consulta principal.
Cuando se ejecuta una consulta que contiene una subconsulta, ésta se ejecuta primero,
una vez por cada fila de la consulta principal. Es decir, cada resultado de la subconsulta es
utilizado en la consulta principal.
Las subconsultas pueden ser simples o complejas al apoyarse en los operadores
aritméticos, de comparación y en ciertas instrucciones como ANY, ALL, IN, etc.
Subconsultas simples
Son aquellas que como resultado devuelven un único valor que a su vez ha de utilizarse
en la consulta principal para generar el resultado final.
Sintaxis:
SELECT nombre_campo(s) FROM nombre_tabla WHERE nombre_campo2
OPERADOR (SELECT nombre_campo(s) FROM nombre_tabla
Donde:
Nombre_campo(s) son las columnas a recuperar de la consulta y subconsulta.
Nombre_campo2 y Operador definen el criterio para la recuperación de datos de la
subconsulta. Este operador puede ser >, <, =, >=, <= ó ¡=.
Ejemplo:
SELECT Nombre_empleado, Puesto, Salario FROM Empleados WHERE Salario>
(SELECT Salario FROM Empleados WHERE Nombre_empleado=”Patricia”)

Esta consulta devuelve el nombre, puesto y salario de aquellos empleados que ganen
más que Patricia. La subconsulta en este caso sólo arroja el salario de esta persona, el
cual posteriormente se compara con los demás sueldos en la consulta principal.

SELECT Num_emp, Nombre_empleado FROM Empleados WHERE Contrato= (SELECT


MIN(Fecha_pedido) FROM Pedidos)
Aquí se obtiene el número de empleado y nombre de aquellas personas cuya fecha de
contrato sea igual a la fecha del primer pedido de la empresa.

CoBachBC Colegio de Bachilleres del Estado de Baja California 65


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Subconsultas con predicado


Son aquellas que incorporan el uso de instrucciones para recuperar datos más específicos.
Las más utilizadas son:

Estos términos se consideran sinónimos. Compara con cualquier registro de la


ANY/SOME subconsulta. La instrucción es válida si en esta hay al menos un registro que
permite que la comparación sea cierta.

Compara con todos los registros de la consulta. La instrucción resulta cierta si


ALL
es cierta toda comparación con los registros de la subconsulta.

No realiza una comparación, sólo comprueba si un valor se encuentra en el


IN/NOT IN
resultado de la subconsulta. Al agregar NOT se comprueba lo contrario.

Devuelve verdadero si la consulta que le sigue devuelve algún valor, si no,


EXISTS/ NOT devuelve falso. Al incorporar NOT funciona al contrario. No recupera datos,
sólo funciona como un test de existencia

Ejemplos:

SELECT * FROM Productos WHERE Idproducto IN (SELECT Idproducto FROM Detallepedido


WHERE Descuento >= 0.25)

Despliega todos los productos vendidos con un descuento igual o mayor al 25 por ciento.
SELECT Compañia, Teléfono FROM Clientes WHERE Idcliente IN (SELECT Idcliente FROM
Pedidos)

Despliega la compañía y teléfono de los clientes que hayan realizado al menos un pedido.
SELECT * FROM Hospital WHERE Id_hospital EXISTS (SELECT Id_hospital FROM Clinicas
WHERE Especialidad=”Cardiología”)

Despliega los hospitales cuya especialidad es cardiología.


SELECT Nombre FROM Empleados WHERE Sexo=”M” AND Edad> ANY (SELECT Edad
FROM Empleados WHERE Sexo=”H”)

Despliega los nombres de los empleados mujeres cuya edad es mayor a la de cualquier
hombre.
SELECT Titulo, Precio FROM Libros WHERE Autor=”Irving Wallace” AND Precio> ALL (SELECT
Precio FROM LIbros WHERE Autor=”Paulo Coelho”)
Despliega los títulos y precios de los libros escritos por Irving Wallace cuyo precio es
mayor a todos los de Paulo Coelho.

66 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


ACTIVIDAD 16
Continuación práctica Obras literarias

Abrir la base de datos OBRAS LITERARIAS y de manera individual realizar las siguientes
consultas aplicando los comandos de SQL. En caso de que no se tengan los datos
indicados, pedir apoyo al docente para que adecue el ejercicio.

1. Agregar la columna Num_pags a la tabla Obras y capturar sus valores.


2. Mostrar el Id_autor, Nombre y Estilo_literario, agrupando por este último.
3. Encontrar y mostrar al autor de mayor edad.
4. Mostrar cuántos libros fueron editados antes del año 2005 nombrando al resultado
TOTAL.
5. Mostrar el promedio de las páginas de todos los libros nombrando al resultado PROM.
6. Mostrar los títulos, fechas de edición y argumentos de los libros que fueron editados
en 2000, 2010 y 2015.
7. Mostrar a los autores cuyo estilo literario es Poético o Descriptivo.
8. Encontrar cuántos de los autores nacidos en México nacieron antes de 1950.
9. Mostrar el título y argumento del libro que tiene el menor número de páginas.
10. Pedir al profesor que revise los ejercicios y guardar la práctica

ACTIVIDAD 17

Práctica Compañía Nova Tech (Evaluación)


De manera individual crear una base de datos con el nombre de COMPAÑÍA NOVA_
TECH conformada con las tablas que se anexan. En cada una se deben definir los
tipos de datos para los campos y asignar como campo llave la primer columna.
Después realizar las acciones necesarias para resolver los ejercicios planteados
utilizando sólo sentencias SQL. Presentar la práctica de acuerdo a las indicaciones
del docente.

Tabla Productos
Clave-prod Descripción Precio-prod Línea
1587 Motherboard Pentium IV $450.00 01
2020 Impresora Láser HP 175.99 01
2145 Impresora Deskjet 150.00 01
9052 Monitor Svga 99.99 01
9147 Mouse 15.99 01
9268 Windows xp Software 53.21 08
9978 Software Creative 55.89 08
9987 Aplique SQL (libro) 28.89 05
9989 Microsoft (Libro) 25.89 05
9997 Microsoft Publisher 97.89 08
9998 Cable coaxial 25.20 02

CoBachBC Colegio de Bachilleres del Estado de Baja California 67


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Tabla Clientes
No_cte Nombre Dirección Teléfono Estado
1000 Javier Barragán Otay 23-64-72 A
1001 Enrique Ramírez Hipódromo 82-25-36 A
1002 Camila Ortega La Mesa 85-56-98 B
1003 Martha Ruiz Otay 89-78-48 A
1004 Jorge Gutiérrez Playas 56-85-79 A

Tabla Fact-Art Tabla Facturas


No-fact No-pto Cantidad No-fact No-cte Fecha
100 1587 160 100 1001 03/12/06
101 9978 100 101 1003 03/06/07
102 2020 150 102 1002 03/01/06
102 9147 1000 103 1001 14/06/06
103 1587 2500 104 1002 25/10/06
104 2145 1200 105 1003 03/01/06
105 9147 1400 106 1002 24/11/06
106 2020 1500 107 1001 25/10/06
107 2020 2000 108 1004 24/11/06
107 9052 2500 109 1003 25/10/06
108 1587 3000 110 1002 03/01/06
109 9997 1000 111 1003 24/11/06
109 9268 5000 112 1004 14/06/06
110 9978 2000
110 9052 3000
111 9989 5000
111 9147 2000
112 9998 9000

Tabla Facturas
Cve-linea Descrip-linea
01 Equipo
02 Cables
05 Librería
08 Software

68 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


EJERCICIOS:
1. Encontrar el total acumulado de precio de productos de la línea Software
2. Desplegar los datos de la factura en la cual se le haya facturado al cliente Camila Ortega.
3. Desplegar los precios de los productos de la línea software.
4. Encontrar el nombre de los artículos facturados en la factura 107.
5. Desplegar la cantidad de facturas emitidas al cliente Enrique Ramírez.
6. Borrar aquellos clientes en donde el estado sea B
7. Encontrar el promedio de precios de los productos de la línea equipo.
8. Desplegar la clave y descripción de los productos cuyo precio está entre 50 y 100.00
9. Desplegar el número de factura, el nombre del cliente, de la factura emitida el 03/06/06.
10. Borrar a aquellos artículos de la línea cables.
11. Listar en un reporte los datos de los clientes cuyo estado sea A.
12. Desplegar el número de producto y los totales facturados por producto.
13. Encuentra los datos de las facturas que se hayan realizado al cliente Martha Ruiz.
14. Desplegar el promedio de cantidades de productos facturados por producto.
15. Desplegar el total de cantidad facturado del producto Mouse.

ACTIVIDAD DE RETROALIMENTACIÓN

Práctica Automotriz Corona

Instrucciones: A continuación se presenta un ejercicio a manera de cierre del


submódulo y como retroalimentación. Se sugiere trabajarlo en binas para favorecer
el apoyo entre pares.

Crear una base de datos con el nombre de AUTOMOTRIZ CORONA conformada con las
tablas que se anexan. En cada una se deben definir los tipos de datos para los campos y
asignar como campo llave la primer columna. Tanto la captura de datos como la realización
de los ejercicios planteados se debe efectuar utilizando sentencias SQL. Presentar la
práctica de acuerdo a las indicaciones del docente.
Tabla Partes Tabla Partes_Suministradas
No_ pto Parte Color Estado Precio C-prov No_pto Cant
P1 Tuerca Rojo 12 1.50
S1 P1 300
P2 Perno Verde 17 2.00
P3 Tornillo Azul 17 4.80 S1 P2 200
P4 Tornillo Rojo 14 1.20 S1 P3 400

Tabla Proveedores S1 P4 300

C_prov Nom Estado Ciudad S2 P2 300


S1 Salazar 20 Londres S2 P2 350
S2 Jaramillo 10 París
S3 P2 200
S3 Bernal 30 París

CoBachBC Colegio de Bachilleres del Estado de Baja California 69


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Ejercicios:
1. Encontrar el nombre de la ciudad del proveedor S1.
2. Encontrar el número y estado de los proveedores cuya ciudad es París.
3. Cuál es el nombre del proveedor que surte la parte con mayor cantidad.
4. Encontrar el promedio de la cantidad suministrada por cada proveedor.
5. Encuentre el color de la parte 2.
6. Quién es el proveedor cuya ciudad es Londres.
7. Cuántas partes son de color rojo.
8. Encontrar la suma de todos los precios de los artículos, el precio máximo, el mínimo
y el promedio de precios.
9. Encuentra las partes donde el color sea rojo y el precio > 1.
10. Lista a las partes suministradas con una cantidad mayor a 200.

70 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


ACTIVIDAD INTEGRADORA PARTE 5

Conclusión de propuesta de base de datos (para evaluación)


En este punto se reanuda el trabajo con la base de datos del tema libre para
finalmente culminarla. Al momento se tiene una base de datos con sus
respectivas tablas y registros. Ahora lo que procede es la manipulación
de sus datos por medio de la creación de consultas donde se ha de
incorporar y combinar una serie de comandos y cláusulas SQL. Los
ejercicios específicos a realizar serán determinados por el propio alumno
con el apoyo del docente.
Además de realizarlos, el alumno debe presentar un documento con la redacción
de los ejercicios y la sentencia que se utiliza en cada caso. Las consultas a
realizar deben incluir lo siguiente.
1. Ordenamiento.
2. Criterios de selección.
3. Operadores aritméticos y de comparación.
4. Funciones de agregado.
5. Alias.
6. Subconsultas.
Guardar la actividad y presentarla de acuerdo a las indicaciones del docente.

INSTRUMENTOS DE EVALUACIÓN AUTOEVALUACIÓN

Enseguida se presenta un instrumento que tiene como objetivo que el alumno evalúe su
propio desempeño durante el bloque.
Nivel de dominio
Criterio
Excelente Bueno Regular Deficiente

Realicé todas las actividades del bloque con sentido


de responsabilidad y atendiendo las indicaciones del
docente.

Particié en clase con una actitud de compromiso y


respeto hacia mis comapeñeros y docente.

Presté apoyo a mis compañeros cuando así me lo


solicitaron, actuando de manera
responsable y respetuosa.
Participé en forma activa en la realización de los
ejercicios y prácticas que requerían trabajo
en equipo.
Identifiqué las aplicaciones y componentes básicos de
una base de datos.
Diseñé y creé bases de datos dándoles una
estructura lógica y funcional.
Manipulé y recuperé información contenida enuna
base de datos utilizando correctamente
el lenguaje SQL.

CoBachBC Colegio de Bachilleres del Estado de Baja California 71


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Alumno (s) Grupo

Apertura
Tipo de Diagnóstica Formativa Sumativa
Momento Desarrollo
evaluación Autoevaluación Coevaluación Heteroevaluación Cierre

Tipo de
Individual Binas Equipo Semestre Quinto
trabajo
Aprendizaje esperado: Identifica similitudes entre un sistema de base de datos y un sistema de información
convencional. para diseñar un modelo de base de datos que permita acceso a datos, procesar y generar reportes
de manera eficiente, que satisfaga las necesidades del usuario final, mostrando disposición al trabajo colaborativo,
metódico y organizado.

ACTIVIDAD 2 Reporte individual


NIVEL DE DOMINIO
CRITERIOS DE DESEMPEÑO EXCELENTE BUENO REGULAR DEFICIENTE
(2.00 pts.) (1.75 pts.) (1.50 pts.) (1.00 pts.)

Distingue los conceptos básicos relacionados


con las bases de datos (base de datos, tabla,
registro y campo).

Distingue entre los conceptos base de datos y


gestor de bases de datos.

Identifica los tipos de bases de datos que existen


en base a la variabilidad de la información.

Identifica los tipos de bases de datos que existen


en base a la administración de sus datos.

Consulta fuentes confiables eligiendo con


cuidado la información que necesita.

Puntos acumulados:
(éstos deben multiplicarse por la ponderación que tiene la actividad).

72 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


Alumno (s) Grupo

Apertura
Tipo de Diagnóstica Formativa Sumativa
Momento Desarrollo
evaluación Autoevaluación Coevaluación Heteroevaluación Cierre

Tipo de
Individual Binas Semestre Quinto
trabajo
Aprendizaje esperado: Identifica similitudes entre un sistema de base de datos y un sistema de información
convencional.
Para diseñar un modelo de base de datos que permita acceso a datos, procesar y generar reportes de manera
eficiente, que satisfaga las necesidades del usuario final, mostrando disposición al trabajo colaborativo, metódico
y organizado.

ACTIVIDAD 8 Reporte en binas: Instalación de Xampp


NIVEL DE DOMINIO
CRITERIOS DE DESEMPEÑO EXCELENTE BUENO REGULAR DEFICIENTE
(2.00 pts.) (1.75 pts.) (1.50 pts.) (1.00 pts.)

Identifica la función de la plataforma Xampp en


la creación y manejo de bases de datos.

Presenta los pasos para la descarga e


instalación de Xampp debidamente ordenados
y en forma clara y concreta.

Acompaña los textos con imágenes que faciliten


su comprensión.

Incluye todos los pasos necesarios hasta llegar


a la ventana de trabajo.

Consulta fuentes confiables eligiendo con


cuidado la información que necesita.

Puntos acumulados:
(éstos deben multiplicarse por la ponderación que tiene la actividad).

CoBachBC Colegio de Bachilleres del Estado de Baja California 73


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Alumno (s) Grupo

Apertura
Tipo de Diagnóstica Formativa Sumativa
Momento Desarrollo
evaluación Autoevaluación Coevaluación Heteroevaluación Cierre

Tipo de
Individual Binas Equipo Semestre Quinto
trabajo

Aprendizaje esperado: Identifica similitudes entre un sistema de base de datos y un sistema de información convencional.
Para diseñar un modelo de base de datos que permita acceso a datos, procesar y generar reportes de manera eficiente, que
satisfaga las necesidades del usuario final, mostrando disposición al trabajo colaborativo,metódico y organizado.

ACTIVIDAD 10 Práctica BibliotecaBD


NIVEL DE DOMINIO
CRITERIOS DE DESEMPEÑO EXCELENTE BUENO REGULAR DEFICIENTE
(1.25 pts.) (1 pts.) (0.75 pts.) (0.50 pts.)

Identifica las opciones básicas de la plataforma


Xampp.

Crea correctamente la base de datos y sus


correspondientes tablas.

Reconoce los tipos de campos que existen y los


asigna de acuerdo a como se indica.

Define los campos clave y foráneos


comprendiendo su relevancia.

Crea correctamente las relaciones entre las


tablas comprendiendo su aplicación para el
manejo del contenido de la base de datos.

Captura registros en las tablas utilizando


correctamente las herramientas de la
plataforma.

Modifica o edita el contenido de los registros


utilizando adecuadamente las opciones de la
plataforma.

Copia o elimina registros apoyándose en las


herramientas de la plataforma.

Puntos acumulados:
(éstos deben multiplicarse por la ponderación que tiene la actividad).

74 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


Alumno (s) Grupo

Apertura
Tipo de Diagnóstica Formativa Sumativa
Momento Desarrollo
evaluación Autoevaluación Coevaluación Heteroevaluación Cierre

Tipo de
Individual Binas Equipo Semestre Quinto
trabajo

Aprendizaje esperado: Identifica similitudes entre un sistema de base de datos y un sistema de información convencional.
Para diseñar un modelo de base de datos que permita acceso a datos, procesar y generar reportes de manera eficiente, que
satisfaga las necesidades del usuario final, mostrando disposición al trabajo colaborativo, metódico y organizado.

ACTIVIDAD 11 Práctica Obras Literarias (Coevaluación)


CRITERIOS DE DESEMPEÑO SI NO N/A

Crea la base de datos y las tablas conforme indica la actividad.

Crea los campos señalados asignando tipos y tamaños adecuados.

Define los campos llave y foráneos indicados en la actividad.

Crea correctamente las relaciones conforme indica la imagen.

Captura registros en las tablas utilizando correctamente las


herramientas de la plataforma.

Modifica o edita el contenido de los registros utilizando


adecuadamente las opciones de la plataforma.

Copia o elimina registros apoyándose en las herramientas de la


plataforma.

CoBachBC Colegio de Bachilleres del Estado de Baja California 75


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Alumno (s) Grupo

Apertura
Tipo de Diagnóstica Formativa Sumativa
Momento Desarrollo
evaluación Autoevaluación Coevaluación Heteroevaluación Cierre

Tipo de
Individual Binas Equipo Semestre Quinto
trabajo

Aprendizaje esperado: Identifica similitudes entre un sistema de base de datos y un sistema de información convencional.
Para diseñar un modelo de base de datos que permita acceso a datos, procesar y generar reportes de manera eficiente, que
satisfaga las necesidades del usuario final, mostrando disposición al trabajo colaborativo,metódico y organizado.

ACTIVIDAD 12 Práctica Empresa


NIVEL DE DOMINIO
CRITERIOS DE DESEMPEÑO EXCELENTE BUENO REGULAR DEFICIENTE
(1.25 pts.) (1 pts.) (0.75 pts.) (0.50 pts.)

Crea correctamente la base de datos y sus


tablas, conforme indica la actividad.

Asigna campos, tipos y tamaños acordes con la


información que manejan.

Elige correctamente los campos clave y


foráneos, según se muestra en la actividad.

Crea adecuadamente relaciones mostradas en


la actividad.

Captura el número de registros que se indique


utilizando correctamente las herramientas de la
plataforma.

Edita los registros haciendo las modificaciones


que se le indican usando las opciones de la
plataforma.

Elimina los registros que se indica apoyándose


en las herramientas de la plataforma.

Guarda correctamente la base de datos y sus


tablas presentándola como solicita el docente.

Puntos acumulados:
(éstos deben multiplicarse por la ponderación que tiene la actividad).

76 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


Alumno (s) Grupo

Apertura
Tipo de Diagnóstica Formativa Sumativa
Momento Desarrollo
evaluación Autoevaluación Coevaluación Heteroevaluación Cierre

Tipo de
Individual Binas Equipo Semestre Quinto
trabajo

Aprendizaje esperado: Identifica similitudes entre un sistema de base de datos y un sistema de información convencional.
Para diseñar un modelo de base de datos que permita acceso a datos, procesar y generar reportes de manera eficiente, que
satisfaga las necesidades del usuario final, mostrando disposición al trabajo colaborativo,metódico y organizado.

ACTIVIDAD 17 Práctica Nova Tech


NIVEL DE DOMINIO
CRITERIOS DE DESEMPEÑO EXCELENTE BUENO REGULAR DEFICIENTE
(1.25 pts.) (1 pts.) (0.75 pts.) (0.50 pts.)

Crea la base de datos con sus tablas y campos


utilizando sentencias SQL.

Elige correctamente los campos clave y


foráneos.

Crea adecuadamente relaciones entre las tablas.

Agrega, edita y elimina registros usando las


sentencias INSERT, UPDATE y DELETE.

Recupera información de la base de datos


mostrándola en forma ordenada y apoyándose
en las órdenes SELECT, WHERE, FROM y
ORDER BY.

Recupera información específica de la base de


datos apoyándose en operadores lógicos y de
comparación, además de BETWEEN, LIKE, IN.

Realiza operaciones con los datos mostrando


resultados específicos usando las funciones de
agregado (SUM, MAX, COUNT, etc.)

Realiza los ejercicios indicados en la actividad y


los presenta en la forma que indique el docente.

Puntos acumulados:
(éstos deben multiplicarse por la ponderación que tiene la actividad).

CoBachBC Colegio de Bachilleres del Estado de Baja California 77


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Alumno (s) Grupo

Apertura
Tipo de Diagnóstica Formativa Sumativa
Momento Desarrollo
evaluación Autoevaluación Coevaluación Heteroevaluación Cierre

Tipo de
Individual Binas Equipo Semestre Quinto
trabajo

Aprendizaje esperado: Identifica similitudes entre un sistema de base de datos y un sistema de información convencional.
Para diseñar un modelo de base de datos que permita acceso a datos, procesar y generar reportes de manera eficiente, que
satisfaga las necesidades del usuario final, mostrando disposición al trabajo colaborativo,metódico y organizado.

ACTIVIDAD INTEGRADORA PARTE 1 DISEÑO DE BD


NIVEL DE DOMINIO
CRITERIOS DE DESEMPEÑO EXCELENTE BUENO REGULAR DEFICIENTE
(1.25 pts.) (1 pts.) (0.75 pts.) (0.50 pts.)
Crea la base de datos con sus tablas y campos
utilizando sentencias SQL.

Elige correctamente los campos clave y foráneos.

Crea adecuadamente relaciones entre las tablas.

Crea adecuadamente relaciones mostradas en la


actividad.
Agrega, edita y elimina registros usando las
sentencias INSERT, UPDATE y DELETE.
Recupera información de la base de datos
mostrándola en forma ordenada y apoyándose en las
órdenes SELECT, WHERE, FROM y ORDER BY.
Recupera información específica de la base de datos
apoyándose en operadores lógicos y de comparación,
además de BETWEEN, LIKE, IN.
Realiza operaciones con los datos mostrando
resultados específicos usando las funciones de
agregado (SUM, MAX, COUNT, etc.)
Realiza los ejercicios indicados en la actividad y los
presenta en la forma que indique el docente.
Puntos acumulados:
(éstos deben multiplicarse por la ponderación que tiene la actividad).

78 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


Alumno (s) Grupo

Apertura
Tipo de Diagnóstica Formativa Sumativa
Momento Desarrollo
evaluación Autoevaluación Coevaluación Heteroevaluación Cierre

Tipo de
Individual Binas Equipo Semestre Quinto
trabajo

Aprendizaje esperado: Identifica similitudes entre un sistema de base de datos y un sistema de información convencional.
Para diseñar un modelo de base de datos que permita acceso a datos, procesar y generar reportes de manera eficiente, que
satisfaga las necesidades del usuario final, mostrando disposición al trabajo colaborativo,metódico y organizado.

ACTIVIDAD INTEGRADORA PARTE 2 CONTINUACIÓN DISEÑO DE BD


NIVEL DE DOMINIO
CRITERIOS DE DESEMPEÑO EXCELENTE BUENO REGULAR DEFICIENTE
(1.25 pts.) (1 pts.) (0.75 pts.) (0.50 pts.)
Asegura que los nombres de las tablas y campos del
proyecto de base de datos cumplan con las
especificaciones revisadas.
Identifica los tipos y tamaños de campo que se
pueden aplicar en las tablas.
Redefine el tipo y tamaño de los campos de las
tablas de acuerdo a las reglas que deben cumplir.

Distingue entre campo clave y foráneo.

Elige correctamente los campos clave y foráneos


que tendrá la base de datos
Identifica las posibles relaciones que se pueden
crear entre las tablas.
Señala correctamente las relaciones que creará en
la base de datos.
Organiza y presenta la estructura de la base de
datos en forma clara y coherente.
Puntos acumulados:
(éstos deben multiplicarse por la ponderación que tiene la actividad).

CoBachBC Colegio de Bachilleres del Estado de Baja California 79


Submódulo 1 FUNDAMENTOS DE BASES DE DATOS

Alumno (s) Grupo

Apertura
Tipo de Diagnóstica Formativa Sumativa
Momento Desarrollo
evaluación Autoevaluación Coevaluación Heteroevaluación Cierre

Tipo de
Individual Binas Equipo Semestre Quinto
trabajo

Aprendizaje esperado: Identifica similitudes entre un sistema de base de datos y un sistema de información convencional. Para diseñar
un modelo de base de datos que permita acceso a datos, procesar y generar reportes de manera eficiente, que satisfaga las necesidades
del usuario final, mostrando disposición al trabajo colaborativo,metódico y organizado.

ACTIVIDAD INTEGRADORA PARTE 5 CONCLUSIÓN DE PROYECTO


NIVEL DE DOMINIO
CRITERIOS DE DESEMPEÑO EXCELENTE BUENO REGULAR DEFICIENTE
(1.25 pts.) (1 pts.) (0.75 pts.) (0.50 pts.)
Presenta la base de datos con sus tablas y campos
adecuadamente estructurados.
Relaciona correctamente las tablas de su base de datos.
Captura, edita y elimina registros utilizando las herramientas de
la plataforma.
Captura, edita y elimina registros usando los comandos INSERT,
UPDATE y DELETE.
Recupera información de la base de datos mostrándola en forma
ordenada y apoyándose en las sentencias SELECT, WHERE,
FROM y ORDER BY.
Recupera información específica de la base de datos apoyándose
en operadores lógicos y de comparación, además de BETWEEN,
LIKE, IN.
Recupera información específica de la base de datos apoyándose
en operadores lógicos y de comparación, además de BETWEEN,
LIKE, IN.
Realiza operaciones con los datos mostrando resultados
específicos usando las funciones de agregado (SUM, MAX,
COUNT, etc.)
Redacta y realiza ejercicios de consulta, adecuados a su base de
datos y los presenta en la forma que indique el docente.
Puntos acumulados:
(éstos deben multiplicarse por la ponderación que tiene la actividad).

80 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


Submódulo 2
ELABORA INTERFACES DE USUARIO CON
CONEXIÓN A BASES DE DATOS

COMPETENCIAS LABORALES BÁSICAS


CLBP2. Ejemplifica sistemas básicos de programación para describir el conjunto de
acciones consecutivas o instrucciones que se deben ejecutar mediante el uso de equipo
informático que permita la resolución de problemas de su contexto, de forma creativa y
emprendedora.
CLBP3. Diseña bases de datos, que permitan el acceso a información actualizada y
precisa, mediante la aplicación de sistemas de administración de bases de datos, para
gestionar grandes ficheros y facilitar la consulta de información, de manera organizada y
tomando decisiones de manera responsable en beneficio de su entorno.
CLBP4. Desarrolla aplicaciones web para obtener, procesar y difundir información,
haciendo uso de la arquitectura cliente-servidor, desarrollando habilidades creativas en
pro de su contexto personal y social, con un sentido crítico, autocrítico y ético.
CLBP5. Integra estructuras de programación, para la implementación de proyectos
innovadores, a través del uso del lenguaje de programación y de herramientas digitales,
que permita contribuir con eficiencia en el logro de los objetivos planteados de acuerdo
al entorno en donde se desarrolla, mostrando una actitud perseverante, asumiendo la
frustración como parte de un proceso.
Interdisciplinariedad Ejes Transversales
- Temas Selectos de Aritmética y - Emprendimiento.
Geometría - Vinculación laboral.
- Pensamiento algebraico I - Iniciar, continuar y concluir sus estudios
- Lógica I. de nivel superior.

HVyT CoCEDS
2.1. Colaboración y Trabajo en Equipo
(2.1.1., 2.1.6.)
3. Sistemas Socioecológicos (3.4)
3.1. Creatividad (3.1.3)
4.1. Toma de Decisiones (4.1.3., 4.1.4)
PROPÓSITO DEL SUBMÓDULO

Elabora bases de datos utilizando las herramientas necesarias para crear una interfaz
de usuario que facilite el ingreso, consulta y modificación de la información, mostrando
disposición al trabajo metódico y organizado.
Submódulo
Submódulo 2 INTERFACES DE USUARIOS CON CONEXIÓN A BAS ES DE DATOS
2 ELABORA

ELABORA INTERFACES DE USUARIO CON


CONEXIÓN A BASES DE DATOS

APRENDIZAJES ESPERADOS

- Practica la gestión de bases de datos, mediante el uso de software de sistemas


gestores, para almacenar y organizar información que permita acceder a ella de forma
segura de acuerdo al contexto en el que se desarrolla, tomando decisiones de manera
consciente e informada.

CONOCIMIENTOS BÁSICOS

Servidores de Bases de Datos.


• Concepto.
• Software de Sistemas Gestores de Bases de Datos (SGBD).
• Acceso a Datos a través de SGBD.
• Aplicaciones con conexión a BD.

HABILIDADES

- Comprende qué es un Sistema Gestor de Bases de Datos.


- Compara software de Sistemas Gestores de Bases de Datos.

ACTITUDES
- Toma decisiones de manera consciente e informada asumiendo las consecuencias.
- Se relaciona con sus semejantes de forma colaborativa mostrando disposición al
trabajo metódico y organizado.

82 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


ACTIVIDAD DIAGNÓSTICA

Contesta el siguiente cuestionario basándose en los conocimientos propios sobre


el entorno de las bases de datos.

1. ¿Qué es un Servidor?
______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

2. ¿Qué es el Cliente?
______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

3. ¿Qué entiende por Servidor de Bases de Datos?


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

4. ¿A qué se refiere la relación Cliente-Servidor?


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

5. ¿A qué se le llama Interfaz de usuario?


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________

CoBachBC Colegio de Bachilleres del Estado de Baja California 83


Submódulo 2 ELABORA INTERFACES DE USUARIOS CON CONEXIÓN A BAS ES DE DATOS

Situación didáctica
Aquí se retoma la situación didáctica del submódulo 1, donde algunos alumnos elaboraron y
presentaron una propuesta de base de datos sobre una temática específica, con el objetivo
de obtener un trabajo de medio tiempo ofertado por una empresa de la localidad. Hoy ya se
han seleccionado 3 propuestas, entre ellas está la de Pedro y Sofía, no obstante, para tomar la
decisión final, la empresa ha solicitado a los participantes elaborar otra base de datos, pero ahora
con características específicas y que además debe incluir un menú que permita la Consulta,
Modificación e Inserción de registros, apoyándose en sentencias de Java y SQL.

¿Cómo realizarías tu esta actividad?

SERVIDORES

1. Servidor de base de datos

Es un servidor para bases de datos, en tanto que permite la organización de la información


mediante el uso de tablas, índices y registros. Está diseñado con arquitectura de alto
rendimiento que facilita la gestión sistemática de grandes cantidades de datos
pertenecientes a un mismo contexto.

Aunque es el soporte que necesitan las aplicaciones Web para almacenar y recuperar
información de forma rápida y eficaz, también puede utilizarse desde aplicaciones privadas.

Un servidor de base de datos es un programa que provee servicios de base de datos a


otros programas u otras computadoras, como es definido por el modelo cliente-servidor.

Su función principal es mantener en gestión la actualización de los datos, el ingreso


múltiple de distintos servidores o usuarios de la red a la Web, garantizando un registro de
los datos y la seguridad de los mismos.

Los Sistemas de Administración de Base de Datos (SGBD) generalmente proveen


funcionalidades para servidores de base de datos, en cambio otros (como por ejemplo,
MySQL) solamente proveen construcción y acceso a la base de datos.

84 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


Concretando, un servidor de base de datos se utiliza para almacenar, recuperar y
administrar los datos de una base de datos. Y al hablar de datos, en realidad se puede
estar hablando sobre millones de elementos a los que acceden al mismo tiempo miles
de usuarios. Algunas de sus funciones son la exportación de datos, la configuración del
acceso de los usuarios y el respaldo de datos.

Aplicaciones comunes de un servidor de bases de datos:

• Administración de registros de personas: el uso de software para registros médicos,


así como fichas de perfiles de clientes en clínicas, centros de odontología y más.

• Administración de documentos: permite organizar documentos de texto de diversa


índole, algo muy usado en las diferentes empresas.

• Administración contable e impositiva: el uso de base de datos en estudios contables


mejora el manejo de facturas, pagos de impuestos, gastos, ingresos y egresos.

• Indexación de sitios web: el caso más popular del mundo es Google con su inmensa
base de datos para indexar, gestionar y modificar los aspectos de sitios webs en sus
resultados.

• Servir contenido dinámico: con el auge del servidor PHP y la programación


web, se comenzaron a usar las bases de datos para servir datos de foros, CMS,
administraciones de usuarios, gestores de contenidos (como WordPress) y más.

CoBachBC Colegio de Bachilleres del Estado de Baja California 85


Submódulo 2 ELABORA INTERFACES DE USUARIOS CON CONEXIÓN A BAS ES DE DATOS

2. Herramientas de gestión de servidores de bases de datos

Las bases de datos están situadas en un servidor y se puede acceder a ellas desde
terminales o equipos con un programa -llamado cliente- que permite el acceso a la base o
bases de datos. Los gestores de base de datos de este tipo permiten que varios usuarios
hagan operaciones sobre ella al mismo tiempo: una persona puede hacer una consulta al
mismo tiempo que otra, situada en un lugar diferente, está introduciendo datos en la base.
En todo sistema abierto, debe proporcionarse un potente mecanismo de seguridad que
garantice que ningún intruso pueda acceder o corromper la integridad del sistema. En
servidores de bases de datos la seguridad se puede manejar en 4 niveles básicos:

Seguridad de acceso al sistema.


Seguridad a nivel de objetos de datos.
Seguridad a nivel de datos.
Seguridad en cuanto a protección de los almacenamientos físicos de los datos.

La seguridad de acceso se implementa de dos maneras posibles: a nivel de sistema


operativo, en cuyo caso el SGBD se apoya en la seguridad de entrada al sistema
operativo para comprobar la validez del acceso a los datos almacenados; o bien lo que
se llama modo mixto, en el cual la seguridad de entrada a la información la llevará a cabo
el propio servidor de datos a partir de la definición de cuentas de usuario al servidor (su
denominación de mixta proviene de la capacidad de los sistemas de incluir como cuentas
de acceso o login aquellas propias del sistema operativo, lo que facilita la transición
de las cuentas de seguridad). La segunda es de gran ayuda cuando los clientes que
acceden al sistema provienen de sistemas operativos con poca (o ninguna) seguridad
o de aplicaciones instaladas que necesiten acceder a los volúmenes de información del
sistema. En ambos casos, en los sistemas se contará con roles o papeles con los que
contará el usuario al entrar al sistema para la realización de determinadas operaciones de
cara al sistema.

La seguridad a nivel de objetos es el acceso a nivel de creación y administración de objetos


de datos: tablas, vistas, índices, relaciones, reglas, etc. Es decir, las responsabilidades y
acciones que puede hacer el usuario en el esquema de la base de datos (el esqueleto a
partir del cual el sistema definirá cómo se debe almacenar y relacionar la información). Este
podrá especificar de nuevo roles a los usuarios, indicando quién podrá crear, modificar
o eliminar cualquier objeto de datos (con lo que se permite establecer una política de
delegaciónd e responsabilidades).

La seguridad a nivel de datos accede a la información para su consulta, actualización,


inserción o borrado y las características de los diversos motores, los que determinarán
hasta qué grado de seguridad se llega en este apartado (desde la protección de las
columnas de una tabla hasta la tabla en sí, creación de vistas, etc.).

86 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


La seguridad a nivel de protección de los almacenamientos físicos de la información,
es la seguridad a nivel de sistema operativo de los archivos de datos del sistema, y las
políticas de copia de seguridad y restauración de los datos (tanto con herramientas del
sistema operativo como las proporcionadas por el propio servidor de datos) junto con
sus posibles aproximaciones (total, incremental y diferencial), además de los soportes
hardware compatibles de almacenamiento masivo empleados como destino de las copias.

Por otra parte, los servidores de base de datos deben proporcionar mecanismos de
comunicación óptimos, pues de cómo se envíe la información dependerán parámetros tan
importantes como la velocidad de acceso a los datos.

Todos los sistemas gestores analizados cuentan con múltiples configuraciones de


protocolos, adaptándose a los protocolos existentes y estandarizados de la actualidad:
TCP/IP, IPX, Banyan, etc.; es importante no sólo el canal de comunicaciones que está
disponible para los servidores de datos sino también cómo es transmitida la información.

Algunos de los servidores de bases de datos más utilizados son:

• MySQL server.- Es un servidor de bases de datos de tipo relacional y código abierto


muy popular, pequeña y rápida.
• PostgreSQL server.- Al igual que MySQL es de tipo relacional y código abierto,
además está orientado a objetos.
• Oracle-XE.- Versión “lite” del RDBMS (Sistema de Gestión de Bases de Datos
Relacionales) de Oracle. Es gratuita pero no de código abierto.
• SQL Server.- Es un sistema de gestión de base de datos relacional, desarrollado
por la empresa Microsoft. El lenguaje de desarrollo utilizado es Transact-SQL, una
implementación del estándar ANSI del lenguaje SQL, utilizado para manipular y
recuperar datos, crear tablas y definir relaciones entre ellas.

ACTIVIDAD 1

En binas realizar un reporte de investigación (Evaluación)


Realizar un reporte de investigación sobre los servidores de bases de datos que
se enlistan. Debe incluir: requisitos de instalación, procedimiento de instalación,
procedimiento de configuración y elementos de la interfaz del usuario.

• MySQL Server.
• PostgreSQL.
• Oracle XE.
• SQL Server.

Entregar de acuerdo al tiempo y forma que indique el docente.

CoBachBC Colegio de Bachilleres del Estado de Baja California 87


Submódulo 2 ELABORA INTERFACES DE USUARIOS CON CONEXIÓN A BAS ES DE DATOS

Interfaz de usuario
La interfaz de usuario es el medio con que el
usuario puede comunicarse con una máquina,
equipo, computadora o dispositivo, y comprende
todos los puntos de contacto entre el usuario y el
equipo. Esta puede crearse en diferentes lenguajes
de programación como JAVA, C++, Phyton,
HTML, PHP, pero no importa cuál se utilice, todos
tienen como objetivo el realizar la conexión entre
el servidor y el usuario, el cual permita ingresar,
consultar y modificar la información dentro de la
base de datos.

El lenguaje de interfaz que se puede manejar en esta capacitación es JAVA, ya que


tenemos experiencia en crear interfaces (ventanas) que nos capturen información, la
única diferencia es que esta, en vez de guardarse temporalmente hasta que cierre el
programa, se guarda dentro de una base de datos, la cual podrá ser consultada, modificada
y eliminada en cualquier momento que se desee. Para poder realizar lo mencionado
necesitamos una línea de código o conector que nos apoye con la conexión entre ambos
dispositivos (Interfaz y Servidor de Base de Datos).

3.- Clasificación del contenido de la información que se genera dentro de la base


de datos.

Los tipos de sistemas de información en las empresas.

Un sistema de información es básicamente un grupo de elementos, interrelacionados


entre sí, que permite capturar, procesar, almacenar y transmitir los datos de toda la cadena
productiva de una compañía, con el fin de ofrecer información confiable y en tiempo real
para mejorar el control sobre la empresa y apoyar la toma de decisiones.

El concepto de información para la empresa, es un elemento clave y fundamental para el


buen funcionamiento de cualquier tipo de organización. Son los objetivos de la empresa
en el éxito o el fracaso del negocio, para que la información cumpla con sus objetivos es
necesario que tengan ciertas características.

• Relevante: tiene que ser importante, que sea la información que la empresa necesita.
• Actualizada: debe ser utilizada en el momento de ser generada.
• Rápida: el acceso a la información debe realizarse de forma rápida y sencilla.
• Económica: la obtención de la información no debe generar un costo elevado a la
empresa.
• Calidad: es importante que la información no tenga errores y sea completa.
• Objetiva: no hay opción a subjetividades.
• Completada: el tener la información incompleta.
• Aplicable: la información debe ser adecuada para la toma de decisión, además de ser
importante.

88 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


Dato, información y sistema:
Los datos son los elementos que sirven de base para resolver los problemas o para la
formación del juicio. Un dato es sólo un índice, una manifestación objetiva posible de ser
analizada subjetivamente, es decir, exige interpretación del individuo para poder manejarlo.
En sí mismo, cada dato tiene poco valor. Los datos permiten la obtención de información
cuando están clasificados, almacenados y relacionados entre sí. La información aislada
también carece de significado, esta exige procesamiento para que pueda adquirir significado.

En otras palabras, el dato puede ser un número, una palabra, una imagen en el ámbito
cotidiano que utiliza las materias primas para la producción de la información. Mientras
que la información, son datos que tienen un significado para alguien. El sistema es el
mecanismo por el cual se generará información.

Automatizado es un conjunto integrado de procesos desarrollados en un entorno


usuariocomputadora que opera en unos datos, los recopilan, los procesan y distribuye la
información necesaria para facilitar la actividad habitual de la organización.

Las empresas utilizan fundamentalmente los sistemas de información automatizados, sin


embargo, cualquier sistema que no funcione correctamente de forma manual, tampoco lo
va hacer por el hecho de estar automatizado.

Componentes de los sistemas de información


Recursos físicos: son documentos y archivadores,
equipos de telecomunicaciones y de informática,
recursos humanos o personal. Procedimientos y
prácticas de trabajo.

La información: es el elemento fundamental del


sistema y su razón de ser.

Los sistemas de información están formados


por documentos en forma de base de datos
y archivadores que almacenan información
en distintos formatos, los recursos físicos los
constituyen el hardware empleado en el sistema,
los recursos humanos es el personal de informática
y los usuarios que utiliza el sistema de información.

Desde el punto de vista de la teoría de la decisión, la organización empresarial puede


ser entendida como una serie de grandes redes de información que relacionan las
necesidades de información de cada proceso decisorio con las fuentes de datos. Aunque
están separadas estas redes de información se superponen e interactúan. La base de
datos es un sistema de almacenamiento y acumulación de datos debidamente clasificados
y disponibles para el procesamiento y la obtención de información.

CoBachBC Colegio de Bachilleres del Estado de Baja California 89


Submódulo 2 ELABORA INTERFACES DE USUARIOS CON CONEXIÓN A BAS ES DE DATOS

La información aislada también carece de significado, esta exige procesamiento para que
pueda adquirir significado. El termino procesamiento de datos designa la gran variedad
de actividades que se llevan a cabo tanto en las organizaciones y en los grupos sociales,
como entre personas: existe cierto volumen de datos o informaciones iniciales (en los
archivos, en las expectativas o en la memoria) a los cuales se adicionan otros datos o
informaciones posteriores (mayor volumen de datos, alteraciones, modificaciones) lo que
provoca un nuevo volumen de datos o informaciones. De este modo, el procesamiento de
datos es la actividad que consiste en acumular, agrupar y cruzar datos para transformarlos
en información o para obtener otra información.

El procesamiento de datos puede ser:


Manual: cuando se efectúa manualmente, utilizando fichas, talonarios, mapas, etc., con o
sin la ayuda de máquinas de escribir o de calculadoras.

Semiautomático: cuando se utilizan máquinas de contabilidad en las cuales el operador


introduce fichas o talonarios uno tras otro y después de recibir la ficha y los datos
iniciales, la máquina realiza numerosas operaciones consecutivas ya programadas sin la
intervención de operador.

Automático: cuando la máquina programada para que realice determinado conjunto de


operaciones desarrolla toda la secuencia sin que haya necesidad de intervención humana
entre un ciclo.

4.- Aplicaciones desarrolladas a base de datos. Conexión a una base de datos


Para poder realizar la conexión, necesitamos de un conector de base de datos en JAVA
que nos ligue con MySQL, hay diferentes versiones, pero la más estable para cualquier
equipo de cómputo se puede descargar de la siguiente liga:

[Link]

Dentro de este archivo, que podemos descomprimir con WIRAR o WINZIP, se encuentra un
archivo con terminación .JAR, esta librería la estaremos utilizando para hacer la conexión
constantemente, para esto necesitamos agregarlo a la librería de nuestro proyecto en eclipse.

Para poder verificar que la conexión funciona, necesitamos tener encendido el servidor de
APACHE Y MYSQL en nuestro panel de control de XAMPP.

ACTIVIDAD 2

Ejercicio práctico individual (Evaluación)

Realizar el siguiente ejercicio siguiendo las instrucciones del docente y al


final presentarlo de acuerdo al tiempo y forma que se indique.

Crea una clase nueva de JAVA con el nombre de Conexión y ve escribiendo el siguiente
código:

90 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


En esta sección se importa la librería SQL de Java, ya que estaremos usando varios
comandos para interactuar con la base de datos, aparte creamos un método MAIN para
que la clase pueda correr por sí misma. Dentro de este código tenemos en cuenta que
vamos a crear 3 variables de tipo STRING, la primera siendo URL, la cual tendrá guardada
la dirección y el puerto al que se debe conectar, la segunda variable es el usuario con el
cual podemos acceder al servicio de la base, como te podrás dar cuenta dice ROOT, este
es el usuario principal que utilizaremos ya que es el administrador y tiene todos derechos
necesarios para que no nos cause ningún problema, también por ultimo tenemos la
contraseña de nuestro usuario, la cual está vacía, porque el administrador no lleva nada,
a menos que lo cambiáramos previamente.

Para poder realizar una conexión a la base de datos, necesitamos usar un TRY/CATCH,
para evitar problemas con los datos que recibimos o enviamos y si llegamos a tener uno,
este mismo comando nos enviará qué tipo de problema fue para poder arreglarlo.

CoBachBC Colegio de Bachilleres del Estado de Baja California 91


Submódulo 2 ELABORA INTERFACES DE USUARIOS CON CONEXIÓN A BAS ES DE DATOS

Primero se crea una instancia del conector de base datos, que para este momento ya
debemos tener en nuestra librería, ya que usaremos ciertos comandos para interactuar
con el servidor de MySQL.

Con el método Connection realizamos una conexión simple utilizando las variables
creadas anteriormente (Url, Usuario y Contraseña) y usamos el método Statement para
poder realizar declaraciones en lenguaje SQL. Utilizamos la instancia Declaración junto
con execute para usar comandos SQL, con esto, creamos una base de datos llamada
prueba, si es que no existe, en caso de existir esta línea de código simplemente no se
realiza. La segunda línea usando Declaración es para utilizar específicamente la base
de datos llamada prueba, hay que recordar que cada vez que hagamos una conexión,
necesitamos especificar qué base de datos vamos a utilizar, de lo contrario los comandos
SQL siempre marcarán error.

92 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


Hasta ahorita el programa no nos debe devolver nada en pantalla o en consola, solamente
no debe de haber ningún error, lo cual significará que se creó una base de datos llamada
prueba y la estamos utilizando, lo cual podemos comprobar directamente en MySQL
usando XAMPP para ver las bases y tablas creadas. Lo último que viene antes de cerrar el
TRY y terminar el CATCH, es el comando para cerrar la instancia Declaración y Conexión
a la base de datos, esto para liberar memoria y evitar crear una nueva conexión cuando
alguna ya se encuentre activa.

Realizar consultas

Para poder realizar una consulta en nuestra base de datos llamada ejemplo necesitamos
primero crear una tabla llamada “persona” que tenga como campos Nombre, Apellido y
Edad, además captura un campo utilizando tu información como ejemplo.

Dentro del TRY CATCH utilizaremos el siguiente comando:

CoBachBC Colegio de Bachilleres del Estado de Baja California 93


Submódulo 2 ELABORA INTERFACES DE USUARIOS CON CONEXIÓN A BAS ES DE DATOS

El rs es un ResultSet, una clase que se encarga de guardar todos los datos que hagamos
en consultas en orden, como si fuera un ARRAY de datos, dentro de él, estarán x cantidad
de campos (1, 2, 3, 4 y así hasta que contenga todos los campos llamados en el comando
SQL), pero aun así no lo podemos imprimir directamente, necesitamos recorrerlo con un
ciclo WHILE, usando el punto next(), para que continúe hasta que ya no exista un campo.

Sabemos que los campos se guardan en orden, para esto, nosotros debemos saber cómo
se encuentran los campos de nuestra tabla, que como ya habíamos dicho serían Nombre,
Apellido y Edad, así en este orden sabemos que los primeros dos campos son String y los
llamamos con getString(), escribimos dentro un uno porque sabemos que es el primer
campo, así como en el siguiente escribimos un 2 porque es el segundo campo de mi tabla,
pero para obtener la edad utilizamos getInt() porque la edad sería un campo numérico,
junto con el número 3 porque sabemos que la tercer columna es el campo de Edad.

Insertar datos
Para poder insertar o modificar información dentro de una base de datos, no podemos
usar execute(), si no executeUpdate(), con esto ya podremos manipular información
(les recuerdo que cada código SQL debe estar dentro de un TRY/CATCH), así como se
muestra en el siguiente ejemplo:

Utilizando executeUpdate(), podremos capturar un campo dentro de nuestra tabla Persona,


la cual contenga el nombre de Raúl, con su apellido Jaramillo y una edad de 33 años.
Como nota, si quieres capturar o modificar información de campos previamente guardados
en alguna variable (si usas alguna interfaz de captura como consola o JFRAME), debes
concatenar la variable a usar, así como se muestra en la siguiente línea de código:

Con base en la línea de código, en vez de escribir un nombre directo, escribimos


variableNom, la cual es una variable previamente captura de alguna forma y se debe
concatenar con el string que estamos enviando a la base de datos (la consulta, captura o
modificación), les recuerdo que en los códigos SQL, las variables String deben de llevar
comillas simples (‘ ‘), nosotros como método de programación usamos las comillas dobles
(“ ”) para terminar el String y lo concatenamos usando símbolos de más (+) para juntarlo
con nuestras variables. Como nota, se tiene que cuidar que el campo capturado en variable
tenga sentido con el tipo de dato en la tabla, es decir no puedes capturar un String y
guardarlo como INT en la tabla.

Si necesitaras cambiar algún campo de una tabla, sigues utilizando el método


executeUpdate(), ya sea con datos directos en el comando SQL o utilizar variables
concatenando.

94 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


ACTIVIDAD INTEGADORA (EVALUACIÓN)

Práctica Escuela (derivada de situación didáctica)

Trabajando en binas crear una base de datos con el nombre ESCUELA que contenga
una tabla llamada Información_Alumno. Debe estar compuesta por los campos
nombre, apellido paterno, apellido materno, correo, teléfono, promedio general y
contener un mínimo de 20 registros.

A continuación crear un menú en consola, el cual debe tener 3 selecciones principales


(Consulta, Modificación e Inserción). Ahora, jugando con la información de la tabla y
códigos SQL realizar búsquedas, modificaciones e inserción de datos, para comprobar
que se realizó correctamente una conexión de base de datos con JAVA.

Nota: Para cada sección del menú se realiza un mínimo de 3 ejercicios (3 consultas, 3
modificaciones, 3 inserciones, pero pueden ser más si se desea). Una vez terminado,
solicitar su revisión al docente.

CoBachBC Colegio de Bachilleres del Estado de Baja California 95


Submódulo 2 ELABORA INTERFACES DE USUARIOS CON CONEXIÓN A BAS ES DE DATOS

INSTRUMENTOS DE EVALUACIÓN
AUTOEVAL UACIÓN

Enseguida se presenta un instrumento que tiene como objetivo que el alumno evalúe su
propio desempeño durante el Submódulo.

Nivel de dominio
Criterio
Excelente Bueno Regular Deficiente

Realicé todas las actividades


del bloque con sentido de
responsabilidad y atendiendo
las indicaciones del docente.
Participé en clase con una
actitud de compromiso
y respeto hacia mis
compañeros y docente.
Presté apoyo a mis
compañeros cuando así me
lo solicitaron, acatuando
de manera responsable y
respetuosa.
Participé en forma activa en
la realización de los ejercicios
y prácticas que requerían
trabajo en equipo .

Identifiqué la forma de realizar


una conexión con una base
de datos.

Realicé una conexión con una


base de datos utilizando las
herramientas de Java y SQL.

Recuperé y manipulé
información utilizando una
conexión con una base de
datos.

96 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


COEVALUACIÓN

Solicita a 2 de tus compañeros que evalúen tu desempeño en clase, utilizando el siguiente


criterio:
Ponderación
Frecuencia
(puntos)
Siempre 5

A veces 3

Casi nunca 1

Alumno evaluado:________________________________________________________

Evaluador 1: ____________________________________________________________

Evaluador 2: ____________________________________________________________

Puntuación
Criterios de desempeño
Evaluador 1 Evaluador 2

Asistió puntualmente a cada clase

Participó activamente en clase exponiendo


comentarios o dudas en torno al tema.

Realizó las actividades en forma responsable y


atendiendo las indicaciones del docente.

Prestó atención y apoyo a sus compañeros


actuando con respeto y solidaridad.

Realizó trabajos en equipo cooperando para


obtener el mejor resultado posible.

Creó y utilizó bases de datos utilizando


correctamente sentencias de Java y SQL.

Total

CoBachBC Colegio de Bachilleres del Estado de Baja California 97


Submódulo 2 ELABORA INTERFACES DE USUARIOS CON CONEXIÓN A BAS ES DE DATOS

Alumno (s) Grupo

Apertura
Tipo de Diagnóstica Formativa Sumativa
Momento Desarrollo
evaluación Autoevaluación Coevaluación Heteroevaluación Cierre

Tipo de
Individual Binas Equipo Semestre Quinto
trabajo

Instala y utiliza herramientas para la creación y gestión de bases de datos, que le permitan escribir y ejecutar sentencias
SQL, para realizar consultas o modificación de datos, tomando decisiones de manera consciente e informada, asumiendo
las consecuencias.

ACTIVIDAD 1 Reporte en binas


NIVEL DE DOMINIO
CRITERIOS DE DESEMPEÑO EXCELENTE BUENO REGULAR DEFICIENTE
(2.00 pts.) (1.75 pts.) (1.50 pts.) (1.00 pts.)
Incluye información de los 4 servidores
solicitados.
Describe los requisitos de instalación de al
menos 3 servidores.
Describe el procedimiento de instalación de al
menos 3 servidores.
Describe el procedimiento de configuración de
al menos 3 servidores.
Describe los elementos básicos de la interfaz
del usuario de al menos 3 servidores.
Puntos acumulados:
(éstos deben multiplicarse por la ponderación que tiene la actividad).

98 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


Alumno (s) Grupo

Apertura
Tipo de Diagnóstica Formativa Sumativa
Momento Desarrollo
evaluación Autoevaluación Coevaluación Heteroevaluación Cierre

Tipo de
Individual Binas Equipo Semestre Quinto
trabajo

Aprendizaje esperado: Instala y utiliza herramientas para la creación y gestión de bases de datos, que le permitan
escribir y ejecutar sentencias SQL, para realizar consultas o modificación de datos, tomando decisiones de manera
consciente e informada, asumiendo las consecuencias.

ACTIVIDAD 2 Ejercicio práctico individual


NIVEL DE DOMINIO
CRITERIOS DE DESEMPEÑO EXCELENTE BUENO REGULAR DEFICIENTE
(2.00 pts.) (1.75 pts.) (1.50 pts.) (1.00 pts.)
Crea la clase solicitada siguiendo correctamente
el ejemplo y las indicaciones del docente.
Realiza la conexión con una base de datos
como se indica en el ejercicio, utilizando
adecuadamente la sentencia TRY/CATCH.
Crea la tabla solicitada con sus respectivos
campos y registros.
Recupera información de la base de datos
siguiendo las indicaciones del ejercicio.
Agrega y modifica información combinando
Java y SQL como indica el ejercicio.
Puntos acumulados:
(éstos deben multiplicarse por la ponderación que tiene la actividad).

CoBachBC Colegio de Bachilleres del Estado de Baja California 99


Submódulo 2 ELABORA INTERFACES DE USUARIOS CON CONEXIÓN A BAS ES DE DATOS

Alumno (s) Grupo

Apertura
Tipo de Diagnóstica Formativa Sumativa
Momento Desarrollo
evaluación Autoevaluación Coevaluación Heteroevaluación Cierre

Tipo de
Individual Binas Equipo Semestre Quinto
trabajo

Aprendizaje esperado: Instala y utiliza herramientas para la creación y gestión de bases de datos, que le permitan
escribir y ejecutar sentencias SQL, para realizar consultas o modificación de datos, tomando decisiones de manera
consciente e informada, asumiendo las consecuencias.

ACTIVIDAD INTEGRADORA Práctica Escuela


NIVEL DE DOMINIO
CRITERIOS DE DESEMPEÑO EXCELENTE BUENO REGULAR DEFICIENTE
(2.00 pts.) (1.75 pts.) (1.50 pts.) (1.00 pts.)
Crea apropiadamente la base de datos con la
tabla, campos y registros señalados.
Utilizando Java realiza correctamente la
conexión con la base de datos.
Crea el menú con las 3 secciones requeridas
(consulta, modificación e inserción)
Realiza búsquedas de información en la base
de datos, utilizando la opción Consulta.
Realiza modificaciones e inserción de
información en la base de datos, apoyándose
en las opciones del menú.
Puntos acumulados:
(éstos deben multiplicarse por la ponderación que tiene la actividad).

100 PROGRAMACIÓN EN JAVA Módulo III: Bases de datos


REFERENCIAS

Submódulo 1. Fundamentos de bases de datos.

Electrónicas

• [Link]
• [Link]
• [Link]
• [Link]
• [Link]
• [Link]
• [Link]
• [Link]
• [Link]
• [Link]
• [Link]
• Ventajas y desventajas de las bases de datos. El pensante. Un mundo de conocimiento.
• Recuperado de: [Link]
• Sintes, Bartolomé. (2018). Instalación y uso de Xampp en Windows. Curso Programación
• Web en Php. Recuperado de [Link]
[Link]
• Delgado, H. (2020). Altas, bajas y modificaciones en bases de datos phpMyAdmin. [Link].
Diseño
• Web. Recuperado de [Link]
[Link]
• Ramos, P. (2018). Qué es y para qué sirve SQL. Recuperado de [Link]
paraque-sirve-sql/

Submódulo 2. Elabora interfaces de usuario con conexión a bases de datos.

Electrónicas

• [Link]
• [Link]
• [Link]

REFERENCIAS 101
NOTAS

102
NOTAS

103

También podría gustarte