Creating the Twitter Database with MySQL

Поделиться
HTML-код
  • Опубликовано: 1 июл 2024
  • Discover how to create the Twitter DATABASE from scratch with MySQL 🐦 in this step-by-step tutorial. Learn to structure tables, define relationships, and optimize queries to efficiently manage information on one of the most popular social networks. Dive into the fascinating world of data management! 😼
    This is a summary of a livestream that took place on Twitch.
    🌐 Threads: www.threads.net/@midu.dev
    🌟 Community Discord: / discord
    🎥 Follow me on Twitch for more livestreams: / midudev
    list=PLUofhDIg_38q4D0xNWp7FEHOTcZhjWJ29
    🎞 Instagram: / midu.dev
    🐦 Twitter: / midudev
    🔴 TikTok: / midudev
    Video timestamps:
    0:00 Intro
    1:11 Installing MySql on Windows
    1:40 Installing MySql on MacOS
    3:06 Let's get started
    3:13 Explaining the MySql WB UI
    5:15 Creating the Twitter Database
    6:16 Keyboard shortcut
    6:32 Using the Twitter Database
    7:00 Users Table
    12:09 Primary Key
    14:20 Inserting Information into the Users Table
    17:26 Comments in MySql
    17:34 Inserting multiple data into Tables
    18:52 Drop Database
    20:51 Followers Table
    25:29 Foreign Key
    27:24 Inserting Information into the Followers Table
    28:31 Applying constraints
    31:16 Creating simple queries
    33:55 Creating JOIN queries
    36:32 Tweets Table
    38:25 Inserting Information into the Tweets Table
    39:16 Making block comments
    41:28 How to make Subqueries
    43:18 GROUP AND HAVING
    46:55 DELETE queries
    49:31 UPDATE queries
    52:11 Twitter Likes Table
    56:15 Obtaining the number of Likes for each Tweet
    57:28 Triggers
    #twitter #backend
  • НаукаНаука

