miércoles, 26 de mayo de 2021

Bases de Datos (26/05/2021)

 Continuación práctica Consultas

En la clase de hoy hemos continuado practicando las consultas en HeidiSQL de cara al examen y el proyecto de la Tercera Evaluación de BBDD. Algunos ejemplos hechos de cara a practicar son, por ejemplo: 

· Sacar un listado de clientes indicando el nombre del cliente y cuantos pedidos ha realizado:

"SELECT c.NombreCliente, COUNT(*)

FROM Clientes c, Pedidos p

WHERE c.CodigoCliente=p.CodigoCliente

GROUP BY c.CodigoCliente;

 · Aparte se ha hecho una subconsulta básica para consultar datos:

"SELECT *

FROM Pedidos

ORDER BY CodigoCliente; "

· Otro ejemplo es: Sacar un listado con los nombres de los clientes y el total pagado por cada uno de ellos:

"SELECT NombreCliente, SUM(Cantidad)

FROM Clientes c, Pagos p

WHERE c.CodigoCliente=p.CodigoCliente

GROUP BY c.CodigoCliente; " (esta consulta es parecida a la anterior, excepto en que aquí se utiliza un "SUM" porque hay que obtener el total, es decir, sumar lo que ha pagado cada uno).

· Sacar el nombre de los clientes que hayan hecho pedidos en 2008:

"SELECT NombreCliente

FROM Clientes c, Pedidos p

WHERE c.CodigoCliente=p.CodigoCliente AND YEAR(FechaPedido)=2008; "



martes, 25 de mayo de 2021

Lenguaje de Marcas (25/05/2021)

 Repaso XML Schemas y Validaciones

En la clase de hoy hemos continuado realizando un repaso de los contenidos principales que constará el examen de Lenguaje de Marcas y de cara también al proyecto de la asignatura sobre la creación de documentos XML y su validación, además del uso de los XML Schemas. Para ello se ha realizado una serie de documentos XML de unos ejercicios, algunos de ellos mal formados, que se deben revisar y corregir, para después validarlo utilizando uno de los dos métodos que se conocen para estructurar el documento: el método de "Muñeca Rusa" o de "Diseño Plano" (más completo que el de "Muñeca Rusa").

Bases de Datos (25/05/2021)

 Repaso Consultas preparación examen

En la clase de hoy hemos continuado haciendo un repaso de los contenidos de Bases de Datos que formarán parte del examen de la asignatura, practicando la creación de consultas en el SGBD de HeidiSQL sobre la base de datos que se utilizará en el examen, base de datos de "Jardinería".

jueves, 20 de mayo de 2021

Lenguaje de Marcas (20/05/2021)

 Repaso contenidos XML


En la clase de hoy hemos realizado un repaso de cara a las prácticas y a los exámenes, mediante la creación de documentos XML y realizando sus validaciones con XML Schemas, con los "xs". Se han realizado varios ejemplos de ejercicios donde podíamos ver si había cosas que estaban mal validadas y corregirlas o añadir nuevas etiquetas.

lunes, 17 de mayo de 2021

Bases de Datos (17/05/2021)

 Entorno de examen y Repaso de consultas

En la clase de hoy hemos comenzado con la preparación de nuestros equipos al entorno del examen sobre Base de Datos, una vez preparados y comprobados los entornos hemos continuado repasando el temario del que constará el examen de la asignatura, practicando consultas sobre la base de datos que utilizaremos en el examen en nuestro SGBD HeidiSQL, denominada "jardineria".

(Recordar que es importante, como ayuda para las consultas, realizar la ingeniería inversa en MySQLWorkbench para obtener las tablas, a, a modo de consulta para comprobar las rutas, claves, etc., que debemos seguir al trabajar en HeidiSQL).

Por ejemplo: Obtener el nombre del cliente con  mayor límite de crédito.

Para ello, hemos realizado primero una subconsulta sobre el limite máximo de crédito y, tras cargarlo y comprobarlo, lo hemos llevado a la consulta normal para obtener el cliente con mayor crédito.

"SELECT NombreCliente

FROM Clientes

WHERE LimiteCredito=(SELECT MAX(LimiteCredito) 

FROM Clientes);" (lo que está entre paréntesis sería la subconsulta que se realizó antes, traspasándose después a la consulta normal de esa forma).

Otro ejemplo de consulta sería: Obtener el nombre, apellidos y cargo de los empleados que no representen a ningún cliente.

Habría que hacer, de nuevo, una subconsulta previa y, después, la consulta principal.

"SELECT Nombre, Apellido1, Puesto, CodigoEmpleado

FROM Empleados

WHERE CodigoEmpleado NOT IN (SELECT CodigoEmpleadoRepVentas

FROM Clientes);"

(Recordatorio, es importante hacer el "join" de las tablas, puede hacerse a la vez que la subconsulta, en vez de la subconsulta o solo se puede hacer la subconsulta, ya depende de la situación).

Ejemplo 3: Obtener el precio del producto mas caro y el mas barato.

"SELECT MAX(PrecioVenta) "Precio más caro", MIN(PrecioVenta) "precio mas barato

FROM Productos; 

viernes, 14 de mayo de 2021

Base de Datos (14/05/2021)

 Continuación práctica BBDD "Jardinería"

