Sunteți pe pagina 1din 21

COMANDOS DML Y DDL

Base de Datos

Que es DDL
Data Definition Language, DDL por sus siglas en ingls Lenguaje que defin la estructura de la base de datos. Se encarga de la creacin, modificacin y eliminacin de los objetos de la base de datos. Sentencias de Definicin admitidas
CREATE ALTER DROP

CREATE
Permite crear nuevos objetos en la base de datos como set:
Base de datos. Tablas ndices. Procedimientos Almacenados. Vistas. Funciones. Disparadores. Restricciones. Etc.

Crear Base de Datos


Sintaxis : CREATE DATABASE NombreBaseDatos Ejemplo: CREATE DATABASE BaseDatosUTH

Crear Tabla
Sintaxis CREATE TABLE Nombretabla ( nombrecolumna1 tipodato1, nombrecolumna2 tipodato2, nombrecolumna3 tipodato3, .. ) Ejemplo CREATE TABLE Personas ( Nombre varchar(255), Apellido varchar(255), Direccion varchar(255), Edad int )

Crear Restriccin NOT NULL


La restriccin NOT NULL sirve para especificar que una columna no acepta el valor NULL, es decir, que esa columna siempre tiene que tener algn valor, no puede estar vaca. Sintaxis NOT NULL Ejemplo CREATE TABLE Personas ( Nombre varchar(255) NOT NULL, Apellido varchar(255) NOT NULL, Direccion varchar(255), Edad int )

Crear Restriccin UNIQUE


La restriccin UNIQUE identifica de manera nica a cada fila de una tabla. Puede haber varias restricciones UNIQUE en diferentes columnas de una tabla. Sintaxis NOT NULL Ejemplo CREATE TABLE Personas ( Nombre varchar(255) NOT NULL UNIQUE, Apellido varchar(255) NOT NULL, Direccion varchar(255), Edad int )

Crear Restriccin UNIQUE ALTER TABLE


La restriccin UNIQUE identifica de manera nica a cada fila de una tabla. Puede haber varias restricciones UNIQUE en diferentes columnas de una tabla. Sintaxis ALTER TABLE NombreTabla ADD UNIQUE (campo1, , campoN) ALTER TABLE ADD CONSTRAINT NombreConstraint UNIQUE (campo1, , campoN)

Ejemplo ALTER TABLE Personas ADD CONSTRAINT uPersonasNombre UNIQUE (Nombre)

Crear Restriccin PRIMARY KEY


La clave primaria, PRIMARY KEY, identifica de manera nica cada fila de una tabla. La columna definida como clave primaria (PRIMARY KEY) debe ser UNIQUE (valor nico) y NOT NULL (no puede contener valores nulos). Cada tabla slo puede tener una clave primaria (PRIMARY KEY). Ejemplo CREATE TABLE Personas ( Nombre varchar(255) NOT NULL PRIMARY KEY, Apellido varchar(255) NOT NULL, Direccion varchar(255), Edad int )

Crear Restriccin PRIMARY KEY CREATE TABLE


Ejemplo CREATE TABLE Personas ( Nombre varchar(255) NOT NULL , Apellido varchar(255) NOT NULL, Direccion varchar(255), Edad int , CONSTRAINT PK_PERSONAS PRIMARY KEY (NOMBRE, APELLIDO) )

Crear Restriccin PRIMARY KEY ALTER TABLE


Ejemplo ALTER TABLE Personas ADD CONSTRAINT PK_PERSONAS PRIMARY KEY (NOMBRE, APELLIDO) )

ALTER TABLE Personas ADD PRIMARY KEY (NOMBRE, APELLIDO) )

Crear Restriccin FOREIGN KEY