Комментарии • 124

  • @user-zw8fp1hd2d
    @user-zw8fp1hd2d 11 месяцев назад +32

    acabas de resumir un año entero de grado superior DAM bbdd en enseñanza publica

  • @camilonore3256
    @camilonore3256 Год назад +42

    Eres el mejor midu, y lo de tu editor es lo máximo, tener los videos super rápido luego de que los transmites es increíble. Solo me queda agradecerte por lo que haces

  • @OtakuPentecostal
    @OtakuPentecostal Год назад +9

    enserio, este hombre merece una condecoración, gracias Midu... desde que te veo me he logrado superar.

  • @FranciscoJavierRincon
    @FranciscoJavierRincon Год назад +61

    El mejor creador de contenido de programación en español y que hace grandes aportes en la comunidad. ❤❤❤

    • @midulive
      @midulive  Год назад +8

      Qué bonito eres ❤️

    • @kevyyar
      @kevyyar Год назад +2

      @@midulive es la mera neta como decimos en Mexico. Realmente un crack Midu!

  • @xlukii_
    @xlukii_ Год назад

    Saludos Midu, excelente vídeo. Muy completo y sencillo de entender!

  • @wildsniper8896
    @wildsniper8896 5 месяцев назад +4

    Hay un fallo al final en el WHERE user_id = NEW.following_id para hacer el decrease_follower_count tiene que ser OLD.following_id. Se te escapó seguro! Despues de 2 horas buscando por qué no funcionaba encotré ese error. Por lo demas MUCHISIMAS GRACIAS MIDU, he aprendido MySQL en 1h... y eso no tiene precio. Te AMO :)

  • @LauraGomezGomez-zm3ni
    @LauraGomezGomez-zm3ni Месяц назад +2

    Gracias por este magnífico vídeo en el que explicas la creación de esta base de datos, estaba muy frustrada y cabreada con Workbench pero he seguido los pasos tuyos y por fin he salido de mi atasco! Gracias por le trabajo que haces! Saludos desde España, Sevilla!

    • @midulive
      @midulive  Месяц назад

      Me alegro mucho que te haya servido, Laura! :)

  • @RamiroAsincrono
    @RamiroAsincrono 5 месяцев назад +2

    Muchas gracias por este increíble video! 🎉

  • @FVigo00
    @FVigo00 10 месяцев назад +8

    Pensaba que yo esto ya lo sabía y he aprendido un par de cosas. Qué gusto es escuchar una explicación tan bien hecha.

    • @midulive
      @midulive  10 месяцев назад +3

      Siempre se aprende algo!

  • @codesthenos
    @codesthenos 5 дней назад

    18:45 segun alguna discusion de stackoverflow, y segun chat gpt, es una buena practica poner el NOT NULL aunque al hacer esa columna primary key ya sea NOT NULL de forma implicita. Como curiosidad

  • @withardoriginal8250
    @withardoriginal8250 8 месяцев назад

    que curioso porque hace un tiempo hice un proyecto de red social de fin de curso de 1º DAM y la base de datos que diseñe es parecida (pero un poco mas compleja) que la de este video. Me alegra saberlo porque me hace confirmarme que hice un buen trabajo de diseño en ese proyecto

  • @tomas6909
    @tomas6909 5 месяцев назад +1

    Midu, te amo. No me voy a cansar de decirtelo

  • @genaroibc
    @genaroibc Год назад

    Grande Midu! ❤

  • @maximiliano7648
    @maximiliano7648 Месяц назад

    Gracias brother!!!

  • @sobrehombre9338
    @sobrehombre9338 5 дней назад

    Gracias Midu!

  • @gastonartazayanez3730
    @gastonartazayanez3730 Год назад

    Muy buen proyecto.
    Gracias Midu!!

  • @FranciscoMartinez-mc8wq
    @FranciscoMartinez-mc8wq 11 месяцев назад

    Gracias por tus videos amigo.

  • @soomnii
    @soomnii 3 месяца назад

    gracias a tus vídeos me he animado a aprender más, ni si quiera me acordaba que me gustaba tanto esta materia JDJSS

  • @joeldelvicer1637
    @joeldelvicer1637 Год назад

    El midu hace un tutorial justo cuando me toca hacer una db, que buen servicio… ❤❤❤

  • @carlosgc93
    @carlosgc93 11 месяцев назад +2

    Aprendí más sobre base de datos en este vídeo, que en la universidad 😅

  • @pablocn7710
    @pablocn7710 10 месяцев назад

    Excelente video, claro conciso y al grano todo practico como me gusta pero estoy un poco verde y tengo una duda hasta ahora todo lo que he hecho con bases de datos lo he hecho con phpmyadmin y entraba a la base de datos a través de localhost conectándola con el típico archivo connection en php mi duda es para conectarme a la base de datos en workbench desde mi web en local se hace igual que con phpmyadmin o tiene otro método de conexión?

  • @SonGoku-pc7jl
    @SonGoku-pc7jl 11 месяцев назад

    estas echo un crack! :)

  • @samueleitorme
    @samueleitorme Год назад +4

    26:35 Así como dato, no es necesario poner le 'PRIMARY KEY' en la última posición, simplemente la última línea dentro de los paréntesis no debe tener coma.

    • @midulive
      @midulive  Год назад +6

      Sí, no me di cuenta de la coma, ya me extrañaba a mi. :D

  • @karasutv-lb1kx
    @karasutv-lb1kx Год назад +1

    Soy del año 2000 y aunque no tuve la oportunidad de utilizar un disquete, sé lo que es e incluso he tenido uno en mis manos. Creo que es conocimiento general.

  • @miguelvasquez9849
    @miguelvasquez9849 Год назад

    gran video, gracias.

  • @sebasbarrera9473
    @sebasbarrera9473 Месяц назад +1

    Hay algo que este joven no haga bien. Excelente enseñanza, y me re encantó DBngin, mucho más fácil que descargar el motor completo y ademas admite varias Bases de datos. Brutal

  • @learomero6785
    @learomero6785 5 месяцев назад +2

    Hola! disculpa que no se nada... 2:02 eso de crear un nuevo server de base de datos, en windows, (sin usar dbngin) cómo se hace?
    en 1:36 dices de descargar el workbench (eso lo hice) y por otro lado la base de datos, esa se consigue ahí en esa página o de dónde se pueden conseguir una?

  • @1989MRamos
    @1989MRamos 11 месяцев назад

    Muy claro todo. Gracias @midulive.

  • @AndresZzGtr
    @AndresZzGtr Год назад

    Muy buen video Midu, Gracias

  • @danielspark128
    @danielspark128 21 день назад

    te amoooooo

  • @pumaDev_latam
    @pumaDev_latam 11 месяцев назад +3

    Me encanto tu video, muchas gracias por el apoyo en el aprendizaje a ala comunidad, una consulta como configuras para el tema del editor de MySQL sea darktheme?

    • @owa2337
      @owa2337 11 месяцев назад +1

      Es nativo de Mac en Windows no se puede del todo

  • @joseholt5069
    @joseholt5069 Год назад +14

    Midu, TIMESTAMP únicamente hasta 09/01/2038 (que aún falta un montón), pero se podría utilizar DATETIME que no tiene límites.
    Me encantan tus videos, saludos desde Paraguay

    • @TheDanenco
      @TheDanenco 11 месяцев назад +3

      en sistemas de 32 bits solo existe esa limitacion*

  •  2 месяца назад

    Muy brutal perro,
    Esperamos parte II y III perro...

  • @Gorpax
    @Gorpax Год назад +1

    Una duda, porque en este tipo de aplicaciones se usar una base de datos relacional en vez de una no relacional? gracias de antemano

  • @DjGamertri
    @DjGamertri 10 месяцев назад

    Donde puedo subir mi base de datos mysql con foreing keys, planetscale no deja y no encuentro otro que tenga un hobby tier como el de planet scale

  • @victorgiovannibeltranrodri1047
    @victorgiovannibeltranrodri1047 11 месяцев назад

    No manches midu, me acordé de la escena de ratatuille dónde el crítico se acuerda de la comida de su mamá, me acordé cuando hacía las tablas en xamp y me guardaba los scripts porque tenía esa opcion y así los iba analizando así aprendí un poco sql

  • @mirtz5762
    @mirtz5762 2 месяца назад

    Hola! por que en el minuto 35:35 haces el JOIN con followers.following_id y no con followers.follower_id? ambas hacen referencia a user_id. Es porque following_id hace referencia a los ID´s y followers_id solo son los ID´s de seguimiento?

  • @jeanmigueluzcateguigonzale4078
    @jeanmigueluzcateguigonzale4078 10 месяцев назад

    Hola,, tendras un tutorial de ANGULAR con integracion con KEYCLOAK para manejos de accesos..? Gracias

  • @nolascomedina9545
    @nolascomedina9545 10 месяцев назад +1

    Hola midu! Muchas gracias por tu contenido! De casualidad tendrás tutoriales de php? Saludos!

    • @midulive
      @midulive  10 месяцев назад

      ¡No todavía! Igual más adelante.

  • @arielbiagio
    @arielbiagio 10 месяцев назад

    Hola midu, sabes que version de mysql funciona en macos monterrey, en la descarga dice que funciona la ultima, pero luego me dice que no es compatible!

  • @denissantiago5748
    @denissantiago5748 Год назад +1

    Interesante el video midu xfa puedes compartir el repositorio

  • @Dany-yz7lc
    @Dany-yz7lc 11 месяцев назад

    El puto amo

  • @Rapha_Carpio
    @Rapha_Carpio 10 месяцев назад

    30:31 esto significa que uno tiene que tener mucho cuidado como diseña la base de datos porque no es tan sencillo modificar las reglas una vez creada

  • @TheRaulero
    @TheRaulero 11 месяцев назад +1

    increible labor

    • @midulive
      @midulive  11 месяцев назад

      Gracias ☺️

  • @RoelLealA
    @RoelLealA 6 месяцев назад

    Hace falta parte 2

  • @germanandreszapatahinestro1346
    @germanandreszapatahinestro1346 11 месяцев назад +1

    eres un monstruo

  • @jhmesseroux
    @jhmesseroux Год назад +2

    great video MIDU
    como haces para tener la interface del workbench en modo dark ?

    • @alejandropujante3016
      @alejandropujante3016 11 месяцев назад +1

      Me preguntaba lo mismo y resulta que hay que cambiar un archivo de configuración del directorio donde está instalado MySQL Workbench, aún así no he conseguido dejarlo igual que Midu. ruclips.net/video/QS5t96BqEHg/видео.html&ab_channel=Programaci%C3%B3nF%C3%A1cil

    • @jhonathanalejandro0198
      @jhonathanalejandro0198 11 месяцев назад

      @@alejandropujante3016 exacto solo cambia el lugar donde se ejecutan las query sera que solo esta disponible para mac 🙃 o que el se pudo a configurar todo el archivo para que todo de modo dark (y no se si aun así es posible)

  • @lucasbertone9109
    @lucasbertone9109 Месяц назад +1

    gracias.

  • @DrPaulVazo
    @DrPaulVazo 6 месяцев назад

    Lo usare para mi clase de BD 🙂

  • @joelvazquez6529
    @joelvazquez6529 3 месяца назад

    Excelente video, he aprendido bastante con los dos videos de SQL. Trabajo de calidad @midu. Aprovechando el espacio, A alguien de la comunidad le pasa que al ejecutar el Query, Mysql se cierra inesperadamente ? tengo la versión 8.32 compatible con MAC OS Monterrey, todo el código se ejecuta correctamente pero, cuando realizo Select* from users; o con cualquier otra tabla del ejercicio el programa se cierra. Alguien lo ha solucionado?

  • @sebastianmelendez4369
    @sebastianmelendez4369 11 месяцев назад

    Midu, excelente video, cuando te avientas un aws?

  • @todounpoco1611
    @todounpoco1611 11 месяцев назад

    hola amigo te admiro mucho epsero ser como tu algun dia

  • @JOSEPH20M
    @JOSEPH20M 10 месяцев назад

    cuál es la diferencia entre un Trigger y un store procedure?

  • @oscarvelez8407
    @oscarvelez8407 Год назад

    Yo uso docker para instalar bases de datos -¿es mala práctica?-

  • @user-sc1nk1cf6m
    @user-sc1nk1cf6m 10 месяцев назад

    GRACIAS!!

    • @midulive
      @midulive  10 месяцев назад

      A la orden

  • @DAVIDIL81
    @DAVIDIL81 8 месяцев назад

    Disculpa, no entiendo muy bien si lo haces todo con WorkBench para que has usado BDngin? yo uso Windows y he hecho todo lo que tu has hecho solo con WorkBench...
    Me instalado TablePlus pero no aparece la base de datos que cree en WorkBench.... No consigo entender para que es necesario DBnging

  • @andresserna5899
    @andresserna5899 Год назад +3

    Midu yo queria ver como conectabas esta base a una pagina ficticia,¿lo podrias hacer en proximas ocasiones?

    • @midulive
      @midulive  Год назад +5

      Lo haremos en el curso de Node.js

  • @santiagofranco6597
    @santiagofranco6597 6 дней назад

    Cómo descargo MySQL para practicar, ya que intento acceder a la página oficial y esta caída. 😢 ayuda.

  • @CarlosFelipeRiveraG-tl2yf
    @CarlosFelipeRiveraG-tl2yf 11 месяцев назад

    midu, no es que tenga que ir abajo la primary key, sino que en la linea 36 tenias en la foreign key una coma al final, por eso te saltaba el error, 26:27

    • @midulive
      @midulive  11 месяцев назад

      Ya lo han comentado. Cosas del directo.

    • @CarlosFelipeRiveraG-tl2yf
      @CarlosFelipeRiveraG-tl2yf 11 месяцев назад

      @@midulive a caray, saludos 😁. Soy seguidor pero no puedo estar en tus directos, apoyo desde las sombras 😅

  • @Lenuxcs
    @Lenuxcs 11 месяцев назад +2

    Una consulta, como hizo midu para colocar dark mode al Mysql Workbench

    • @neidervalero1869
      @neidervalero1869 5 месяцев назад

      yo vi este video ruclips.net/video/QS5t96BqEHg/видео.html aunque solo cambia una parte

  • @PaulcraftIus
    @PaulcraftIus Год назад +1

    A Threads le gusta este video:

  • @Exivas
    @Exivas Год назад

    Soy del 2000 y mi país era tan atrasado qué la pc más accesible (ojo no barata) todavía usaba diskete y estoy hablando 2004-2006

  • @Miguel-uf9xf
    @Miguel-uf9xf 3 месяца назад

    El primary key no tiene que ir al final del todo, le daba error porque estaba poniendo una coma al final de la ultima fila

  • @El_ingeniero_
    @El_ingeniero_ 11 месяцев назад

    Eso me recordo..!, cuando elimine la base de datos de la escuela a la que estoy trabajando hahaha xd

  • @NakyXiter
    @NakyXiter Год назад

    Proximo Video: Creando la database de Facebook y hackeando la nasa :)
    Buen Video :D, Saludos

  • @Urbietus
    @Urbietus Год назад +1

    Se que es por hacerlo de la manera mas simple, pero se me hace raro que no lo expliques con un contenedor y dbeaver en lugar del workbench. Le cogí pirria hace muchos años con lo mal que iba el workbench.

  • @alejandrorios2508
    @alejandrorios2508 4 месяца назад

    Hola, por que el count me genera un error?
    select count (followers_id) AS followers from followers where following_id =1;
    minuto 32:13
    la columna la llame followers_id
    Error Code: 1630. FUNCTION twitter_db.count does not exist. Check the 'Function Name Parsing and Resolution' section in the Reference Manual
    no me aparece un posible error de sintaxis, pero no sé que está mal?
    muchas Gracias

    • @maarcosv97
      @maarcosv97 4 месяца назад

      Porque hay un espacio entre el count y el parentesis. Tiene que ser todo seguido count(followers_id)

  • @sleon4
    @sleon4 11 месяцев назад +1

    El modo dark para workbenche está disponible de esa forma para macOs, no para windows

    • @StepPixel
      @StepPixel 11 месяцев назад

      En Windows uso HeidiSQL que trae modo oscuro

  • @christianareinamo2326
    @christianareinamo2326 Год назад +2

    Te voy a construir una estatua si haces una sesion de base de datos no relacionales y nada de SQL, modelando la informacion en base a los patrones de consulta. en los bootcamp actuales parece que solo existen las base de datos no relacionesles y la normalizacion.

  • @alejandrovolonte2296
    @alejandrovolonte2296 7 месяцев назад

    Hola Midu muy bueno, para crear los usuarios le pido a chat gpt que me haga 20 usuarios con el formato que deseo y listo, copy paste.
    Saludos.

  • @fabriqr2930
    @fabriqr2930 10 месяцев назад

    como se pone ese mysql en oscuro?

  • @guidoGdR
    @guidoGdR 11 месяцев назад

    Nada como unos contenedores para cuando la instalación de la db te da muchos problemas

  • @devrik7096
    @devrik7096 Год назад

    Cuales serian las desventajas y ventajas de hacerlo directamente en MySQL y una ORM ?

  • @codesthenos
    @codesthenos 9 часов назад

    El ultimo trigger da error ya que NEW no existe

  • @osakadev
    @osakadev 11 месяцев назад

    Hola midu, tengo una duda que no tiene nada que ver con el video, pero he visto mucho tus videos de desarrollo web y de diseñando páginas, y te quería preguntar si vale la pena aprender react en 2023 a la fecha de hoy, porque estoy por terminar un curso y quiero ir a react pero no sé si vale la pena actualmente, si alguien o tu pueden resolver mi duda se los agradecería!

    • @midulive
      @midulive  11 месяцев назад +1

      Claro que vale la pena

    • @osakadev
      @osakadev 11 месяцев назад

      @@midulive gracias, es que he visto que ha estado pasando cosas raras con react y han salido nuevas opciones, y me ha dado cosa aprenderlo para luego no usarlo nunca o que deje de funcionar, gracias por responder, sigue con tu contenido que siempre me motiva y nos das ganas de seguir aprendiendo 😎. Suerte

  • @jksalexander
    @jksalexander Год назад

    Buen video, en mi caso para crear tablas o base de datos prefiero utilizar el CREATE TABLE IF NOT EXIST table_name, claro esto en el caso para mantener los datos que es mas comun.

    • @midulive
      @midulive  Год назад

      Bueno, en este caso hemos hecho el drop justo antes. Pero sí, está bien! :D

  • @pauserratgutierrez
    @pauserratgutierrez Год назад

    @midulive compartirás el código SQL?

  • @kevinluissolanohuaman8266
    @kevinluissolanohuaman8266 Год назад

    Buenas, yo por lo normal creo las bases de datos en SQL Server.

  • @iAzazelHD
    @iAzazelHD 11 месяцев назад

    Te lo has saltado pero, porque cuando añades 5 users, el id empieza en 3? Sé que es porque al crear el segundo dio fallo, y aun asi id se incrementó, pero por qué?

    • @mauricioperezvazquez
      @mauricioperezvazquez 9 месяцев назад

      Por que los auto incrementables no se recetean, siguen una secuencia, por lo tanto si ya se creo un numero, nunca mas se volvera a crear

  • @jhonathanalejandro0198
    @jhonathanalejandro0198 11 месяцев назад

    la normalización es un dolor de cabeza es como el meme de REGEX al normalizar ahora tienes 2 problemas XD

  • @francodarioperalta8482
    @francodarioperalta8482 10 месяцев назад

    26:21 el error era porque tenía una coma al final de la ultima instrucción FOREIGN KEY

    • @midulive
      @midulive  10 месяцев назад

      Se me coló

  • @franco.borgiani
    @franco.borgiani Год назад

    próximamente la base de datos de Threads?

  • @snithfferx
    @snithfferx 4 месяца назад

    Comentario por lo del disquete, cual creerías tu que sería el mejor icono para representar el "guardar" en una UI cualquiera.
    Por cierbo, algo de los gatillos. Cuando tienes uno que hace una acción que debe desencadenar otra acción en una API (sé que eso no es correcto, pero en la empresa, eso se inventaron) no aseguras que tanto los cambios que le enviaste a la API o los de la base estén sincronizados correctamente.

  • @marko71090
    @marko71090 Год назад

    Me hizo acordar de esto ruclips.net/video/i_cVJgIz_Cs/видео.html&ab_channel=JorgeRubiraSantos a quien lo paso un delete where sin from ajajjaja

  • @RabbitCode_2005
    @RabbitCode_2005 Год назад +1

    Midu hoy tengo mi primera entrevista me hace ilusion llegar a pasar la prueba
    PD: Si pase la prueba y la entrevista :)

    • @genaroibc
      @genaroibc Год назад +1

      Suerte!

    • @pauserratgutierrez
      @pauserratgutierrez Год назад +1

      Mucha suerte!

    • @RabbitCode_2005
      @RabbitCode_2005 Год назад +3

      No lo logre, se siente bien feo. me falto tener conocimientos en la base de datos Sql. Pero el lado bueno es que me dieron 15 días, es posible aprenderlo en 15 días?

    • @kasdal6220
      @kasdal6220 Год назад +1

      @@RabbitCode_2005 si de sobra

  • @user87546
    @user87546 5 месяцев назад

    49:08 Ahora si tenes el SET SQL_SAFE_UPDATES = 1; NO te deja ejecutar la consulta DELETE FROM tweets WHERE tweet_text LIKE '%Elon Musk%'; Te dice como que no hubieras puesto el WHERE. Puse el SET SQL_SAFE_UPDATES = 0; y me dejó.

  • @user-fy3gi7og9q
    @user-fy3gi7og9q 11 месяцев назад

    me perdí en la descarga de MySQL

  • @eduardogz1422
    @eduardogz1422 Год назад

    No sabía que se podía declarar dos llaves primarias de una misma tabla, esos bastardos me mintieron

  • @luismateopineiro9480
    @luismateopineiro9480 11 месяцев назад

    Usen mariaDB

  • @KenedyCruzMiranda
    @KenedyCruzMiranda Год назад

    la moda es threads

    • @midulive
      @midulive  Год назад

      Ya estamos ahí
      threads.net/midu.dev

  • @NoName-gm4tj
    @NoName-gm4tj 8 месяцев назад

    lo que yo sabia era que twitter usaba base de datos noSQL pero bueno

  • @thomasmc1569
    @thomasmc1569 7 месяцев назад

    X