Lenguaje de definicion de datos DDL

Lenguaje de definicion de datos(DDL).


Es un lenguaje proporcionado por el sistema de gestión de base de datos que permite a los usuarios de la misma llevar a cabo las tareas de definición de las estructuras que almacenarán los datos así como de los procedimientos o funciones que permitan consultarlos.


El lenguaje de programaciçon SQL, el más difundido entre los gestores de bases de datos, admite las siguientes sentencias de definición: CREATE, DROP y ALTER, cada una de las cuales se puede aplicar a las tablas, vistas, procedimientos almacenados y triggers de la base de datos.
 


El lenguaje de definición de datos en SQL según vimos en el tema anterior se divide en

los siguientes comandos:
  • CREATE TABLE
  • ALTER TABLE 
  • DROP TABLE.



1. CREACIÓN DE UNA TABLA

Una tabla se crea con la orden
CREATE TABLE.

La sintáxis del comando CREATE TABLE es una sintáxis reducida del comando. Luego
veremos la sintáxis completa del comando CREATE TABLE. Por ahora para crear una
tabla tenemos suficiente con la siguiente.



Sintáxis

CREATE TABLE nombre_tabla

(nombre_columna tipo_dato [longitud][NOT NULL],

nombre_columna tipo_dato [longitud][NOT NULL],

…) [TABLESPACE espacio_de_tabla};



Una vez que la tabla está creada su definición queda en el diccionario de datos.

a) Nombre de tabla

 Un nombre de tabla tiene una longitude maxima.

 Su nombre tiene que ser diferente a cualquier otra tabla o vista de la base

 de de datos.

 El nombre de la tabla nunca podrá ser una palabra reservada de la base de

 datos.

Puede ser mayúsculas o minúsculas, es indiferente.

b) Definición de columnas

Cada columna de una tabla tendrá lo siguiente:

Nombre del campo dentro de una tabla.

Tipo de dato, con su longitud si es que procede y NOT NULL  nunca

puede estar vacío.
La definición de cada columna va separada por ‘,’.
 
El nombre de campo sigue las mismas reglas que el nombre de tabla, pero
las columnas pueden tener el mismo nombre si son tables distintas.
Se pueden definer como máximo 254 columnas.
Las claves primarias se deben definir como NOT NULL.
 
Modificación de Tablas
 MODIFY: para modificar el tipo o el tamaño de una columna ésta no debe contener valores.
 
modificar una columna NULL a NOT NULL implica que no haya ninguna fila con valor NULL para esa columna, o bien que la tabla esté vacía
 

Borrado de Tablas



 
DROP TABLE <nombre_de_tabla>
Cuando se ejecuta el comando DROP:
La definición de la tabla se elimina del catálogo.
 
El espacio que ocupaba la tabla se recupera para otros elementos de la base de datos.
 
Se borran todas las filas de la tabla sin ninguna alerta
La ejecución de este comando elimina la tabla definitivamente.
 

Renombrado de Tablas



RENAME <antiguo_nombre> TO <nuevo_nombre>
Cuando se ejecuta el comando RENAME:
 El nuevo nombre se almacena en el catálogo y la tabla no
podrá volver a ser referenciada con el nombre antiguo
 No se produce ninguna repercusión sobre los datos
 El propietario de la tabla es el único que puede
cambiar el nombre
 

 

Tipos de datos:



(Algunos ejemplos)
 
Ejemplo:
Nuestra base de datos estará comprendida por las siguientes tablas:
o Clientes
o Tiendas
o Proveedores
o Articulos
o Ventas
Toda tabla tiene una clave primaria. La clave primaria es aquella que identifica a una sola tupla (fila) de esa tabla. Representaremos los campos que son clave primaria con el símbolo #.
 
Tabla Clientes:
#clt_num      clt_apell      clt_nom     clt_pais     clt_pob
La tabla clientes lleva un número de identificación único no vacío (la clave
primaria clt_num), el apellido del cliente (clt_apell), su nombre (clt_nom),
nacionalidad (clt_pais) y su ciudad (clt_pob).
Tabla Tiendas:
#tda_num      tda_pob         tda_ger
 
La tabla tiendas incluye un número de identificación único no vacío (la clave
primaria tda_num), el área geográfica en que se encuentra la tienda (tda_pob), y el
nombre del gerente (tda_ger).
Tabla Proveedores:
#prv_num      prv_nom
 
 Contiene un número de identificación único, que es la clave primaria (prv_num),
y el nombre del proveedor (prv_nom). Existe un enlace funcional 1:N entre la
tabla proveedores y la tabla artículos, a través del número de proveedor que
aparece para cada artículo en la columna art_prv.
Tabla Articulos:
#art_num   art_nom   art_peso   art_col  art_pc  art_pv  art_prv           
 
Tiene un número de identificación único, la clave primaria (art_num), y contiene
además el nombre del artículo (art_nom), su peso (art_peso), su color (art_col), el
precio de compra (art_pc), el precio de venta (art_pv) y el número de proveedor
(art_prv), el cual hace de clave foránea para poderse relacionar con el número de
proveedores de la tabla proveedores.
 
Creación de la tabla ‘clientes’
CREATE TABLE clientes (
clt_num INTEGER NOT NULL PRIMARY KEY,
clt_apell CHAR(10),
clt_nom CHAR(10),
clt_pais CHAR(1),
clt_pob CHAR(10)
);
La clave primaria de una tabla nunca puede estar vacía. Esto quiere decir que en la
definición de una tabla, siempre tendremos que poner NOT NULL en el campo que es
clave primaria.
Creación de la tabla ‘tiendas’
CREATE TABLE tiendas (
tda_num INTEGER NOT NULL PRIMARY KEY,
tda_pob CHAR(15),
tda_ger CHAR(25)
);
Creación de la tabla ‘proveedores’
CREATE TABLE proveedores (
prv_num integer NOT NULL PRIMARY KEY,
prv_nom CHAR(25)
);
Creación de la tabla ‘articulos’
CREATE TABLE articulos (
art_num INTEGER NOT NULL PRIMARY KEY,
art_nom CHAR(20),
art_peso INTEGER,
art_col CHAR(10),
art_pc INTEGER,
art_pv INTEGER,
art_prv INTEGER
);

Fuente:
 
 
 






 

No hay comentarios:

Publicar un comentario