Activa JavaScript para disfrutar de los vídeos de la Mediateca.
6.5
Ajuste de pantallaEl ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:
El audio se oye doble disculpa
Buenas tardes, soy Alejandro Jimeno y voy a realizar el vídeo explicando el ejercicio 6.5 de las prácticas del tema 6.
00:00:00
Lo primero que tenemos que hacer cuando comencemos el ejercicio es declarar nuestra variable,
00:00:15
la cual se va a basar en el procedimiento para seleccionar la información del empleado que cumpla esa variable.
00:00:22
En este caso, nuestra variable va a ser el código del cliente.
00:00:30
Así lo escribimos y como es de carácter numérico, escribimos number para que el programa sepa que se hace referencia a todos los datos son números.
00:00:35
Lo siguiente que vamos a hacer es comenzar a crear el procedimiento con el que vamos a seleccionar estos datos y le asignamos un nombre, muestra de pagos.
00:00:50
lo siguiente que hacemos es crear una tabla
00:00:59
a la que hace referencia este procedimiento
00:01:06
se va a llamar nCliente
00:01:11
y esta tabla va a contener la información
00:01:13
de la columna de código de clientes
00:01:18
que tiene la tabla clientes
00:01:22
así que escribimos todo eso
00:01:25
cliente. Y escribimos
00:01:28
este símbolo etype, lo que quiere decir
00:01:35
que hay todo tipo de caracteres en las diferentes
00:01:38
tablas, digo, sí, en las diferentes columnas de la tabla.
00:01:43
Cerramos el paréntesis y escribimos as para
00:01:47
comenzar lo que es el procedimiento. Lo primero que
00:01:51
creamos es un cursor, con el cual seleccionaremos
00:01:55
información, que meteremos dentro de una tabla que vamos a crear
00:01:59
llamado cpagos, ahí está, es el nombre del
00:02:02
cursor cpagos, al cual le asignamos
00:02:06
una información, la cual tenemos que seleccionar
00:02:10
mediante is select
00:02:14
asterisco, lo que quiere decir que cogemos
00:02:16
toda la información from la tabla
00:02:22
La cual ya tenemos introducida en el programa
00:02:26
Donde creamos una condición
00:02:30
El código de cliente
00:02:34
Perdón, código cliente
00:02:37
El cual es una columna de esta tabla
00:02:42
Es igual a nCliente
00:02:43
Es lo mismo que por aquí básicamente
00:02:48
Que la información de código de cliente
00:02:53
Es la misma que contiene nCliente
00:02:56
lo siguiente que haremos será crear otras dos tablas
00:03:00
una es RCliente
00:03:07
la cual contendrá toda la información de clientes
00:03:10
ya que en el ejercicio nos pide que
00:03:16
de la parte de RCliente
00:03:19
antes de comentar lo que iba a comentar
00:03:23
pues voy a seguir escribiendo esto
00:03:25
clientes, o sea que tiene RClientes
00:03:27
hace referencia, contiene, mejor dicho, la información de la tabla clientes y para que
00:03:30
contenga toda la información de esta tabla escribimos row type. Lo que quiere decir es que cogemos todas las
00:03:38
columnas de esta tabla y las introducimos en R cliente. También crearemos total con integer,
00:03:44
lo que quiere decir que tiene tanto caracteres como números
00:03:55
dos puntos igual a cero
00:03:59
con esto hemos creado otras dos tablas
00:04:05
una contiene la información de clientes
00:04:09
y otra es total, el cual luego escribiremos la fórmula
00:04:14
mediante un loop, ya que se tiene que repetir varias veces
00:04:17
para averiguar el total
00:04:21
Muy bien, lo siguiente que crearemos, empezaremos con el begin
00:04:22
Después de crear el begin, seleccionaremos los datos que vamos a introducir de la tabla clientes en la nueva tabla que hemos creado llamada R clientes
00:04:28
Estos datos son los que nos piden el ejercicio, que son el código del cliente, el nombre del cliente, la ciudad y el país.
00:04:52
Luego también nos pide el ID de transacción, la fecha, la forma y la cantidad del pago.
00:05:02
Pero eso lo escribiremos posteriormente, ya que va a ir acompañado de esta fórmula.
00:05:10
Lo primero, como he dicho antes, es seleccionar la información que vamos a introducir en la tabla R clientes.
00:05:16
entonces escribimos igual que hemos escrito
00:05:25
para introducir
00:05:28
la información en cpagos
00:05:30
escribimos select
00:05:31
asterisco
00:05:33
select ascript into
00:05:35
es decir que vamos a introducir
00:05:39
en rcliente
00:05:41
rcliente
00:05:43
from
00:05:47
de la tabla clientes
00:05:51
where
00:05:55
o sea, aplicamos la misma condición que antes
00:06:01
que el código de cliente
00:06:03
sea igual
00:06:05
a ncliente
00:06:07
y cerramos
00:06:09
ahora vamos a empezar con los dbms
00:06:14
que será
00:06:17
lo que nos saldrá en pantalla
00:06:18
cuando ejecutemos con f8
00:06:20
lo que escribamos
00:06:23
y miremos en la pestaña de output
00:06:24
y aquí básicamente
00:06:27
escribimos lo que nos pide el enunciado
00:06:29
lo que quiere el enunciado que mostremos
00:06:31
de los clientes que cumplan
00:06:32
el código de cliente que escribamos
00:06:34
nosotros
00:06:37
lo primero será
00:06:37
dms
00:06:40
aquí tenemos
00:06:41
para seleccionarlo
00:06:45
bueno
00:06:47
output
00:06:48
punto put line
00:06:54
abrimos paréntesis
00:06:57
y lo que escribiremos entre estas
00:07:03
comillas es lo que veremos
00:07:05
que será el código
00:07:07
del
00:07:09
cliente
00:07:15
cerramos la comilla
00:07:18
bueno, ponemos dos
00:07:20
vamos a poner dos puntos
00:07:22
para que quede mejor
00:07:23
y ahora
00:07:25
abrimos, bueno, vamos a cerrar
00:07:29
las comillas que ya acabo de cerrar
00:07:33
y escribimos entre barras
00:07:34
R cliente
00:07:37
¿qué quiere decir esto?
00:07:40
vamos, primero voy a escribir
00:07:43
R cliente
00:07:45
vale
00:07:47
no, perdón, en el cliente no estamos hablando de código cliente
00:07:48
esto es en el cliente
00:07:51
¿qué es lo que quiere decir esto?
00:07:52
que cuando respondamos
00:07:58
o sea, cuando ejecutemos
00:08:00
la primera línea que nos saldrá
00:08:02
será el código del cliente
00:08:03
el cual es igual
00:08:06
a en el cliente
00:08:07
en el cliente
00:08:09
lo elegiremos
00:08:12
lo primero que cuando ejecutemos
00:08:14
nos saldrá aquí un recuadro
00:08:16
en el que nosotros escribiremos el código del cliente
00:08:17
Y ese número será el que aparezca aquí. Cuando hay algo entre dos barras, quiere decir que es algo, una variable, algo que cambiará dependiendo del empleado que busquemos, lo que escribamos o la información que aparezca.
00:08:20
En este caso, aquí saldrá el número que nosotros escribamos, el código del cliente del que queramos saber la información que vamos a escribir a continuación.
00:08:33
así que copiamos el dbms
00:08:43
abrimos otro paréntesis
00:08:47
y ahora queremos que nos muestre
00:08:52
el nombre
00:08:54
vaya, no se ha escrito la n
00:08:55
el nombre
00:08:58
del cliente
00:08:59
hacemos lo mismo que antes
00:09:02
cerramos y ahora
00:09:07
abrimos todas las dos barras
00:09:08
y a diferencia, no ponemos
00:09:11
en el cliente, ya que nombre del cliente
00:09:13
en este caso el nombre del cliente
00:09:16
es
00:09:17
una columna
00:09:18
que existe dentro de la tabla
00:09:19
clientes
00:09:23
y la información de clientes en este procedure
00:09:23
se encuentra dentro de
00:09:27
R cliente, por lo tanto
00:09:28
tendremos que marcar
00:09:31
que queremos sacar la información
00:09:32
de la tabla R cliente
00:09:34
más específicamente
00:09:36
de la columna
00:09:39
nombre cliente
00:09:40
y así haremos los mismos
00:09:42
con el resto de información que nos pide el ejercicio
00:09:49
volvemos a escribir otro dbms
00:09:52
pegamos
00:09:54
y en este caso ahora el enunciado nos pide
00:09:56
la ciudad del cliente
00:09:59
igual que
00:10:13
nombre del cliente, la ciudad del cliente
00:10:14
es una columna contenida
00:10:16
en la tabla clientes
00:10:18
la cual hemos introducido toda la información
00:10:19
en la tabla que hemos creado
00:10:22
llamada rclientes, así que hacemos lo mismo
00:10:24
decimos que queremos sacar
00:10:26
la información de rcliente
00:10:28
más específicamente de la columna
00:10:29
ciudad
00:10:32
y repetiremos esto mismo más
00:10:33
una vez
00:10:40
voy a copiarlo todo
00:10:41
para sacar lo siguiente que nos pide
00:10:43
anunciado, que es el país
00:10:45
del cliente
00:10:48
así que escribimos dbms
00:10:49
solo tenemos que cambiar aquí
00:10:51
país
00:10:52
esto está bien, aquí es lo que tenemos que cambiar
00:10:54
país
00:11:00
del cliente
00:11:02
y como también está contenido en rcliente
00:11:03
no hay que tocarlo, pero cambiamos la columna
00:11:06
de la que se acaba la información
00:11:08
que es país
00:11:11
vale
00:11:11
lo siguiente que haremos
00:11:13
será crear otro dbms
00:11:16
puramente decorativo
00:11:17
ya que el ejercicio
00:11:19
nos pide que se vea así
00:11:22
es algo que sobra totalmente
00:11:23
no es necesario escribirlo
00:11:25
para la correcta ejecución
00:11:28
de nuestro procedure
00:11:30
pero
00:11:32
el ejercicio lo pide así
00:11:33
así que lo escribiremos así
00:11:36
voy a cambiar, bueno, si está bien
00:11:38
vale
00:11:43
voy a proceder a poner los
00:11:43
asteriscos
00:11:46
no sé exactamente cuantos son
00:11:47
así que voy a poner unos cuantos
00:11:50
ups, estos no son
00:11:52
esto aparecerá en la pantalla en el orden que lo escribamos
00:11:53
es decir que esto irá debajo
00:12:05
de, o sea, los asteriscos estos
00:12:06
irán debajo de lo que hemos escrito
00:12:08
anteriormente
00:12:11
me falta la comilla
00:12:11
lo siguiente que nos pide el ejercicio es
00:12:13
que escribamos el ID de transacción, la fecha, la forma y la cantidad de pago
00:12:26
esto se escribe igual que el anterior con un dbms
00:12:30
control c, control v
00:12:34
y si lo hacemos según nos pone el ejercicio, primero debemos escribir
00:12:38
el nombre y posteriormente debajo escribiremos
00:12:42
el nombre pero haciendo referencia a la variable que saldrá
00:12:46
dependiendo del trabajador que hayamos escogido sacar esa información.
00:12:50
Así que vamos a hacer como antes, vamos a escribir los asteriscos,
00:12:55
porque el ejercicio lo pide así.
00:12:59
Bueno, perdón, disculpa, primero hay que escribir
00:13:02
y de transacción, dejamos algo de espacio,
00:13:05
la fecha, la forma y cantidad de pago.
00:13:20
cerramos, repetimos los dos asteriscos
00:13:32
voy a copiar directamente la línea
00:13:44
vale, lo siguiente que tendremos que hacer
00:13:48
es encargarnos de crear la fórmula para total
00:13:57
la crearemos mediante un loop
00:14:01
con for, esto se escribe de la siguiente manera
00:14:06
escribimos for, esta es la manera en la que recorremos el cursor
00:14:10
que hemos creado anteriormente
00:14:14
con la información que hemos seleccionado
00:14:15
y hacemos un loop
00:14:17
para que se repita una y otra vez
00:14:19
vamos a poner la letra I
00:14:20
dado ese nombre
00:14:23
IN
00:14:26
haciendo referencia
00:14:27
a C pagos
00:14:29
es decir, que queremos recorrer
00:14:30
el cursor C pagos
00:14:33
y loop
00:14:35
nos queda un loop
00:14:39
ahora escribimos la fórmula del total
00:14:41
la cual es
00:14:45
total
00:14:49
más la cantidad
00:14:54
escribimos y porque es así como lo hemos nombrado
00:15:01
más la cantidad
00:15:05
entonces nuestro loop hará esta fórmula una y otra vez
00:15:06
y ahora escribimos como queremos
00:15:12
que se represente en el resultado
00:15:16
y lo queremos que se vea, entonces lo escribimos con un dbms
00:15:19
esto irá debajo de esto
00:15:23
separado por los asteriscos
00:15:29
haciendo unas columnas en las que saldrá y detrás acción el nombre
00:15:32
y luego escribiremos prácticamente lo mismo
00:15:36
pero de forma variable, o sea que es una variable
00:15:40
es decir, aquí lo tenemos que nombrar como
00:15:43
en las columnas, en este caso
00:15:47
idTransaction se escribiría i.idTransaction
00:15:51
las barritas que indican que es una variable
00:15:56
aquí, fecha sería en este caso
00:16:02
fecha de apago
00:16:10
un momento, me estoy liando con el orden de las
00:16:12
vale, me faltaba, aquí habría que poner una comilla
00:16:16
y punto
00:16:21
faltan aquí
00:16:26
faltan unas comillas
00:16:30
y las barritas
00:16:32
y punto
00:16:33
fecha pago
00:16:36
que es así como está escrito
00:16:38
en nuestra tabla
00:16:40
y fecha pago
00:16:41
cerramos las cosas estas
00:16:44
otra comilla
00:16:46
comilla
00:16:48
aquí
00:16:50
y hacemos lo mismo para la información
00:16:51
de pago y la cantidad
00:16:54
Dejamos un espacio
00:16:56
Y
00:16:58
Dejamos las nuevas barritas
00:17:01
Y punto
00:17:03
Forma pago
00:17:05
Cerramos las barras
00:17:07
Voy a borrar esto
00:17:11
De aquí
00:17:19
Vale, y ya solo nos falta
00:17:21
La cantidad
00:17:23
Sería y
00:17:27
Y punto cantidad
00:17:29
Y cerramos el paréntesis
00:17:33
Muy bien
00:17:40
Pues ya estaría.
00:17:42
Lo siguiente que debemos hacer es finalizar el loop, ya que lo hemos acabado.
00:17:43
Ups.
00:17:48
Enter loop.
00:17:54
Ponemos las comillas.
00:17:56
Lo siguiente que nos pide el ejercicio, si vemos el resultado que nos pone en el libro,
00:17:59
es que escribamos otra línea separatoria de asteriscos.
00:18:05
Así que copiamos y pegamos.
00:18:11
Lo siguiente que tendremos que hacer
00:18:14
Es escribir el total
00:18:18
O sea que nos aparezca
00:18:20
En el resultado del output
00:18:22
Nos aparezca el total
00:18:24
Escrito
00:18:26
¿Cómo hacemos esto? Pues con un DMS
00:18:27
Exactamente igual
00:18:30
Copiamos hasta aquí
00:18:32
Pegamos
00:18:34
¿Y qué queremos que aparezca?
00:18:36
O sea, lo que queremos que aparezca
00:18:38
Por lo esquimos, por ejemplo
00:18:40
Total
00:18:41
Total de pagos efectuados
00:18:42
esto va a salir siempre así
00:18:46
no va a variar
00:18:52
dos puntos
00:18:53
y queremos que aparezca la variable
00:18:56
de total, o sea que volvemos a escribir
00:18:58
las barritas
00:19:00
y escribimos la variable total
00:19:02
la cual cambia
00:19:04
dependiendo del empleado
00:19:06
vale
00:19:08
el grueso
00:19:10
del procedimiento ya está ya creado
00:19:12
y lo siguiente
00:19:15
que vamos a crear es
00:19:16
las excepciones
00:19:18
que el ejercicio nos pide
00:19:21
que creemos excepciones
00:19:22
entonces excepciones sirven para cuando haya un error
00:19:24
nos salga un mensaje
00:19:27
en este caso que nos indique
00:19:29
el SQL código
00:19:31
del error
00:19:33
y el SQL ERM
00:19:34
esto como se hace
00:19:37
la sintaxis de un error
00:19:39
o sea de una excepción
00:19:41
es escribir exception
00:19:42
creo que he puesto algo mal
00:19:44
Oh, puede que haya borrado
00:19:49
Excepción
00:19:51
No sé si he escrito algo mal
00:19:54
Bueno
00:19:56
Escribimos excepción
00:19:56
When
00:19:59
Es decir, que ahora una excepción
00:20:01
Joder, otra es igual
00:20:04
Excepción
00:20:05
When
00:20:10
When
00:20:12
Others
00:20:18
Then
00:20:21
Y aquí empezamos a escribir
00:20:28
lo que queremos que aparezca en nuestra excepción
00:20:33
otro
00:20:36
escribimos un dms
00:20:40
porque queremos que aparezca en pantalla
00:20:41
cuando ejecutemos
00:20:43
código de error
00:20:46
número, vamos a escribir porque esto va a ser lo que
00:20:49
nos salga si o si
00:20:52
cuando hay un error
00:20:54
error
00:20:55
número y ahora
00:20:57
escribimos
00:20:59
la variable que cambiará
00:21:01
dependiendo del error
00:21:04
que nos aparezca
00:21:05
que en este caso será
00:21:06
SQL
00:21:08
ups
00:21:10
estas barras me sobran
00:21:12
y aquí este paréntesis
00:21:24
está bien sobrado
00:21:30
vale, ahora sí
00:21:32
entonces, haz punto y coma
00:21:34
y ahora escribimos
00:21:38
otro DMS
00:21:40
en el que ponga
00:21:42
el SQL
00:21:44
ERM
00:21:46
creo que lo he escrito bien, vale, lo siguiente y para finalizar, bueno, el procedimiento
00:21:54
ya está acabado, con esto terminamos el procedimiento, escribimos ahora un end, como símbolo de
00:22:01
que hemos acabado el procedimiento, que ya estaría escrito, para hacer un resumen, básicamente
00:22:12
aquí hemos declarado nuestra variable, a partir de aquí empezamos a crear el procedimiento
00:22:18
el cual hemos llamado muestra de pagos, donde creamos una tabla llamada any cliente, que
00:22:22
contiene la información de la tabla cliente, específicamente de la columna
00:22:28
código cliente. Luego hemos creado un cursor
00:22:32
que he llamado cPagos, al que le hemos seleccionado la información
00:22:35
de la tabla pagos, donde el código de cliente
00:22:39
sea igual a la tabla nCliente. Luego hemos creado la tabla
00:22:43
rCliente, con toda la información que contiene la tabla clientes
00:22:48
y un segundo
00:22:52
es clientes o cliente
00:22:56
ahora que estoy pensando
00:22:57
es cliente, sí
00:22:58
vale
00:23:00
un segundo porque puede que haya
00:23:02
equivocado
00:23:06
sí, ya ve, ya sabe aquí, cuando he leído esto
00:23:06
es aquí clientes
00:23:10
y aquí esto no es unis, es
00:23:12
in
00:23:13
vale, ahora sí está bien
00:23:14
bueno, lo que iba diciendo
00:23:17
hemos creado
00:23:20
la tabla R cliente
00:23:22
y la tabla total
00:23:23
luego hemos empezado con un begin
00:23:25
donde hemos seleccionado para introducir información en la R clientes
00:23:29
la información que contiene la tabla clientes
00:23:33
donde el código del cliente es igual a N cliente
00:23:35
luego hemos escrito varios DBMs para que nos aparezca
00:23:40
algo escrito en el resultado final, lo que nos pide el enunciado
00:23:44
que es el código del cliente, como está dentro
00:23:48
de la tabla N clientes, escribimos aquí el N cliente que es la variable
00:23:51
nombre del cliente, ciudad del cliente, país del cliente
00:23:55
esto es puramente del enunciado
00:24:00
aquí escribimos el ID de transacción
00:24:02
fecha, forma y cantidad que es la información que saldrá
00:24:07
justamente debajo lo que hemos escrito aquí para que aparezca
00:24:11
de seguido abajo, estos son variables que cambiarán dependiendo del cliente
00:24:15
y el ID de transacción, la fecha de pago, forma pago y cantidad propia de cada uno
00:24:20
antes de eso hemos creado un loop para calcular el total
00:24:24
mediante la suma del total y la cantidad
00:24:28
hemos traído el loop, esto es puramente el enunciado
00:24:30
y hemos escrito un último dbms para que aparezca el total de pagos efectuados
00:24:34
aquí está la variable
00:24:41
luego hemos creado la excepción con estas características
00:24:43
Por último, una vez creado el procedimiento, simplemente debemos escribir otro BEGIN, mediante el cual pediremos que nos deje elegir el código del cliente, para que nos deje escribir, escribimos LAST PERSON, y ahora escribimos lo que queremos que aparezca.
00:24:49
en este caso yo voy a poner introduce
00:25:23
como ponía en el ejemplo
00:25:25
introduce tu código
00:25:28
y ejecutamos
00:25:28
aprovechando el begin
00:25:40
ejecutamos el procedure
00:25:42
una vez, es decir, una vez
00:25:44
que hayamos escrito
00:25:46
un código
00:25:47
se ejecutará el procedimiento
00:25:49
la muestra
00:25:52
de pagos
00:25:53
dos puntos
00:25:56
y abrimos paréntesis haciendo referencia
00:26:00
al código
00:26:02
clientes
00:26:03
y terminamos con clientes
00:26:08
y así estaría acabado el ejercicio
00:26:16
puede que haya cometido un error
00:26:18
al estar hablando y escribiendo, vamos a comprobarlo
00:26:19
vamos a poner un 1
00:26:22
si, como suponía
00:26:23
cometí un error, pero
00:26:25
previniendo este problema
00:26:27
hice el ejercicio con anterioridad
00:26:29
aquí está
00:26:32
aquí es, es el mismo ejercicio
00:26:33
si da cuenta
00:26:36
aquí el excepción está en verde
00:26:38
es exactamente igual, lo único que sin el error que haya cometido mientras dictaba el ejercicio, porque al hablar es más complicado estar pendiente de todo, pero es exactamente lo mismo, si damos aquí al F8, vaya, debe haber algún error, voy a realizar un corte, a ver, ah no, no era un error, no sé que ha sucedido,
00:26:40
Pues bueno, hemos introducido el código del cliente y aquí en Output, ahora no sale aquí toda la información porque tuve un problema con la tabla de pagos que no me dejaba introducir la información, o sea los valores, pero tengo aquí una captura.
00:27:05
le pedí a un compañero, le he pasado mi código
00:27:21
para que él lo introdujera en su programa
00:27:25
y saliera el resultado de forma correcta
00:27:29
que esto es la parte que me falta
00:27:33
esta de aquí
00:27:35
porque es información que contiene la tabla pagos
00:27:36
pero yo no puedo meter esos valores
00:27:40
y bueno, es así, básicamente esta es mi explicación
00:27:43
que le veo a este ejercicio
00:27:46
Así que gracias y un saludo
00:27:50
- Valoración:
- Eres el primero. Inicia sesión para valorar el vídeo.
- 1
- 2
- 3
- 4
- 5
- Autor/es:
- ALEJANDRO JIMENO HERNÁN
- Subido por:
- Alejandro J.
- Moderado por el profesor:
- Juan Antonio Garcia Domínguez (juan.garcia317)
- Licencia:
- Reconocimiento
- Visualizaciones:
- 71
- Fecha:
- 31 de mayo de 2020 - 19:36
- Visibilidad:
- Público
- Centro:
- IES VISTA ALEGRE
- Duración:
- 27′ 53″
- Relación de aspecto:
- 1.78:1
- Resolución:
- 1092x614 píxeles
- Tamaño:
- 44.83 MBytes
Para publicar comentarios debes entrar con tu nombre de usuario de EducaMadrid.
Comentarios
Este vídeo todavía no tiene comentarios. Sé el primero en comentar.