1 00:00:00,620 --> 00:00:09,980 Buenas tardes, soy Alejandro Jimeno y voy a realizar el vídeo explicando el ejercicio 6.5 de las prácticas del tema 6. 2 00:00:15,630 --> 00:00:21,690 Lo primero que tenemos que hacer cuando comencemos el ejercicio es declarar nuestra variable, 3 00:00:22,690 --> 00:00:30,649 la cual se va a basar en el procedimiento para seleccionar la información del empleado que cumpla esa variable. 4 00:00:30,649 --> 00:00:34,649 En este caso, nuestra variable va a ser el código del cliente. 5 00:00:35,649 --> 00:00:49,670 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. 6 00:00:50,390 --> 00:00:59,890 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. 7 00:00:59,890 --> 00:01:06,140 lo siguiente que hacemos es crear una tabla 8 00:01:06,140 --> 00:01:11,180 a la que hace referencia este procedimiento 9 00:01:11,180 --> 00:01:13,560 se va a llamar nCliente 10 00:01:13,560 --> 00:01:18,260 y esta tabla va a contener la información 11 00:01:18,260 --> 00:01:22,739 de la columna de código de clientes 12 00:01:22,739 --> 00:01:25,340 que tiene la tabla clientes 13 00:01:25,340 --> 00:01:28,579 así que escribimos todo eso 14 00:01:28,579 --> 00:01:35,569 cliente. Y escribimos 15 00:01:35,569 --> 00:01:38,670 este símbolo etype, lo que quiere decir 16 00:01:38,670 --> 00:01:43,250 que hay todo tipo de caracteres en las diferentes 17 00:01:43,250 --> 00:01:46,170 tablas, digo, sí, en las diferentes columnas de la tabla. 18 00:01:47,510 --> 00:01:51,230 Cerramos el paréntesis y escribimos as para 19 00:01:51,230 --> 00:01:55,310 comenzar lo que es el procedimiento. Lo primero que 20 00:01:55,310 --> 00:01:59,069 creamos es un cursor, con el cual seleccionaremos 21 00:01:59,069 --> 00:02:02,829 información, que meteremos dentro de una tabla que vamos a crear 22 00:02:02,829 --> 00:02:06,909 llamado cpagos, ahí está, es el nombre del 23 00:02:06,909 --> 00:02:10,069 cursor cpagos, al cual le asignamos 24 00:02:10,069 --> 00:02:14,770 una información, la cual tenemos que seleccionar 25 00:02:14,770 --> 00:02:16,770 mediante is select 26 00:02:16,770 --> 00:02:22,789 asterisco, lo que quiere decir que cogemos 27 00:02:22,789 --> 00:02:26,830 toda la información from la tabla 28 00:02:26,830 --> 00:02:30,849 La cual ya tenemos introducida en el programa 29 00:02:30,849 --> 00:02:34,069 Donde creamos una condición 30 00:02:34,069 --> 00:02:37,069 El código de cliente 31 00:02:37,069 --> 00:02:42,050 Perdón, código cliente 32 00:02:42,050 --> 00:02:43,990 El cual es una columna de esta tabla 33 00:02:43,990 --> 00:02:48,979 Es igual a nCliente 34 00:02:48,979 --> 00:02:53,460 Es lo mismo que por aquí básicamente 35 00:02:53,460 --> 00:02:56,659 Que la información de código de cliente 36 00:02:56,659 --> 00:03:00,080 Es la misma que contiene nCliente 37 00:03:00,080 --> 00:03:07,960 lo siguiente que haremos será crear otras dos tablas 38 00:03:07,960 --> 00:03:10,460 una es RCliente 39 00:03:10,460 --> 00:03:16,319 la cual contendrá toda la información de clientes 40 00:03:16,319 --> 00:03:19,639 ya que en el ejercicio nos pide que 41 00:03:19,639 --> 00:03:23,099 de la parte de RCliente 42 00:03:23,099 --> 00:03:25,439 antes de comentar lo que iba a comentar 43 00:03:25,439 --> 00:03:27,919 pues voy a seguir escribiendo esto 44 00:03:27,919 --> 00:03:30,939 clientes, o sea que tiene RClientes 45 00:03:30,939 --> 00:03:38,020 hace referencia, contiene, mejor dicho, la información de la tabla clientes y para que 46 00:03:38,020 --> 00:03:44,560 contenga toda la información de esta tabla escribimos row type. Lo que quiere decir es que cogemos todas las 47 00:03:44,560 --> 00:03:55,300 columnas de esta tabla y las introducimos en R cliente. También crearemos total con integer, 48 00:03:55,300 --> 00:03:59,500 lo que quiere decir que tiene tanto caracteres como números 49 00:03:59,500 --> 00:04:05,419 dos puntos igual a cero 50 00:04:05,419 --> 00:04:09,039 con esto hemos creado otras dos tablas 51 00:04:09,039 --> 00:04:14,039 una contiene la información de clientes 52 00:04:14,039 --> 00:04:17,800 y otra es total, el cual luego escribiremos la fórmula 53 00:04:17,800 --> 00:04:21,399 mediante un loop, ya que se tiene que repetir varias veces 54 00:04:21,399 --> 00:04:22,680 para averiguar el total 55 00:04:22,680 --> 00:04:28,560 Muy bien, lo siguiente que crearemos, empezaremos con el begin 56 00:04:28,560 --> 00:04:52,339 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 57 00:04:52,339 --> 00:05:01,439 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. 58 00:05:02,680 --> 00:05:08,620 Luego también nos pide el ID de transacción, la fecha, la forma y la cantidad del pago. 59 00:05:10,339 --> 00:05:16,459 Pero eso lo escribiremos posteriormente, ya que va a ir acompañado de esta fórmula. 60 00:05:16,459 --> 00:05:25,899 Lo primero, como he dicho antes, es seleccionar la información que vamos a introducir en la tabla R clientes. 61 00:05:25,899 --> 00:05:28,079 entonces escribimos igual que hemos escrito 62 00:05:28,079 --> 00:05:30,019 para introducir 63 00:05:30,019 --> 00:05:31,660 la información en cpagos 64 00:05:31,660 --> 00:05:33,759 escribimos select 65 00:05:33,759 --> 00:05:35,379 asterisco 66 00:05:35,379 --> 00:05:39,379 select ascript into 67 00:05:39,379 --> 00:05:41,839 es decir que vamos a introducir 68 00:05:41,839 --> 00:05:43,680 en rcliente 69 00:05:43,680 --> 00:05:47,319 rcliente 70 00:05:47,319 --> 00:05:51,730 from 71 00:05:51,730 --> 00:05:55,069 de la tabla clientes 72 00:05:55,069 --> 00:06:01,089 where 73 00:06:01,089 --> 00:06:03,850 o sea, aplicamos la misma condición que antes 74 00:06:03,850 --> 00:06:05,750 que el código de cliente 75 00:06:05,750 --> 00:06:07,389 sea igual 76 00:06:07,389 --> 00:06:09,170 a ncliente 77 00:06:09,170 --> 00:06:14,829 y cerramos 78 00:06:14,829 --> 00:06:17,870 ahora vamos a empezar con los dbms 79 00:06:17,870 --> 00:06:18,850 que será 80 00:06:18,850 --> 00:06:20,670 lo que nos saldrá en pantalla 81 00:06:20,670 --> 00:06:23,529 cuando ejecutemos con f8 82 00:06:23,529 --> 00:06:24,410 lo que escribamos 83 00:06:24,410 --> 00:06:27,129 y miremos en la pestaña de output 84 00:06:27,129 --> 00:06:29,230 y aquí básicamente 85 00:06:29,230 --> 00:06:31,310 escribimos lo que nos pide el enunciado 86 00:06:31,310 --> 00:06:32,949 lo que quiere el enunciado que mostremos 87 00:06:32,949 --> 00:06:34,930 de los clientes que cumplan 88 00:06:34,930 --> 00:06:37,170 el código de cliente que escribamos 89 00:06:37,170 --> 00:06:37,790 nosotros 90 00:06:37,790 --> 00:06:40,410 lo primero será 91 00:06:40,410 --> 00:06:41,449 dms 92 00:06:41,449 --> 00:06:45,670 aquí tenemos 93 00:06:45,670 --> 00:06:47,029 para seleccionarlo 94 00:06:47,029 --> 00:06:48,569 bueno 95 00:06:48,569 --> 00:06:54,060 output 96 00:06:54,060 --> 00:06:57,680 punto put line 97 00:06:57,680 --> 00:07:03,740 abrimos paréntesis 98 00:07:03,740 --> 00:07:05,639 y lo que escribiremos entre estas 99 00:07:05,639 --> 00:07:07,480 comillas es lo que veremos 100 00:07:07,480 --> 00:07:09,300 que será el código 101 00:07:09,300 --> 00:07:15,839 del 102 00:07:15,839 --> 00:07:18,199 cliente 103 00:07:18,199 --> 00:07:20,220 cerramos la comilla 104 00:07:20,220 --> 00:07:22,600 bueno, ponemos dos 105 00:07:22,600 --> 00:07:23,560 vamos a poner dos puntos 106 00:07:23,560 --> 00:07:25,319 para que quede mejor 107 00:07:25,319 --> 00:07:29,870 y ahora 108 00:07:29,870 --> 00:07:33,430 abrimos, bueno, vamos a cerrar 109 00:07:33,430 --> 00:07:34,629 las comillas que ya acabo de cerrar 110 00:07:34,629 --> 00:07:37,470 y escribimos entre barras 111 00:07:37,470 --> 00:07:40,620 R cliente 112 00:07:40,620 --> 00:07:42,839 ¿qué quiere decir esto? 113 00:07:43,699 --> 00:07:45,040 vamos, primero voy a escribir 114 00:07:45,040 --> 00:07:47,160 R cliente 115 00:07:47,160 --> 00:07:48,519 vale 116 00:07:48,519 --> 00:07:51,339 no, perdón, en el cliente no estamos hablando de código cliente 117 00:07:51,339 --> 00:07:52,720 esto es en el cliente 118 00:07:52,720 --> 00:07:57,639 ¿qué es lo que quiere decir esto? 119 00:07:58,420 --> 00:08:00,360 que cuando respondamos 120 00:08:00,360 --> 00:08:02,120 o sea, cuando ejecutemos 121 00:08:02,120 --> 00:08:03,899 la primera línea que nos saldrá 122 00:08:03,899 --> 00:08:06,199 será el código del cliente 123 00:08:06,199 --> 00:08:07,740 el cual es igual 124 00:08:07,740 --> 00:08:09,759 a en el cliente 125 00:08:09,759 --> 00:08:12,540 en el cliente 126 00:08:12,540 --> 00:08:14,019 lo elegiremos 127 00:08:14,019 --> 00:08:16,459 lo primero que cuando ejecutemos 128 00:08:16,459 --> 00:08:17,560 nos saldrá aquí un recuadro 129 00:08:17,560 --> 00:08:20,579 en el que nosotros escribiremos el código del cliente 130 00:08:20,579 --> 00:08:33,519 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. 131 00:08:33,639 --> 00:08:43,860 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. 132 00:08:43,860 --> 00:08:47,059 así que copiamos el dbms 133 00:08:47,059 --> 00:08:52,710 abrimos otro paréntesis 134 00:08:52,710 --> 00:08:54,889 y ahora queremos que nos muestre 135 00:08:54,889 --> 00:08:55,590 el nombre 136 00:08:55,590 --> 00:08:58,389 vaya, no se ha escrito la n 137 00:08:58,389 --> 00:08:59,549 el nombre 138 00:08:59,549 --> 00:09:02,629 del cliente 139 00:09:02,629 --> 00:09:07,179 hacemos lo mismo que antes 140 00:09:07,179 --> 00:09:08,960 cerramos y ahora 141 00:09:08,960 --> 00:09:11,480 abrimos todas las dos barras 142 00:09:11,480 --> 00:09:13,200 y a diferencia, no ponemos 143 00:09:13,200 --> 00:09:15,419 en el cliente, ya que nombre del cliente 144 00:09:16,639 --> 00:09:17,820 en este caso el nombre del cliente 145 00:09:17,820 --> 00:09:18,240 es 146 00:09:18,240 --> 00:09:19,899 una columna 147 00:09:19,899 --> 00:09:23,159 que existe dentro de la tabla 148 00:09:23,159 --> 00:09:23,940 clientes 149 00:09:23,940 --> 00:09:27,039 y la información de clientes en este procedure 150 00:09:27,039 --> 00:09:28,840 se encuentra dentro de 151 00:09:28,840 --> 00:09:31,100 R cliente, por lo tanto 152 00:09:31,100 --> 00:09:32,759 tendremos que marcar 153 00:09:32,759 --> 00:09:34,679 que queremos sacar la información 154 00:09:34,679 --> 00:09:36,960 de la tabla R cliente 155 00:09:36,960 --> 00:09:39,679 más específicamente 156 00:09:39,679 --> 00:09:40,620 de la columna 157 00:09:40,620 --> 00:09:42,740 nombre cliente 158 00:09:42,740 --> 00:09:49,490 y así haremos los mismos 159 00:09:49,490 --> 00:09:52,149 con el resto de información que nos pide el ejercicio 160 00:09:52,149 --> 00:09:54,610 volvemos a escribir otro dbms 161 00:09:54,610 --> 00:09:56,429 pegamos 162 00:09:56,429 --> 00:09:59,210 y en este caso ahora el enunciado nos pide 163 00:09:59,210 --> 00:10:01,149 la ciudad del cliente 164 00:10:13,269 --> 00:10:14,429 igual que 165 00:10:14,429 --> 00:10:16,509 nombre del cliente, la ciudad del cliente 166 00:10:16,509 --> 00:10:18,149 es una columna contenida 167 00:10:18,149 --> 00:10:19,590 en la tabla clientes 168 00:10:19,590 --> 00:10:22,129 la cual hemos introducido toda la información 169 00:10:22,129 --> 00:10:24,190 en la tabla que hemos creado 170 00:10:24,190 --> 00:10:26,250 llamada rclientes, así que hacemos lo mismo 171 00:10:26,250 --> 00:10:28,129 decimos que queremos sacar 172 00:10:28,129 --> 00:10:29,470 la información de rcliente 173 00:10:29,470 --> 00:10:32,330 más específicamente de la columna 174 00:10:32,330 --> 00:10:33,470 ciudad 175 00:10:33,470 --> 00:10:40,250 y repetiremos esto mismo más 176 00:10:40,250 --> 00:10:41,070 una vez 177 00:10:41,070 --> 00:10:43,230 voy a copiarlo todo 178 00:10:43,230 --> 00:10:45,970 para sacar lo siguiente que nos pide 179 00:10:45,970 --> 00:10:48,110 anunciado, que es el país 180 00:10:48,110 --> 00:10:49,750 del cliente 181 00:10:49,750 --> 00:10:51,649 así que escribimos dbms 182 00:10:51,649 --> 00:10:52,970 solo tenemos que cambiar aquí 183 00:10:52,970 --> 00:10:54,070 país 184 00:10:54,070 --> 00:11:00,210 esto está bien, aquí es lo que tenemos que cambiar 185 00:11:00,210 --> 00:11:02,289 país 186 00:11:02,289 --> 00:11:03,970 del cliente 187 00:11:03,970 --> 00:11:06,129 y como también está contenido en rcliente 188 00:11:06,129 --> 00:11:08,929 no hay que tocarlo, pero cambiamos la columna 189 00:11:08,929 --> 00:11:11,029 de la que se acaba la información 190 00:11:11,029 --> 00:11:11,809 que es país 191 00:11:11,809 --> 00:11:13,470 vale 192 00:11:13,470 --> 00:11:16,409 lo siguiente que haremos 193 00:11:16,409 --> 00:11:17,590 será crear otro dbms 194 00:11:17,590 --> 00:11:19,649 puramente decorativo 195 00:11:19,649 --> 00:11:22,629 ya que el ejercicio 196 00:11:22,629 --> 00:11:23,789 nos pide que se vea así 197 00:11:23,789 --> 00:11:25,970 es algo que sobra totalmente 198 00:11:25,970 --> 00:11:28,809 no es necesario escribirlo 199 00:11:28,809 --> 00:11:30,210 para la correcta ejecución 200 00:11:30,210 --> 00:11:32,250 de nuestro procedure 201 00:11:32,250 --> 00:11:33,450 pero 202 00:11:33,450 --> 00:11:36,009 el ejercicio lo pide así 203 00:11:36,009 --> 00:11:38,129 así que lo escribiremos así 204 00:11:38,129 --> 00:11:43,049 voy a cambiar, bueno, si está bien 205 00:11:43,049 --> 00:11:43,389 vale 206 00:11:43,389 --> 00:11:46,629 voy a proceder a poner los 207 00:11:46,629 --> 00:11:47,490 asteriscos 208 00:11:47,490 --> 00:11:50,389 no sé exactamente cuantos son 209 00:11:50,389 --> 00:11:52,970 así que voy a poner unos cuantos 210 00:11:52,970 --> 00:11:53,970 ups, estos no son 211 00:11:53,970 --> 00:12:05,299 esto aparecerá en la pantalla en el orden que lo escribamos 212 00:12:05,299 --> 00:12:06,899 es decir que esto irá debajo 213 00:12:06,899 --> 00:12:08,919 de, o sea, los asteriscos estos 214 00:12:08,919 --> 00:12:11,059 irán debajo de lo que hemos escrito 215 00:12:11,059 --> 00:12:11,940 anteriormente 216 00:12:11,940 --> 00:12:13,580 me falta la comilla 217 00:12:13,580 --> 00:12:26,049 lo siguiente que nos pide el ejercicio es 218 00:12:26,049 --> 00:12:30,990 que escribamos el ID de transacción, la fecha, la forma y la cantidad de pago 219 00:12:30,990 --> 00:12:34,370 esto se escribe igual que el anterior con un dbms 220 00:12:34,370 --> 00:12:38,169 control c, control v 221 00:12:38,169 --> 00:12:42,970 y si lo hacemos según nos pone el ejercicio, primero debemos escribir 222 00:12:42,970 --> 00:12:46,570 el nombre y posteriormente debajo escribiremos 223 00:12:46,570 --> 00:12:50,570 el nombre pero haciendo referencia a la variable que saldrá 224 00:12:50,570 --> 00:12:55,049 dependiendo del trabajador que hayamos escogido sacar esa información. 225 00:12:55,950 --> 00:12:58,669 Así que vamos a hacer como antes, vamos a escribir los asteriscos, 226 00:12:59,529 --> 00:13:00,970 porque el ejercicio lo pide así. 227 00:13:02,190 --> 00:13:05,450 Bueno, perdón, disculpa, primero hay que escribir 228 00:13:05,450 --> 00:13:19,889 y de transacción, dejamos algo de espacio, 229 00:13:20,409 --> 00:13:32,149 la fecha, la forma y cantidad de pago. 230 00:13:32,149 --> 00:13:44,879 cerramos, repetimos los dos asteriscos 231 00:13:44,879 --> 00:13:48,299 voy a copiar directamente la línea 232 00:13:48,299 --> 00:13:57,620 vale, lo siguiente que tendremos que hacer 233 00:13:57,620 --> 00:14:01,639 es encargarnos de crear la fórmula para total 234 00:14:01,639 --> 00:14:06,179 la crearemos mediante un loop 235 00:14:06,179 --> 00:14:10,019 con for, esto se escribe de la siguiente manera 236 00:14:10,019 --> 00:14:14,019 escribimos for, esta es la manera en la que recorremos el cursor 237 00:14:14,019 --> 00:14:15,360 que hemos creado anteriormente 238 00:14:15,360 --> 00:14:17,179 con la información que hemos seleccionado 239 00:14:17,179 --> 00:14:19,440 y hacemos un loop 240 00:14:19,440 --> 00:14:20,919 para que se repita una y otra vez 241 00:14:20,919 --> 00:14:23,779 vamos a poner la letra I 242 00:14:23,779 --> 00:14:26,059 dado ese nombre 243 00:14:26,059 --> 00:14:27,820 IN 244 00:14:27,820 --> 00:14:29,779 haciendo referencia 245 00:14:29,779 --> 00:14:30,740 a C pagos 246 00:14:30,740 --> 00:14:33,320 es decir, que queremos recorrer 247 00:14:33,320 --> 00:14:35,179 el cursor C pagos 248 00:14:35,179 --> 00:14:39,860 y loop 249 00:14:39,860 --> 00:14:41,500 nos queda un loop 250 00:14:41,500 --> 00:14:45,059 ahora escribimos la fórmula del total 251 00:14:45,059 --> 00:14:49,210 la cual es 252 00:14:49,210 --> 00:14:54,429 total 253 00:14:54,429 --> 00:15:01,860 más la cantidad 254 00:15:01,860 --> 00:15:05,120 escribimos y porque es así como lo hemos nombrado 255 00:15:05,120 --> 00:15:06,799 más la cantidad 256 00:15:06,799 --> 00:15:12,960 entonces nuestro loop hará esta fórmula una y otra vez 257 00:15:12,960 --> 00:15:16,419 y ahora escribimos como queremos 258 00:15:16,419 --> 00:15:19,820 que se represente en el resultado 259 00:15:19,820 --> 00:15:23,740 y lo queremos que se vea, entonces lo escribimos con un dbms 260 00:15:23,740 --> 00:15:29,769 esto irá debajo de esto 261 00:15:29,769 --> 00:15:32,289 separado por los asteriscos 262 00:15:32,289 --> 00:15:36,210 haciendo unas columnas en las que saldrá y detrás acción el nombre 263 00:15:36,210 --> 00:15:40,090 y luego escribiremos prácticamente lo mismo 264 00:15:40,090 --> 00:15:43,990 pero de forma variable, o sea que es una variable 265 00:15:43,990 --> 00:15:47,990 es decir, aquí lo tenemos que nombrar como 266 00:15:47,990 --> 00:15:51,629 en las columnas, en este caso 267 00:15:51,629 --> 00:15:56,190 idTransaction se escribiría i.idTransaction 268 00:15:56,190 --> 00:16:02,450 las barritas que indican que es una variable 269 00:16:02,450 --> 00:16:10,110 aquí, fecha sería en este caso 270 00:16:10,110 --> 00:16:12,590 fecha de apago 271 00:16:12,590 --> 00:16:16,549 un momento, me estoy liando con el orden de las 272 00:16:16,549 --> 00:16:21,490 vale, me faltaba, aquí habría que poner una comilla 273 00:16:21,490 --> 00:16:26,919 y punto 274 00:16:26,919 --> 00:16:30,679 faltan aquí 275 00:16:30,679 --> 00:16:32,879 faltan unas comillas 276 00:16:32,879 --> 00:16:33,940 y las barritas 277 00:16:33,940 --> 00:16:36,500 y punto 278 00:16:36,500 --> 00:16:38,240 fecha pago 279 00:16:38,240 --> 00:16:40,700 que es así como está escrito 280 00:16:40,700 --> 00:16:41,720 en nuestra tabla 281 00:16:41,720 --> 00:16:44,000 y fecha pago 282 00:16:44,000 --> 00:16:46,740 cerramos las cosas estas 283 00:16:46,740 --> 00:16:48,120 otra comilla 284 00:16:48,120 --> 00:16:50,559 comilla 285 00:16:50,559 --> 00:16:51,019 aquí 286 00:16:51,019 --> 00:16:54,700 y hacemos lo mismo para la información 287 00:16:54,700 --> 00:16:56,240 de pago y la cantidad 288 00:16:56,240 --> 00:16:58,299 Dejamos un espacio 289 00:16:58,299 --> 00:17:01,190 Y 290 00:17:01,190 --> 00:17:03,970 Dejamos las nuevas barritas 291 00:17:03,970 --> 00:17:05,549 Y punto 292 00:17:05,549 --> 00:17:07,549 Forma pago 293 00:17:07,549 --> 00:17:11,920 Cerramos las barras 294 00:17:11,920 --> 00:17:19,740 Voy a borrar esto 295 00:17:19,740 --> 00:17:21,140 De aquí 296 00:17:21,140 --> 00:17:23,619 Vale, y ya solo nos falta 297 00:17:23,619 --> 00:17:27,740 La cantidad 298 00:17:27,740 --> 00:17:29,539 Sería y 299 00:17:29,539 --> 00:17:33,279 Y punto cantidad 300 00:17:33,279 --> 00:17:40,480 Y cerramos el paréntesis 301 00:17:40,480 --> 00:17:42,039 Muy bien 302 00:17:42,039 --> 00:17:42,779 Pues ya estaría. 303 00:17:43,220 --> 00:17:48,000 Lo siguiente que debemos hacer es finalizar el loop, ya que lo hemos acabado. 304 00:17:48,940 --> 00:17:49,220 Ups. 305 00:17:54,019 --> 00:17:54,660 Enter loop. 306 00:17:56,970 --> 00:17:58,650 Ponemos las comillas. 307 00:17:59,849 --> 00:18:04,650 Lo siguiente que nos pide el ejercicio, si vemos el resultado que nos pone en el libro, 308 00:18:05,470 --> 00:18:11,410 es que escribamos otra línea separatoria de asteriscos. 309 00:18:11,549 --> 00:18:14,509 Así que copiamos y pegamos. 310 00:18:14,509 --> 00:18:18,519 Lo siguiente que tendremos que hacer 311 00:18:18,519 --> 00:18:20,279 Es escribir el total 312 00:18:20,279 --> 00:18:22,079 O sea que nos aparezca 313 00:18:22,079 --> 00:18:24,420 En el resultado del output 314 00:18:24,420 --> 00:18:26,880 Nos aparezca el total 315 00:18:26,880 --> 00:18:27,559 Escrito 316 00:18:27,559 --> 00:18:30,559 ¿Cómo hacemos esto? Pues con un DMS 317 00:18:30,559 --> 00:18:32,059 Exactamente igual 318 00:18:32,059 --> 00:18:34,240 Copiamos hasta aquí 319 00:18:34,240 --> 00:18:36,900 Pegamos 320 00:18:36,900 --> 00:18:38,660 ¿Y qué queremos que aparezca? 321 00:18:38,920 --> 00:18:40,279 O sea, lo que queremos que aparezca 322 00:18:40,279 --> 00:18:41,859 Por lo esquimos, por ejemplo 323 00:18:41,859 --> 00:18:42,359 Total 324 00:18:42,359 --> 00:18:46,839 Total de pagos efectuados 325 00:18:46,839 --> 00:18:52,630 esto va a salir siempre así 326 00:18:52,630 --> 00:18:53,809 no va a variar 327 00:18:53,809 --> 00:18:56,029 dos puntos 328 00:18:56,029 --> 00:18:58,970 y queremos que aparezca la variable 329 00:18:58,970 --> 00:19:00,849 de total, o sea que volvemos a escribir 330 00:19:00,849 --> 00:19:02,069 las barritas 331 00:19:02,069 --> 00:19:04,630 y escribimos la variable total 332 00:19:04,630 --> 00:19:06,950 la cual cambia 333 00:19:06,950 --> 00:19:08,230 dependiendo del empleado 334 00:19:08,230 --> 00:19:10,690 vale 335 00:19:10,690 --> 00:19:12,910 el grueso 336 00:19:12,910 --> 00:19:15,230 del procedimiento ya está ya creado 337 00:19:15,230 --> 00:19:16,950 y lo siguiente 338 00:19:16,950 --> 00:19:18,549 que vamos a crear es 339 00:19:18,549 --> 00:19:21,470 las excepciones 340 00:19:21,470 --> 00:19:22,730 que el ejercicio nos pide 341 00:19:22,730 --> 00:19:24,490 que creemos excepciones 342 00:19:24,490 --> 00:19:27,490 entonces excepciones sirven para cuando haya un error 343 00:19:27,490 --> 00:19:29,470 nos salga un mensaje 344 00:19:29,470 --> 00:19:31,009 en este caso que nos indique 345 00:19:31,009 --> 00:19:33,430 el SQL código 346 00:19:33,430 --> 00:19:34,589 del error 347 00:19:34,589 --> 00:19:37,309 y el SQL ERM 348 00:19:37,309 --> 00:19:39,150 esto como se hace 349 00:19:39,150 --> 00:19:41,309 la sintaxis de un error 350 00:19:41,309 --> 00:19:42,109 o sea de una excepción 351 00:19:42,109 --> 00:19:44,170 es escribir exception 352 00:19:44,170 --> 00:19:49,900 creo que he puesto algo mal 353 00:19:49,900 --> 00:19:51,880 Oh, puede que haya borrado 354 00:19:51,880 --> 00:19:54,099 Excepción 355 00:19:54,099 --> 00:19:56,299 No sé si he escrito algo mal 356 00:19:56,299 --> 00:19:56,779 Bueno 357 00:19:56,779 --> 00:19:59,819 Escribimos excepción 358 00:19:59,819 --> 00:20:01,599 When 359 00:20:01,599 --> 00:20:04,720 Es decir, que ahora una excepción 360 00:20:04,720 --> 00:20:05,619 Joder, otra es igual 361 00:20:05,619 --> 00:20:10,849 Excepción 362 00:20:10,849 --> 00:20:12,069 When 363 00:20:12,069 --> 00:20:18,920 When 364 00:20:18,920 --> 00:20:21,059 Others 365 00:20:21,059 --> 00:20:28,579 Then 366 00:20:28,579 --> 00:20:33,440 Y aquí empezamos a escribir 367 00:20:33,440 --> 00:20:36,680 lo que queremos que aparezca en nuestra excepción 368 00:20:36,680 --> 00:20:40,230 otro 369 00:20:40,230 --> 00:20:41,410 escribimos un dms 370 00:20:41,410 --> 00:20:43,670 porque queremos que aparezca en pantalla 371 00:20:43,670 --> 00:20:46,250 cuando ejecutemos 372 00:20:46,250 --> 00:20:49,960 código de error 373 00:20:49,960 --> 00:20:52,119 número, vamos a escribir porque esto va a ser lo que 374 00:20:52,119 --> 00:20:54,299 nos salga si o si 375 00:20:54,299 --> 00:20:55,500 cuando hay un error 376 00:20:55,500 --> 00:20:57,980 error 377 00:20:57,980 --> 00:20:59,819 número y ahora 378 00:20:59,819 --> 00:21:01,099 escribimos 379 00:21:01,099 --> 00:21:04,420 la variable que cambiará 380 00:21:04,420 --> 00:21:05,839 dependiendo del error 381 00:21:05,839 --> 00:21:06,920 que nos aparezca 382 00:21:06,920 --> 00:21:08,920 que en este caso será 383 00:21:08,920 --> 00:21:10,920 SQL 384 00:21:10,920 --> 00:21:12,920 ups 385 00:21:12,920 --> 00:21:24,170 estas barras me sobran 386 00:21:24,170 --> 00:21:30,099 y aquí este paréntesis 387 00:21:30,099 --> 00:21:32,099 está bien sobrado 388 00:21:32,099 --> 00:21:34,099 vale, ahora sí 389 00:21:34,099 --> 00:21:36,099 entonces, haz punto y coma 390 00:21:38,099 --> 00:21:40,099 y ahora escribimos 391 00:21:40,099 --> 00:21:42,099 otro DMS 392 00:21:42,099 --> 00:21:44,099 en el que ponga 393 00:21:44,099 --> 00:21:46,099 el SQL 394 00:21:46,099 --> 00:21:54,470 ERM 395 00:21:54,470 --> 00:22:01,349 creo que lo he escrito bien, vale, lo siguiente y para finalizar, bueno, el procedimiento 396 00:22:01,349 --> 00:22:12,220 ya está acabado, con esto terminamos el procedimiento, escribimos ahora un end, como símbolo de 397 00:22:12,220 --> 00:22:18,099 que hemos acabado el procedimiento, que ya estaría escrito, para hacer un resumen, básicamente 398 00:22:18,099 --> 00:22:22,700 aquí hemos declarado nuestra variable, a partir de aquí empezamos a crear el procedimiento 399 00:22:22,700 --> 00:22:28,220 el cual hemos llamado muestra de pagos, donde creamos una tabla llamada any cliente, que 400 00:22:28,220 --> 00:22:32,220 contiene la información de la tabla cliente, específicamente de la columna 401 00:22:32,220 --> 00:22:35,180 código cliente. Luego hemos creado un cursor 402 00:22:35,180 --> 00:22:39,599 que he llamado cPagos, al que le hemos seleccionado la información 403 00:22:39,599 --> 00:22:43,700 de la tabla pagos, donde el código de cliente 404 00:22:43,700 --> 00:22:48,039 sea igual a la tabla nCliente. Luego hemos creado la tabla 405 00:22:48,039 --> 00:22:52,059 rCliente, con toda la información que contiene la tabla clientes 406 00:22:52,059 --> 00:22:56,099 y un segundo 407 00:22:56,099 --> 00:22:57,680 es clientes o cliente 408 00:22:57,680 --> 00:22:58,920 ahora que estoy pensando 409 00:22:58,920 --> 00:23:00,500 es cliente, sí 410 00:23:00,500 --> 00:23:02,660 vale 411 00:23:02,660 --> 00:23:06,160 un segundo porque puede que haya 412 00:23:06,160 --> 00:23:06,700 equivocado 413 00:23:06,700 --> 00:23:10,019 sí, ya ve, ya sabe aquí, cuando he leído esto 414 00:23:10,019 --> 00:23:12,319 es aquí clientes 415 00:23:12,319 --> 00:23:13,980 y aquí esto no es unis, es 416 00:23:13,980 --> 00:23:14,400 in 417 00:23:14,400 --> 00:23:17,700 vale, ahora sí está bien 418 00:23:17,700 --> 00:23:20,359 bueno, lo que iba diciendo 419 00:23:20,359 --> 00:23:22,259 hemos creado 420 00:23:22,259 --> 00:23:23,500 la tabla R cliente 421 00:23:23,500 --> 00:23:25,059 y la tabla total 422 00:23:25,059 --> 00:23:29,119 luego hemos empezado con un begin 423 00:23:29,119 --> 00:23:33,359 donde hemos seleccionado para introducir información en la R clientes 424 00:23:33,359 --> 00:23:35,920 la información que contiene la tabla clientes 425 00:23:35,920 --> 00:23:40,079 donde el código del cliente es igual a N cliente 426 00:23:40,079 --> 00:23:44,519 luego hemos escrito varios DBMs para que nos aparezca 427 00:23:44,519 --> 00:23:48,200 algo escrito en el resultado final, lo que nos pide el enunciado 428 00:23:48,200 --> 00:23:51,960 que es el código del cliente, como está dentro 429 00:23:51,960 --> 00:23:55,839 de la tabla N clientes, escribimos aquí el N cliente que es la variable 430 00:23:55,839 --> 00:24:00,380 nombre del cliente, ciudad del cliente, país del cliente 431 00:24:00,380 --> 00:24:02,759 esto es puramente del enunciado 432 00:24:02,759 --> 00:24:07,859 aquí escribimos el ID de transacción 433 00:24:07,859 --> 00:24:11,259 fecha, forma y cantidad que es la información que saldrá 434 00:24:11,259 --> 00:24:15,900 justamente debajo lo que hemos escrito aquí para que aparezca 435 00:24:15,900 --> 00:24:20,099 de seguido abajo, estos son variables que cambiarán dependiendo del cliente 436 00:24:20,099 --> 00:24:24,359 y el ID de transacción, la fecha de pago, forma pago y cantidad propia de cada uno 437 00:24:24,359 --> 00:24:28,299 antes de eso hemos creado un loop para calcular el total 438 00:24:28,299 --> 00:24:30,619 mediante la suma del total y la cantidad 439 00:24:30,619 --> 00:24:34,720 hemos traído el loop, esto es puramente el enunciado 440 00:24:34,720 --> 00:24:41,119 y hemos escrito un último dbms para que aparezca el total de pagos efectuados 441 00:24:41,119 --> 00:24:43,140 aquí está la variable 442 00:24:43,140 --> 00:24:49,400 luego hemos creado la excepción con estas características 443 00:24:49,400 --> 00:25:23,980 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. 444 00:25:23,980 --> 00:25:25,960 en este caso yo voy a poner introduce 445 00:25:25,960 --> 00:25:28,039 como ponía en el ejemplo 446 00:25:28,039 --> 00:25:28,940 introduce tu código 447 00:25:28,940 --> 00:25:40,210 y ejecutamos 448 00:25:40,210 --> 00:25:42,589 aprovechando el begin 449 00:25:42,589 --> 00:25:44,170 ejecutamos el procedure 450 00:25:44,170 --> 00:25:46,630 una vez, es decir, una vez 451 00:25:46,630 --> 00:25:47,849 que hayamos escrito 452 00:25:47,849 --> 00:25:49,250 un código 453 00:25:49,250 --> 00:25:52,690 se ejecutará el procedimiento 454 00:25:52,690 --> 00:25:53,809 la muestra 455 00:25:53,809 --> 00:25:56,509 de pagos 456 00:25:56,509 --> 00:26:00,130 dos puntos 457 00:26:00,130 --> 00:26:02,529 y abrimos paréntesis haciendo referencia 458 00:26:02,529 --> 00:26:03,309 al código 459 00:26:03,309 --> 00:26:08,609 clientes 460 00:26:08,609 --> 00:26:16,170 y terminamos con clientes 461 00:26:16,170 --> 00:26:18,109 y así estaría acabado el ejercicio 462 00:26:18,109 --> 00:26:19,269 puede que haya cometido un error 463 00:26:19,269 --> 00:26:22,029 al estar hablando y escribiendo, vamos a comprobarlo 464 00:26:22,029 --> 00:26:23,329 vamos a poner un 1 465 00:26:23,329 --> 00:26:25,750 si, como suponía 466 00:26:25,750 --> 00:26:27,069 cometí un error, pero 467 00:26:27,069 --> 00:26:29,109 previniendo este problema 468 00:26:29,109 --> 00:26:32,309 hice el ejercicio con anterioridad 469 00:26:32,309 --> 00:26:33,049 aquí está 470 00:26:33,049 --> 00:26:36,109 aquí es, es el mismo ejercicio 471 00:26:36,109 --> 00:26:38,130 si da cuenta 472 00:26:38,130 --> 00:26:40,109 aquí el excepción está en verde 473 00:26:40,109 --> 00:27:05,470 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, 474 00:27:05,470 --> 00:27:21,890 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. 475 00:27:21,890 --> 00:27:25,609 le pedí a un compañero, le he pasado mi código 476 00:27:25,609 --> 00:27:29,309 para que él lo introdujera en su programa 477 00:27:29,309 --> 00:27:33,069 y saliera el resultado de forma correcta 478 00:27:33,069 --> 00:27:35,150 que esto es la parte que me falta 479 00:27:35,150 --> 00:27:36,410 esta de aquí 480 00:27:36,410 --> 00:27:40,829 porque es información que contiene la tabla pagos 481 00:27:40,829 --> 00:27:43,369 pero yo no puedo meter esos valores 482 00:27:43,369 --> 00:27:46,990 y bueno, es así, básicamente esta es mi explicación 483 00:27:46,990 --> 00:27:50,230 que le veo a este ejercicio 484 00:27:50,230 --> 00:27:52,589 Así que gracias y un saludo