Aprende todo un fin de semana sin pagar una suscripción 🔥

Regístrate

Comienza en:

03D

04H

10M

58S

1

Query SQL Completo - Proyecto curso Java EE

Este tutorial es un complemento del curso de Java EE para la creación de la base de datos a través de la terminal y ejecutando consultas SQL (para no tener que utilizar PhpMyAdmin como se hace en el curso actualmente).

  1. Instalar MySQL y MySQL Workbench en Linux.

Se deben ejecutar los siguientes comandos en la terminal:

sudo apt-get update
sudo apt-get install mysql-server mysql-client
mysql --version
sudo mysql_secure_installation

En los parámetros de seguridad, se colocan todas las opciones en Yes (Menos la de deshabilitar el login de manera remota).

sudo apt-get install mysql-workbench

  1. Crear la base de Datos.

mysql -u root -p

mysql>
	CREATE DATABASE platzi_java_ee;  -- Crear nueva BD.
	CREATE USER [email protected] IDENTIFIED BY 'PlatziProfesores';  -- Crear el usuario user_wp con contraseña PlatziProfesores.
	GRANT ALL PRIVILEGES ON platzi_java_ee.* TO [email protected];  -- Dar acceso al usuario de la nueva BD creada.
	FLUSH PRIVILEGES;  -- Informar de los nuevos privilegios establecidos.exit

Se inicia MySQL Workbench y se consulta por separado cada una de las siguientes consultas:

CREATESCHEMA`platzi_java_ee`DEFAULTCHARACTERSET utf8 DEFAULTCOLLATE utf8_general_ci;
-- ALTER SCHEMA `platzi_java_ee` DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;CREATETABLE`platzi_java_ee`.`teacher` (
  `id_teacher`INTNOTNULL AUTO_INCREMENT,
  `name`VARCHAR(250) CHARACTERSET'utf8'NOTNULL,
  `avatar`VARCHAR(250) CHARACTERSET'utf8'NULL,
  PRIMARY KEY (`id_teacher`)) ENGINE=InnoDBDEFAULTCHARSET=utf8;

CREATETABLE`platzi_java_ee`.`course` (
  `id_course`INTNOTNULL AUTO_INCREMENT,
  `name`VARCHAR(250) CHARACTERSET'utf8'NOTNULL,
  `themes`TEXTCHARACTERSET'utf8'NULL,
  `project`VARCHAR(250) CHARACTERSET'utf8'NULL,
  `id_teacher`INTNOTNULL,
  PRIMARY KEY (`id_course`),
  INDEX`fk_course__teacher_idx` (`id_teacher`),
  CONSTRAINT`fk_course__teacher`
    FOREIGN KEY (`id_teacher`)
    REFERENCES`platzi_java_ee`.`teacher` (`id_teacher`)) ENGINE=InnoDBDEFAULTCHARSET=utf8;

CREATETABLE`platzi_java_ee`.`social_media` (
  `id_social_media`INTNOTNULL AUTO_INCREMENT,
  `name`VARCHAR(250) CHARACTERSET'utf8'NOTNULL,
  `icon`VARCHAR(250) CHARACTERSET'utf8'NULL,
  PRIMARY KEY (`id_social_media`)) ENGINE=InnoDBDEFAULTCHARSET=utf8;

CREATETABLE`platzi_java_ee`.`teacher_social_media` (
  `id_teacher_social_media`INTNOTNULL AUTO_INCREMENT,
  `id_teacher`INTNOTNULL,
  `id_social_media`INTNOTNULL,
  `nickname`VARCHAR(250) CHARACTERSET'utf8'NOTNULL,
  PRIMARY KEY (`id_teacher_social_media`),
  INDEX`fk_teacher_social_media__teacher_idx` (`id_teacher`),
  INDEX`fk_teacher_social_media__social_media_idx` (`id_social_media`),
  CONSTRAINT`fk_teacher_social_media__teacher`
    FOREIGN KEY (`id_teacher`)
    REFERENCES`platzi_java_ee`.`teacher` (`id_teacher`),
  CONSTRAINT`fk_teacher_social_media__social_media`
    FOREIGN KEY (`id_social_media`)
    REFERENCES`platzi_java_ee`.`social_media` (`id_social_media`)) ENGINE=InnoDBDEFAULTCHARSET=utf8;

De manera adicional se pueden utilizar las siguientes consultas, que serán las que se ejecutarán cuando se haga el despliegue del proyecto a Heroku.

-- DataINSERTINTO platzi_java_ee.teacher VALUES (1,'Anahi Salgado','Avatar'),(2,'Freddy Vega','Avatar'),(3,'Leonidas Esteban','Avatar');
INSERTINTO platzi_java_ee.course VALUES (1, 'Java Avanzado', 'Tema 1', 'Rest API', 1),(2, 'Curso Definitivo de Android', '* Qué es Android', 'Platzigram', 1);
INSERTINTO platzi_java_ee.social_media VALUES (1,'twitter','avatar'),(3,'facebook','avatar');
INSERTINTO platzi_java_ee.teacher_social_media VALUES (1,1,1,'@anncode'),(2,1,3,'Anncode');
Escribe tu comentario
+ 2