No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Aprende Ingl茅s, Programaci贸n, AI, Ciberseguridad y mucho m谩s.

Antes: $249

Currency
$209
Suscr铆bete

Termina en:

5 D铆as
8 Hrs
36 Min
55 Seg

Playground: Manejo de Tablas con SQL

14/34

Aportes 19

Preguntas 0

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

Mi soluci贸n:

-- ALTER
ALTER TABLE asignaturas
DROP COLUMN hora_de_salida;

ALTER TABLE asignaturas
ADD COLUMN hora_de_entrega TIMESTAMP NOT NULL;

-- CREATE
CREATE TABLE estudiantes (
  `id` INT  NOT NULL,
  `nombre` VARCHAR(255) NOT NULL,
  `asignatura_id` INT NOT NULL,
  PRIMARY KEY (id),
  CONSTRAINT `estudiantes_asignatura_id_foreign`
  FOREIGN KEY (asignatura_id) REFERENCES asignaturas(id)
)

.
.
.
.
.
.
.
.
.

-- Eliminar columna hora_de_salida
ALTER TABLE asignaturas
DROP COLUMN hora_de_salida;

-- Agregar columna hora_de_entrega
ALTER TABLE asignaturas
ADD hora_de_entrega TIMESTAMP NOT NULL;

CREATE TABLE estudiantes (
    id INT NOT NULL,
    nombre VARCHAR(255) NOT NULL,
    asignatura_id INT NOT NULL,
    PRIMARY KEY (id),
    CONSTRAINT asignatura_id_foreign
    FOREIGN KEY (asignatura_id) REFERENCES asignaturas(id)
);



SELECT * FROM asignaturas;
SELECT * FROM estudiantes;


Esta es mi soluci贸n

-- Escribe tu ejercicio aqu铆 馃憞
SELECT * FROM asignaturas;

-- First problem
ALTER TABLE asignaturas 
DROP COLUMN hora_de_salida;

ALTER TABLE asignaturas
ADD hora_de_entrega TIMESTAMP NOT NULL; 

SELECT * FROM asignaturas;

-- Second problem

CREATE TABLE 'estudiantes' (
  'id' INT NOT NULL,
  'nombre' VARCHAR(255) NOT NULL,
  'asignatura_id' INT NOT NULL,

  PRIMARY KEY ('id'),

  CONSTRAINT 'estudiantes_asignaturas_id_foreign'
  FOREIGN KEY ('id') REFERENCES 'asignaturas' ('id') 
);

SELECT * FROM estudiantes;

