No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Última oportunidad para asegurar tu aprendizaje por 1 año a precio especial

Antes: $249

Currency
$189/año

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

1D
18H
3M
38S
Curso de Bases de Datos con MySQL y MariaDB

Curso de Bases de Datos con MySQL y MariaDB

Carlos Eduardo Gómez García

Carlos Eduardo Gómez García

Modificando tablas con ALTER TABLE

13/34
Recursos

Aportes 10

Preguntas 8

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

Hasta este punto, haciendo un feedback del curso, todo va Excelente, muy claras y concisas las explicaciones.
🔥🔥🔥RetaxMaster🔥🔥🔥

El curso va excelente. Muy buen profe!

Alteré la tabla stations y la volví a modificar para llevarla al estado inicial. Le agregué FIRST para que el campo clave se posicione al principio de la tabla.

buenas, necesito ayuda para crear una nueva tabla o agregar las tablas stations y trains, al momento de colocar comando $ mysql -u "name" -p <2-create-tables.sql Enter password: \*\*\*\* ERROR 1050 (42S01) at line 5: Table 'lines' already exists me da este error.
muy buen curso use metro\_cdmx; alter table `stations` modify `id` bigint(20) unsigned not null auto\_increment;

La palabra clave CONSTRAINT se utiliza para definir explícitamente una restricción en una tabla de MySQL. Si utilizas la palabra clave CONSTRAINT, debes pasarle un parámetro indicando el nombre de esa restricción. Sin embargo, si no usas CONSTRAINT, el motor de base de datos le pone el nombre a la restricción de forma automática.

Una ventaja de usar CONSTRAINT es que puedes ponerle el nombre que tú quieras a la restricción, por si luego tienes que hacer algo con esa restricción y así puedas identificarla fácilmente. Un inconveniente es que ese nombre no puede estar duplicado, por lo que tendrías que tener control de qué nombre le pones para no repetirlo.

Se puede definir la llave primaria en la definicion de la columna con la palabra clave(PRIMARY KEY) ejm:

CREATE TABLE trains (
	serial_number VARCHAR(10) NOT NULL PRIMARY KEY,
	line_id BIGINT(20) UNSIGNED NOT NULL,
	type TINYINT(4) NOT NULL,
	year INT(4) NOT NULL,
	`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
	`updated_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
	CONSTRAINT trains_line_id_foreign FOREIGN KEY (line_id) REFERENCES `lines` (id)
)
DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

Como cree una tabla para poder modificarla luego:

Como la modifique:

A mi me salia este error: ERROR 1068 (42000) at line 3 in file: 3-ALTER-TABLE.sql: : Multiple primary key defined encontre la siguiente informacion apra corregirlo en windows con vscode: Para corregir esto, debes seguir estos pasos: Crear una nueva tabla temporal con la estructura que deseas, incluyendo la columna id modificada y la clave primaria. Copiar los datos de la tabla original a la nueva tabla. Eliminar la tabla original. Cambiar el nombre de la nueva tabla al nombre original. Aquí tienes un ejemplo de cómo hacerlo: sql Copy code USE metro\_cdmx; \-- Paso 1: Crear una nueva tabla temporal CREATE TABLE `stations\_temp` ( `id` BIGINT(20) UNSIGNED NOT NULL AUTO\_INCREMENT, `name` VARCHAR(50) NOT NULL, `created\_at` TIMESTAMP NOT NULL DEFAULT CURRENT\_TIMESTAMP, `updated\_at` TIMESTAMP NOT NULL DEFAULT CURRENT\_TIMESTAMP, PRIMARY KEY (`id`) ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4\_unicode\_ci; \-- Paso 2: Copiar los datos de la tabla original a la nueva tabla INSERT INTO `stations\_temp` SELECT \* FROM `stations`; \-- Paso 3: Eliminar la tabla original DROP TABLE `stations`; \-- Paso 4: Cambiar el nombre de la nueva tabla al nombre original ALTER TABLE `stations\_temp` RENAME TO `stations`; Este conjunto de instrucciones realizará la modificación deseada en la columna id y agregará la clave primaria a la tabla stations sin causar el error de "Multiple primary key defined". Asegúrate de realizar un respaldo de tus datos antes de realizar cambios importantes en la estructura de la tabla.