La clave externa o FOREIGN KEY, es una columna o varias columnas, que sirven para sealar cual es la clave primaria de otra tabla. La columna o columnas sealadas como FOREIGN KEY, solo podrn tener valores que ya existan en la clave primaria PRIMARY KEY de la otra tabla. Ejemplo CREATE TABLE Pais ( Codigo_Pais INT NOT NULL, Nombre VARCHAR(100), CONSTRAINT pk_Pais PRIMARY KEY (Codigo_Pais) ) CREATE TABLE Personas ( Codigo int NOT NULL, Nombre varchar(255), Pais int, CONSTRAINT pk_Personas PRIMARY KEY (Codigo), FOREIGN KEY (Pais) REFERENCES Pais(Codigo_Pais) )

Crear Restriccin CHECK


La restriccin CHECK se utiliza para limitar el rango de valores que puede tener una columna. Se pueden definir varias restricciones CHECK en una tabla. Ejemplo CREATE TABLE Personas ( Codigo int NOT NULL, Nombre varchar(255), Pais int CHECK (Pais >0), CONSTRAINT pk_Personas PRIMARY KEY (Codigo))

Crear Restriccin CHECK ALTER TABLE


La restriccin CHECK se utiliza para limitar el rango de valores que puede tener una columna. Se pueden definir varias restricciones CHECK en una tabla. Ejemplo ALTER TABLE Personas ADD CONSTRAINT chk_Pais_Mayor_Cero CHECK (Pais > 0)

Crear Restriccin DEFAULT


La restriccin DEFAULT se utiliza para establecer un valor por defecto a una columna. Si no se especifica un valor al insertar una fila, entonces se podr el valor por defecto (DEFAULT) que tenga cada columna.

Ejemplo CREATE TABLE Personas ( Codigo int NOT NULL, Nombre varchar(255), Fecha_Nacimiento Date DEFAULT GETDATE(), CONSTRAINT pk_Personas PRIMARY KEY (Codigo))

Crear Restriccin DEFAULT


La restriccin DEFAULT se utiliza para establecer un valor por defecto a una columna. Si no se especifica un valor al insertar una fila, entonces se podr el valor por defecto (DEFAULT) que tenga cada columna.

Ejemplo CREATE TABLE Personas ( Codigo int NOT NULL, Nombre varchar(255), Fecha_Nacimiento Date DEFAULT GETDATE(), CONSTRAINT pk_Personas PRIMARY KEY (Codigo))

Crear ndice
CREATE INDEX se utiliza para crear ndices en una tabla. Un ndice sirve para buscar datos rpidamente, y no tener que recorrer toda la tabla secuencialmente en busca alguna fila concreta. Si una columna es ndice de una tabla, al buscar por un valor de esa columna, iremos directamente a la fila correspondiente. La bsqueda as es mucho ms ptima en recursos y ms rpida en tiempo. Si esa columna de bsqueda no fuese ndice, entonces tendramos que recorrer de forma secuencial la tabla en busca de algn dato. Por eso, es importante crear un ndice por cada tipo de bsqueda que queramos hacer en la tabla. Actualizar una tabla con ndices tarda ms tiempo porque tambin hay que actualizar los ndices, as que solo se deben poner ndices en las columnas por las que buscamos frecuentemente. Se pueden crear ndices NICOS, es decir, ndices que no admiten valores duplicados.

CRATE INDEX
Sintaxis CREATE INDEX nombreindice ON nombretabla (nombrecolumna) CREATE UNIQUE INDEX nombreindice ON nombretabla (nombrecolumna) Ejemplo CREATE INDEX idxPais ON Personas (Pais)

DROP
La sentencia DROP permite eliminar un objeto de la base de datos: TABLE INDEX CONSTRAINT VIEW TRIGGERT PROCEDURE FUNCTION USER Entre Otros.

TRUNCATE
TRUNCATE Permite eliminar datos de una tabla. Es til si se quiere borrar los datos pero no la tabla. Sintaxis TRANCATE TABLE NombreTabla Ejemplo TRUNCATE TABLE Personas

Auto Incrementales
Permite incrementar el valor de un campo Sintaxis CREATE TABLE Pais ( Codigo_Pais INT NOT NULL IDENTITY, Nombre VARCHAR(100), CONSTRAINT pk_Pais PRIMARY KEY (Codigo_Pais) )

S-ar putea să vă placă și