Want to make creations as awesome as this one?

Transcript

OPERACIÓN PRINCIPAL

ELEMENTO

¿Cómo formamos una sentencia DDL en MySQL?

Cada sentencia termina con ;

Víctor Gil Rodríguez

USE

RENAME

ALTER

DROP

DATABASE

TABLE

VIEW

CREATE

OPERACIÓN PRINCIPAL

ELEMENTO

+

USE miBaseDatos;

RENAME TABLE Empleado TO Trabajador;

USE

DROP

DATABASE

CREATE

¿Qué operaciones podemos hacer con el elemento DATABASE?

NombreBD;

+

+

NombreBD;

+

EJEMPLOS

CREATE DATABASE MiBaseDatos; USE MiBaseDatos; DROP DATABASE MiBaseDatos;

DROP

RENAME

ALTER

CREATE

TABLE

¿Qué operaciones podemos hacer con el elemento TABLE?

NombreTabla

+

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

+

EJEMPLOS

CREATE

TABLE

( estructura );

+

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

+

EJEMPLOS

SINTAXIS:

CREATE

TABLE

( estructura );

+

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

+

EJEMPLOS

DROP

TABLE

NombreTabla;

+

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. */

+

EJEMPLOS

TABLE

CHANGE

ADD

DROP

ALTER

NombreTabla

+

+

Operación Secundaria

+

Operación Secundaria

Elemento de la tabla

(nombre campo) ;

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

sintaxis según operación a realizar

+

+

+

CONSTRAINT

INDEX

COLUMN

TABLE

ADD

DROP

ALTER

NombreTabla

+

+

Operación Secundaria

+

Operación Secundaria

Elemento de la tabla

EJEMPLOS

nombreIndice (nombre campo) ;

+

INDEX

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

+

nombreIndice;

+

INDEX

+

TABLE

ADD

DROP

ALTER

NombreTabla

+

+

Operación Secundaria

+

Operación Secundaria

EJEMPLOS

Elemento de la tabla

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

+

CONSTRAINT

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

+

nomRestricción ;

+

CONSTRAINT

+

TABLE

CHANGE

ADD

DROP

ALTER

NombreTabla

+

+

Operación Secundaria

+

Operación Secundaria

Elemento de la tabla

EJEMPLOS

nomCampo + tipoCampo + [posibleRestricción] ;

+

COLUMN

nomCampoExistente;

+

COLUMN

nomCampoViejo + nomCampoNuevo + tipoCampo ;

+

COLUMN

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;

+

+

+

DROP

CREATE

VIEW

¿Qué operaciones podemos hacer con el elemento VIEW?

+

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

EJEMPLOS

NombreVista

+

SentenciaSELECT

+ AS +

;