En la clase de hoy hemos continuado practicando en el SGBD HeidiSQL sobre la base de datos de "Jardinería", base de datos que se utilizará de cara al examen de la asignatura. 

Hemos continuado viendo nuevas consultas, sobre esta base de datos, como las consultas reflexivas y hemos repasado la función "Concat", realizando una consulta de práctica, con unión de tablas y después el "Concat".

"SELECT CONCAT(emp.Nombre, " ", emp.Apellido1)"Nombre Empleado", CONCAT(jef.Nombre, " ", jef.Apellido1) "Nombre Jefe"

FROM Empleados emp, Empleados jef 

WHERE emp.CodigoEmpleado=jef.CodigoJefe;"

La segunda hora se ha utilizado para realizar observaciones sobre las prácticas de los proyectos de base de datos por fases, resolviendo dudas y corrigiendo algunos aspectos concretos.

jueves, 13 de mayo de 2021

Lenguaje de Marcas (13/05/2021)

Continuación temario XML, Validaciones, XML Schema


En la clase de hoy hemos empezado viendo la práctica que debemos entregar para el final de la 3º Evaluación de Lenguaje de Marcas, con los apartados a realizar y su valor. 

A continuación hemos dado un repaso al ejercicio práctico realizado en la última clase. relacionado con los documentos XML y su validación utilizando XML Schema, XSD, etc. Se ha visto la diferencia entre realizar un Diseño Plano o realizar un diseño de tipo "Muñecas Rusas (Russian Doll Design)", siendo de mayor elaboración o mas recomendado el diseño plano, también de cara al último proyecto de la 3º Evaluación. Después hemos realizado un ejercicio práctico para practicar estos aspectos, viendo las diferencias entre un diseño de tipo "Muñeca Rusa" o uno de tipo "Plano". 

Tipo "Muñeca Rusa":

Tipo "Diseño Plano":


Por último hemos visto un nuevo punto del temario sobre XML Schema (XSD), sobre los tipos de datos derivados por restricción, en los que encontramos derivación por valores, por enumeración (listas) o por unión. 

miércoles, 12 de mayo de 2021

Bases de Datos (12/05/2021)

 Ejercicios de Repaso Sentencias

En la clase de hoy hemos continuado realizando los ejercicios comenzados en la clase anterior de Bases de Datos sobre crear consultas en una base de datos realizando distintas sentencias, para esto se esta usando la base de datos denominada "tienda", trabajándolo en el SGBD de HeidiSQL para las consultas y MySQLWorkbench para consultar las tablas de la base de datos realizadas con el proceso de ingeniería inversa.

Un ejemplo de uno de los ejercicios puede ser el ejercicio 9 de los que hemos empezado en la clase anterior: realizar una consulta que filtre los usuarios, por nombre y apellidos y localidad, que pertenecen a la provincia de alicante

SELECT u.nombre, u.apellidos, u.localidad

FROM usuario u, provincia p

WHERE u.provncia= p.codp AND p.nombre="Alicante/Alacant"

ORDER BY u.apellidos, u.nombre; "

Otro ejemplo pude ser el ejercicio 10: obtener el DNI, el nombre y los apellidos de todos los usuarios servidos por el transportista "UPSS" y, después, ordenar los registros por el DNI:

" SELECT u.dni, u.nombre, u.apellidos

FROM usuario u, pedido p, transporte t

WHERE u.email=p.usuario AND p.transportista=t.cod AND t.cod="UPSS"

ORDER BY u.dni; "

Después hemos abierto la base de datos de "jardinería", para poder ir revisando y repasando.

Hemos introducido el script de esta base de datos en HeidiSQL, pero al cargar para guardar la base de datos, aparecen errores en la consulta que debemos corregir. En esta base de datos podemos ir realizando consultas con sentencias de las que hemos aprendido para ir practicando según como vienen en el libro.

viernes, 7 de mayo de 2021

Bases de Datos (07/05/2021)

 Continuación Consultas

En la clase de hoy hemos continuado realizando ejercicios relacionados con consultas sobre unos determinados ejercicios, basados en la base de datos "tienda", usada para estas prácticas en el SGBD HeidiSQL. En los ejercicios realizados se han usado los conocimientos sobre consultas adquiridos en las clases anteriores, de cara a realizar un repaso correcto y afianzar conocimientos.

Hay que recordar el evitar cometer errores graves a la hora de realizar las consultas, como, por ejemplo, evitar hacer el "Producto Cartesiano", que falten tablas o datos, realizar filtrados de contenido, etc.

Un ejemplo de un ejercicio de consultas sería:

"SELECT DISTINCT e.nombre

FROM empaquetado e, linped l, pedido p

WHERE (p.numpedido=l.numpedido) AND (e.cod=l.articulo )

AND (p.fecha BETWEEN "2010-09-01" AND "2010-09-30")

ORDER BY e.nombre;"

Otro ejemplo de otro ejercicio realizado de práctica sería:

"SELECT u.mail, li.cantidad, li.pagado, e.cod, e.nombre, e.pvp

FROM empaquetado e, linped li, pedido pe, usuario u

WHERE e.cod=li.articulo

AND li.numpedido=pe.numpedido

AND pe.usuario=u.email

AND (li.pagado/li.cantidad) != e.pvp;"

Aparte debemos realizar algunos ejercicios más de práctica para seguir afianzando los conocimientos.

Entrada de Bienvenida al Blog