![](https://static.platzi.com/media/user_upload/image-6e981c34-461b-4a86-96b1-8b156c77ed5a.jpg)
![](https://static.platzi.com/media/user_upload/image-6462de0c-5546-43bb-b9c5-1410b8f21143.jpg)

馃崈 Luego de varias pruebas, me qued贸 as铆:


-- ALTER
ALTER TABLE `asignaturas`
DROP COLUMN `hora_de_salida`;

ALTER TABLE `asignaturas`
ADD COLUMN `hora_de_entrega` TIMESTAMP NOT NULL;

-- CREATE
CREATE TABLE `estudiantes` (
    `id` INT NOT NULL,
    `nombre` VARCHAR(255) NOT NULL,
    `asignatura_id` INT NOT NULL,
    
    PRIMARY KEY (id),
    CONSTRAINT `fk_asignatura_id` FOREIGN KEY (`asignatura_id`) REFERENCES `asignaturas`(`id`)
);

Les dejo mi soluci贸n al reto. Al principio escrib铆 INTEGER y hab铆a dejado el SELECT * FROM asignaturas, pero me dio incorrecto, se帽alando que se escrib铆a INT y lo cambi茅; y tambi茅n marc贸 que el SELECT ten铆a error, por lo que lo puse hasta el final y a帽ad铆 el otro SELECT. Solo as铆 las pruebas corrieron exitosamente.

-- ALTER
ALTER TABLE asignaturas
ADD hora_de_entrega TIMESTAMP NOT NULL;

ALTER TABLE asignaturas
DROP hora_de_salida;

-- CREATE
CREATE TABLE estudiantes (
  id INT NOT NULL,
  nombre VARCHAR(255) NOT NULL,
  asignatura_id INT NOT NULL,
  PRIMARY KEY (id),
  CONSTRAINT asignatura_id_foreign
  FOREIGN KEY (asignatura_id) REFERENCES asignaturas
);

SELECT * FROM asignaturas;
SELECT * FROM estudiantes;

ALTER TABLE asignaturasDROP COLUMN hora\_de\_salida; ALTER TABLE asignaturasADD hora\_de\_entrega TIMESTAMP NOT NULL; CREATE TABLE `estudiantes` ( `id` INT NOT NULL, `nombre` VARCHAR(255) NOT NULL, `asignatura\_id` INT NOT NULL, PRIMARY KEY (id), FOREIGN KEY (asignatura\_id) REFERENCES `aisgnaturas`(`id`))
La soluci贸n propuesta: ```txt --query 'asignaturas' table SELECT * FROM asignaturas; --Resolving problem one ALTER TABLE asignaturas ADD hora_de_entrega TIMESTAMP NOT NULL; ALTER TABLE asignaturas DROP hora_de_salida; --Resolving prblem two CREATE TABLE estudiantes( id INT NOT NULL, nombre VARCHAR(255) NOT NULL, asignatura_id INT NOT NULL, PRIMARY KEY (id), CONSTRAINT asignatura_id_foreign FOREIGN KEY (asignatura_id) REFERENCES asignaturas ); --query updated tables SELECT * FROM asignaturas; SELECT * FROM estudiantes; ```
ALTER TABLE asignaturasDROP COLUMN hora\_de\_salida; ALTER TABLE asignaturasADD 聽COLUMN hora\_de\_entrega TIMESTAMP NOT NULL; SELECT \* FROM asignaturas \--Crea una tabla estudiantes con las columnas id (llave primaria de tipo entero), --nombre (de tipo VARCHAR con m谩ximo 255 car谩cteres) y --asignatura\_id (llave foranea de tipo entero que haga referencia a la columna id de la tabla asignaturas). CREATE TABLE `estudiantes` ( 聽 聽 `id` INT NOT NULL,聽 聽 `nombre` VARCHAR(255) NOT NULL,聽 聽 `asignatura\_id` INT NOT NULL, 聽 聽 PRIMARY KEY (id), 聽 CONSTRAINT 聽'estudiantes\_asignaturas\_id\_foreign'聽 FOREIGN KEY ('id') REFERENCES 'asignaturas' ('ID')); 聽 SELECT \* FROM estudiantes
CREATE TABLE `estudiantes` ( 聽 聽 `id` BIGINT(20) UNSIGNED NOT NULL AUTO\_INCREMENT,聽 聽 `nombre` VARCHAR(255) NOT NULL,聽 聽 `asignatura\_id` INT NOT NULL, 聽 聽 PRIMARY KEY (id), 聽 CONSTRAINT asignatura\_id\_foreign聽 FOREIGN KEY (asignatura\_id) REFERENCES asignaturas)DEFAULT CHARSET = utf8mb4COLLATE=utf8mb4\_unicode\_ci; SELECT \* FROM asignaturas;CREATE TABLE `estudiantes` ( 聽 聽 `id` INT NOT NULL,聽 聽 `nombre` VARCHAR(255) NOT NULL,聽 聽 `asignatura\_id` INT NOT NULL, 聽 聽 PRIMARY KEY (id), 聽 CONSTRAINT asignatura\_id\_foreign聽 FOREIGN KEY (asignatura\_id) REFERENCES asignaturas
SELECT * FROM asignaturas;

alter table `asignaturas`
DROP COLUMN titulo;


Ac谩 les dejo mi soluci贸n, tal vez sirva de ayuda 鉂わ笍

-- Escribe tu ejercicio aqu铆 馃憞
ALTER TABLE asignaturas
  DROP COLUMN hora_de_salida;

ALTER TABLE asignaturas
  ADD hora_de_entrega TIMESTAMP NOT NULL;

SELECT * 
FROM asignaturas;

CREATE TABLE estudiantes(
  id INT NOT NULL ,
  nombre VARCHAR(255) NOT NULL,
  asignatura_id INT NOT NULL,
  CONSTRAINT pk_estudiante PRIMARY KEY (id),
  CONSTRAINT fk_asignatura FOREIGN KEY (asignatura_id) REFERENCES asignaturas(id)
);

SELECT *
FROM estudiantes;

-- Escribe tu ejercicio aqu铆 馃憞
SELECT * FROM asignaturas;
**-- 1**
--eliminar la columna hora_de_salida
ALTER TABLE asignaturas
DROP COLUMN hora_de_salida;

--a帽adir una hora_de_entrega de tipo fecha y hora y NOT NULL
ALTER TABLE asignaturas ADD hora_de_entrega TIMESTAMP NOT NULL;

SELECT * FROM asignaturas;


/***2**
Crea una tabla estudiantes con las columnas 
id (llave primaria de tipo entero), 
nombre (de tipo VARCHAR con m谩ximo 255 car谩cteres)
asignatura_id (llave foranea de tipo entero 
que haga referencia a la columna id de la tabla asignaturas).
*/
CREATE TABLE estudiantes(
id int not null primary key,
nombre varchar(255),
asignatura_id int not null,
CONSTRAINT asignatura_id_foreign ,
FOREIGN KEY (asignatura_id) REFERENCES asignaturas(id)
);

SELECT * FROM asignaturas;
SELECT * FROM estudiantes;

SELECT * FROM asignaturas;

ALTER TABLE asignaturas
DROP COLUMN hora_de_salida;

ALTER TABLE asignaturas
ADD COLUMN hora_de_entrega TIMESTAMP NOT NULL;

CREATE TABLE estudiantes(
id INT,
nombre VARCHAR(255),
asignatura_id INT,

PRIMARY KEY (id),
CONSTRAINT estudiantes_asignaturas_id_foreign,
FOREIGN KEY (asignatura_id) REFERENCES asignaturas (asignatura_id)
)

El simulador no acepta BIGINT y tampoco acepta UNSIGNED. Se debe corregir eso.

鈥 Escribe tu ejercicio aqu铆 馃憞
SELECT * FROM asignaturas;
ALTER TABLE asignaturas DROP COLUMN hora_de_salida;
ALTER TABLE asignaturas ADD hora_de_entrega TIMESTAMP NOT NULL;
CREATE TABLE estudiantes(
id INT,
nombre VARCHAR(255),
asignatura_id INT,
PRIMARY KEY(id),
CONSTRAINT estudiantes_asignatura_id_foreign
FOREIGN KEY(asignatura_id)
REFERENCES asignatura(id)
)

mi solucion

-- Eliminar la columna hora_de_salida
ALTER TABLE asignaturas
DROP COLUMN hora_de_salida;

-- A帽adir la columna hora_de_entrega
ALTER TABLE asignaturas
ADD hora_de_entrega DATETIME NOT NULL;


CREATE TABLE estudiantes (
  id INT NOT NULL, PRIMARY KEY,
  nombre VARCHAR(255),
  asignatura_id INT,
  FOREIGN KEY (asignatura_id) REFERENCES asignaturas(id)
);

No lea esto amenos de que se haya rendido:

-- Escribe tu ejercicio aqu铆 馃憞
ALTER TABLE asignaturas
ADD hora_de_entrega TIMESTAMP NOT NULL;

ALTER TABLE asignaturas
DROP hora_de_salida;

CREATE TABLE estudiantes (
  id INT NOT NULL,
  nombre VARCHAR(255) NOT NULL,
  asignatura_id INT NOT NULL,
  PRIMARY KEY (id),
  CONSTRAINT asignatura_id_foreign
  FOREIGN KEY (asignatura_id) REFERENCES asignaturas
);

SELECT * FROM asignaturas;
SELECT * FROM estudiantes;
undefined