Want to create interactive content? It’s easy in Genially!

Get started free

Copia - DDL en MySQL

informaticavictorgil

Created on December 27, 2023

Start designing with a free template

Discover more than 1500 professional designs like these:

Transcript

¿Cómo formamos una sentencia DDL en MySQL?

OPERACIÓN PRINCIPAL

ELEMENTO

Cada sentencia termina con ;

Víctor Gil Rodríguez

OPERACIÓN PRINCIPAL

ELEMENTO

DATABASE

CREATE

DROP

TABLE

USE

ALTER

VIEW

RENAME

¿Qué operaciones podemos hacer con el elemento DATABASE?

CREATE

DATABASE

NombreBD;

DROP

USE

NombreBD;

CREATE DATABASE MiBaseDatos; USE MiBaseDatos; DROP DATABASE MiBaseDatos;

EJEMPLOS

¿Qué operaciones podemos hacer con el elemento TABLE?

CREATE

CREATE TABLE nomTabla1(estructura); ALTER TABLE nomTabla1 + Operación Secundaria; DROP TABLE nomTabla1; RENAME TABLE nomTable1 TO nomTable2;

DROP

TABLE

NombreTabla

ALTER

EJEMPLOS

RENAME

CREATE

TABLE

( estructura );

SINTAXIS:

CREATE TABLE Tabla1( nombreCampo1 tipoDato [restricciónCampo], nombreCampo2 tipoDato, ... , restriccionesTabla PK,FK,CK,... );

EJEMPLOS

CREATE

TABLE

( estructura );

EJEMPLOS

CREATE TABLE DEPARTAMENTO ( codigo CHAR(2), nombre VARCHAR(30) UNIQUE, --campo con restricción de campo CONSTRAINT dep_cod_PK PRIMARY KEY(codigo) -- Restricción clave primaria -- definida al final. ); CREATE TABLE EMPLEADO ( numEmple CHAR(5) PRIMARY KEY, --Restricción clave primaria en campo. nombre VARCHAR(25) NOT NULL, sueldo MEDIUMINT, fechaNac DATE, dpto CHAR(2), CONSTRAINT emp_dep_FK FOREIGN KEY(dpto) REFERENCES DEPARTAMENTO(codigo) on delete SET NULL on update CASCADE --Restricción clave foránea );

TABLE

DROP

NombreTabla;

EJEMPLOS

DROP TABLE Empleado; DROP TABLE Departamento; /* IMPORTANTE: No se podrá eliminar una tabla si tiene alguna dependencia con otra mediante una restricción FK. Primero debemos borrar EMPLEADO y después DEPARTAMENTO, es decir, en el sentido contrario en el que se crean. */

ALTER

TABLE

Nombre Tabla

Operación Secundaria

Elemento de la tabla

Operación Secundaria

ADD

INDEX

(nombre campo) ;

DROP

CONSTRAINT

nomRestricción TipoRestricción (campo)[...];

COLUMN

CHANGE

sintaxis según operación a realizar

ALTER

TABLE

Nombre Tabla

Operación Secundaria

Elemento de la tabla

Operación Secundaria

ADD

INDEX

nombreIndice (nombre campo) ;

DROP

INDEX

nombreIndice;

EJEMPLOS

ALTER TABLE Empleado ADD INDEX idxNombre(Nombre); ALTER TABLE Empleado DROP INDEX idxNombre;

ALTER

TABLE

Nombre Tabla

Operación Secundaria

Elemento de la tabla

Operación Secundaria

ADD

CONSTRAINT

nomRestricción TipoRestricción (campo)[...];

DROP

CONSTRAINT

nomRestricción ;

EJEMPLOS

ALTER TABLE Empleado ADD CONSTRAINT emp_sue_CK CHECK (sueldo>1000); ALTER TABLE Empleado DROP CONSTRAINT emp_sue_CK;

ALTER

TABLE

Nombre Tabla

Operación Secundaria

Elemento de la tabla

Operación Secundaria

ADD

COLUMN

nomCampo + tipoCampo + [posibleRestricción] ;

DROP

COLUMN

nomCampoExistente;

CHANGE

COLUMN

nomCampoViejo + nomCampoNuevo + tipoCampo ;

EJEMPLOS

ALTER TABLE Empleado ADD COLUMN cargo VARCHAR(20); ALTER TABLE Empleado DROP COLUMN fechaNac; ALTER TABLE Empleado CHANGE COLUMN cargo puesto VARCHAR(15) NOT NULL;

¿Qué operaciones podemos hacer con el elemento VIEW?

CREATE

VIEW

Nombre Vista

Sentencia SELECT

+ AS +

DROP

EJEMPLOS

CREATE VIEW empleConta AS SELECT numEmple, nombre FROM EMPLEADO WHERE dpto='11';