1
00:00:00,800 --> 00:00:04,400
Ya hemos aprendido a unir tablas con GPT.

2
00:00:04,460 --> 00:00:08,210
Ahora vamos a ver dos cosas importantes.

3
00:00:08,210 --> 00:00:15,260
Una de ellas, la que vamos a tratar en este vídeo, es la consulta utilizando UPDATE, que en este

4
00:00:15,260 --> 00:00:21,710
caso, pues este comando se va a usar para actualizar en este caso registros que ya están cargados en

5
00:00:21,710 --> 00:00:23,840
nuestra tabla.

6
00:00:23,840 --> 00:00:29,960
Entonces nosotros lo que podríamos tener en cuenta acá no sé, digamos que nos hemos confundido en algo

7
00:00:30,260 --> 00:00:34,970
y Natalia García en realidad está en ciencias.

8
00:00:35,240 --> 00:00:36,530
Vamos a decirle eso.

9
00:00:41,270 --> 00:00:41,990
Natalia.

10
00:00:44,300 --> 00:00:49,640
García en realidad está en el curso.

11
00:00:52,430 --> 00:00:57,380
De ciencias y no en el de inglés.

12
00:01:00,800 --> 00:01:04,130
Cómo puedo corregir este detalle?

13
00:01:05,060 --> 00:01:06,110
Y vamos a ver qué nos dice.

14
00:01:08,430 --> 00:01:17,400
Entonces nos dice si necesitas corregir un curso, el curso al que está inscrita Natalia García en la

15
00:01:17,400 --> 00:01:22,380
tabla Estudiantes, puedes hacerlo mediante la instrucción SQL Update.

16
00:01:22,410 --> 00:01:25,680
Aquí tienes un ejemplo de cómo puedes actualizar el curso.

17
00:01:25,890 --> 00:01:33,660
Y notemos que acá nos está haciendo hacer una actualización donde en la actualización está usando un

18
00:01:33,660 --> 00:01:34,680
subquery.

19
00:01:35,280 --> 00:01:46,920
Noten que estamos haciendo un update a estudiantes donde el curso ID se obtiene haciendo un select a

20
00:01:46,920 --> 00:01:50,700
la tabla Cursos para consultar el ID del curso.

21
00:01:50,790 --> 00:01:51,540
Por qué?

22
00:01:51,570 --> 00:01:58,440
Porque en principio yo lo que le estoy preguntando es lo siguiente Le estoy preguntando que Natalia

23
00:01:58,440 --> 00:02:03,290
García la tengo inscrita en este caso en inglés, pero debe estar en ciencias.

24
00:02:03,300 --> 00:02:04,670
Ahora, qué ocurre?

25
00:02:04,680 --> 00:02:09,030
Que si yo estoy en mi tabla estudiantes, voy a hacer acá la consulta.

26
00:02:09,660 --> 00:02:17,810
Los cursos acá son los IDS, es decir, yo para actualizar acá a Natalia García, yo tendría que actualizarle

27
00:02:17,820 --> 00:02:21,600
el ID del curso para que haga match con el curso correspondiente.

28
00:02:21,780 --> 00:02:30,780
Por eso es que acá lo que me está sugiriendo es hacer esta consulta de modo tal que obtengamos el ID

29
00:02:30,780 --> 00:02:37,050
y vamos a copiar primero la parte que está acá interna, y vamos a copiar solamente esta parte de acá

30
00:02:37,200 --> 00:02:38,760
para ver qué es lo que se obtiene.

31
00:02:38,790 --> 00:02:44,070
Voy a darle un control C para que noten esa parte y voy a darle acá un control.

32
00:02:44,910 --> 00:02:45,270
V.

33
00:02:45,360 --> 00:02:51,330
Entonces, si hago eso y le doy a con punto y coma y luego ejecuto la línea, lo que puedo ver es que

34
00:02:51,330 --> 00:02:58,170
obtengo el tres, es decir, esta consulta que está aquí, esta que está acá entre el paréntesis, lo

35
00:02:58,170 --> 00:03:05,910
que me está obteniendo es el número tres, es decir, voy a setear en este caso curso id igual a tres.

36
00:03:06,300 --> 00:03:06,780
Por qué?

37
00:03:06,780 --> 00:03:12,100
Porque estoy obteniendo el ID del curso que tiene por nombre Ciencias.

38
00:03:12,120 --> 00:03:20,460
De esa manera lo que hago es que cuando hago el update en curso ID coloco tres y Natalia García, entonces

39
00:03:20,460 --> 00:03:24,710
en curso ID tendría tres, que es el ID que corresponde a Ciencias.

40
00:03:24,720 --> 00:03:30,300
Si espero que me haya hecho entender acá porque quería ser bastante claro en esa parte.

41
00:03:30,510 --> 00:03:36,750
Bueno, de hecho si nosotros queremos ver lo mismo que les he explicado acá, ya lo amplía un poco más.

42
00:03:36,750 --> 00:03:39,690
Entonces vamos a colocar acá lo siguiente.

43
00:03:40,230 --> 00:03:43,620
Primero voy a colocar esto acá.

44
00:03:46,200 --> 00:03:48,000
Pero para eso, primero vamos a hacer algo.

45
00:03:48,630 --> 00:03:52,110
Voy a pegar esto y voy a consultar solamente a Natalia García.

46
00:03:52,110 --> 00:04:02,820
Entonces voy a hacer, digamos, acá como ya sé hacer eso, voy a colocar acá un select asterisco.

