2

Ejemplo practico de DDL

En este articulo vamos a realizar un ejemplo practico de DDL (Data Definition Lenguage), el cual es uno de los lenguajes que se deprenden de SQL (Structured Query Lenguage).
En este caso yo lo voy a hacer desde la consola, ya que lo importante es que podamos dominar el lenguaje aun cuando no haya un cliente grafico con el cual interactuar.

Para este ejemplo, solo nos vamos a encargar de crear una base de datos cuyo nombre va a ser bduoc que puedes recordarla como Base de Datos Usuario O Cliente.
Además vamos a crear las siguientes tablas:

  • clientes
  • departamentos
  • proyectos
  • empleados

Y en cada uno de estas tablas les vamos a agregar las llaves primarias y las llaves foráneas.

Entonces, el código quedaría de la siguiente manera:

CREATEDATABASE bduoc; // Se crea la base de datos

SHOWDATABASES; //Verificas si la base de datos ya esta hecha

USEDATABASE bduoc; //Empiezas a usar la base de datos

CREATETABLE clientes //Creacion de la primera tabla
(codigo_cli INTEGER,
nombre_cli CHAR(30) NOTNULL,
nif CHAR (12),
direccion CHAR (30),
ciudad CHAR (20),
telefono CHAR (12),
PRIMARY KEY (codigo_cli),
UNIQUE(nif)
);

CREATETABLE departamentos
(nombre_dep CHAR(20),
ciudad_dep CHAR(20),
telefono INTEGERDEFAULTNULL,
PRIMARY KEY (nombre_dep, ciudad_dep)
);

CREATETABLE proyectos
(codigo_proyec INTEGER,
nombre_proyec CHAR(20),
precio REAL,
fecha_inicio DATE,
fecha_prev_fin DATE,
fecha_fin DATEDEFAULTNULL,
codigo_cliente INTEGER,
PRIMARY KEY (codigo_proyec),
FOREIGN KEY codigo_cliente REFERENCES clientes (codigo_cli),
CHECK (fecha_inicio < fecha_prev_fin),
CHECK (fecha_inicio < fecha_fin)
);

CREATETABLE empleados
(codigo_empl INTEGER,
nombre_empl CHAR (20),
apellido_empl CHAR(20),
sueldo REALCHECK (sueldo > 7000),
nombre_dep CHAR(20)
ciudad_dep CHAR(20),
num_proyec INTEGER,
PRIMARY KEY (codigo_empl),
FOREIGN KEY (nombre_dep, ciudad_dep) REFERENCES
departamentos (nombre_dep, ciudad_dep),
FOREIGN KEY (num_proyec) REFERENCES proyectos (codigo_proyec)
);

SHOWTABLES; //Ves las tablas que ya creaste

DESCRIBE proyectos; //Para que veas las entidades de la tabla

Es importante mencionar que hasta ahora las tablas están vacías, ya que no les hemos agregado nada aun

Escribe tu comentario
+ 2