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:

The Power of Roadmap

Simulation: How to Act Against Bullying

Artificial Intelligence in Corporate Environments

Internal Guidelines for Artificial Intelligence Use

Interactive Onboarding Guide

Word Search

Sorting Cards

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';