47
00:04:11,960 --> 00:04:20,360
From Estudiantes y voy a ejecutar esto acá de esta manera, pues estoy obteniendo a Natalia García y

48
00:04:20,360 --> 00:04:29,480
veo que el curso ID es el cuatro y si yo me fijo acá en los cursos veo que ese curso cuatro es inglés.

49
00:04:29,480 --> 00:04:36,800
Efectivamente, entonces lo que voy a hacer ahora es lo que me sugirió Chatgpt es utilizar este query

50
00:04:36,800 --> 00:04:42,050
de modo tal de que yo voy a ejecutar este query.

51
00:04:44,370 --> 00:04:46,530
Y vamos a ver qué obtenido.

52
00:04:46,540 --> 00:04:48,240
Vamos a ver acá me está dando un.

53
00:04:49,620 --> 00:04:51,900
Pequeño error.

54
00:04:55,580 --> 00:05:00,920
En este caso nos está diciendo que acá tenemos un error.

55
00:05:03,110 --> 00:05:12,890
Entonces lo que vamos a hacer es copiar la fila del error y vamos a decirle que nos ayude.

56
00:05:13,880 --> 00:05:16,610
Hola, tengo un problema.

57
00:05:18,950 --> 00:05:20,360
Me salió.

58
00:05:22,670 --> 00:05:27,170
El siguiente error y.

59
00:05:28,270 --> 00:05:30,640
Le envió eso y vamos a ver qué me dice.

60
00:05:31,600 --> 00:05:33,190
El error que estás viendo.

61
00:05:34,950 --> 00:05:41,850
Para resolver este problema debemos desactivar el Safe update mode en MySQL.

62
00:05:42,030 --> 00:05:47,610
Entonces acá lo que tenemos que hacer nos dice que pues que vayamos a la pestaña Editar.

63
00:05:47,610 --> 00:05:53,340
En el menú superior seleccionamos Preferencias, buscamos la sección SQL Editor.

64
00:05:53,700 --> 00:06:01,110
Dentro de la sección buscamos la opción Safe Update o Actualizar o Actualizaciones seguras.

65
00:06:01,320 --> 00:06:05,610
Desmarca y luego guarda cambios.

66
00:06:07,210 --> 00:06:10,810
Entonces pues vamos a hacer lo que nos dijo.

67
00:06:10,810 --> 00:06:20,650
No vamos acá a nuestro editor, vamos a editar a Edit, vamos a Preferencias, a que se abre esto y

68
00:06:20,650 --> 00:06:29,260
luego buscamos SQL Editor y acá abajo vemos que está esto Safe updates, le damos acá, le damos OK

69
00:06:30,070 --> 00:06:32,290
y luego vamos a probar otra vez a ver qué pasa.

70
00:06:34,030 --> 00:06:41,200
Ejecutamos esto y vemos que otra vez nos da este error.

71
00:06:41,740 --> 00:06:43,090
Vamos a.

72
00:06:45,110 --> 00:06:50,240
Copiar y vamos a pegar otra vez.

73
00:06:50,870 --> 00:06:51,890
Ya hice eso.

74
00:06:54,350 --> 00:06:54,860
Pero.

75
00:06:56,930 --> 00:07:00,320
Obtengo lo siguiente.

76
00:07:02,790 --> 00:07:06,510
Y acá lo que nos dice es que.

77
00:07:09,180 --> 00:07:20,010
No que demoro un poquito más en en pensar y entonces nos está diciendo que en este caso podemos copiar

78
00:07:20,010 --> 00:07:23,190
este código y vamos a.

79
00:07:24,760 --> 00:07:26,080
Sustituirlo por este.

80
00:07:26,500 --> 00:07:28,780
Y ahora vamos a analizar qué significa ese código.

81
00:07:29,230 --> 00:07:32,260
Entonces ejecutamos y vemos que se actualizó.

82
00:07:34,050 --> 00:07:34,880
Perfecto.

83
00:07:34,890 --> 00:07:41,340
Si yo hago acá la consulta, veo que ahora ya es el ID tres, que es el que corresponde al curso que

84
00:07:41,340 --> 00:07:41,790
yo quería.

85
00:07:41,790 --> 00:07:43,500
Entonces vamos a ver qué fue lo que ha pasado.

86
00:07:43,770 --> 00:07:48,900
Entonces acá lo que nos está diciendo es que este error en específico se refiere a una medida de seguridad

87
00:07:48,900 --> 00:07:53,550
de MySQL que evita actualizaciones peligrosas en tablas sin una cláusula WHERE.

88
00:07:54,330 --> 00:07:55,980
Entonces, esto por qué es?

89
00:07:55,980 --> 00:07:58,710
Porque básicamente estamos usando un sub query para hacer esto.

90
00:07:58,710 --> 00:08:06,630
Entonces acá nos dice que si es desactivado el Safe Update Mode y aún se presenta este error, es posible

91
00:08:06,630 --> 00:08:10,650
que necesites agregar una cláusula LIMIT a tu consulta de actualización.

92
00:08:10,650 --> 00:08:18,480
Esto garantiza que no actualices todas las filas de la tabla y con eso ya se corrigió el error y aprendimos

93
00:08:18,480 --> 00:08:19,320
a actualizar.

94
00:08:19,320 --> 00:08:25,500
Y no solamente aprendimos a actualizar datos, sino también aprendimos a identificar errores.

95
00:08:26,700 --> 00:08:33,050
En el query que nosotros ejecutemos y a solucionarlos utilizando chatgpt.
