Está en la página 1de 5

FACULTAD DE INGENIERA Y ARQUITECTURA

PROGRAMA DE INGENIERA DE SISTEMAS


BASE DE DATOS II

Fecha:8/02/2011
Versin: 1

Sentencias DDL (I) - CREATE TABLE, CREATE SEQUENCE


CREATE TABLE
Una vez que hemos analizado los requerimientos de usuario, hemos diseado el modelo
relacional de nuestra Base de Datos y hemos derivado a partir de ste un esquema
relacional, nuestra tarea es crear las relaciones, que en Oracle llamamos tablas con sus
respectivas ligaduras de integridad relacional. Ya que las tablas es donde vamos a guardar
la informacin que va a ser gestionada por el SGBDR, podemos decir que la principal
sentencia DDL de cualquier SGBDR es la sentencia CREATE TABLE. Esta sentencia
nos permite crear una nueva tabla donde almacenar la informacin de la Base de Datos.
La sintaxis de la sentencia CREATE TABLE es la siguiente:
CREATE TABLE esquema.tabla (
Columna tipo_de_datos constraints,
Columna tipo_de_datos constraints,
Columna tipo_de_datos constraints,

)
Tipos de Datos.
Los tipos de datos nos permiten definir a que dominio pertenecern los datos que se
guardaran en la columna especificada. El dominio define la naturaleza de los datos que
sern guardados en cada una de las columnas. Oracle provee de los siguientes tipos de
datos:

FACULTAD DE INGENIERA Y ARQUITECTURA


PROGRAMA DE INGENIERA DE SISTEMAS
BASE DE DATOS II

Fecha:8/02/2011
Versin: 1

Tipos de Datos Alfanumricos: Nos permiten definir columnas cuyo domino va a


ser alfanumrico, es decir, cualquier cantidad de caracteres y nmeros. Los tipos de
datos alfanumricos pueden ser de tamao fijo como CHAR y NCHAR, o de
tamao variable como VARCHAR2, NVARCHAR2, LONG, CLOB NCLOB.
Tipos de Datos Numricos: Nos permiten definir datos cuyo dominio ser numrico
y son susceptibles de ser utilizados en clculos. Oracle nos provee del tipo de datos
NUMBER , el cual modela cualquier tipo de nmero, y los tipos de datos especiales
del sistema ROWID y UROWID.

FACULTAD DE INGENIERA Y ARQUITECTURA


PROGRAMA DE INGENIERA DE SISTEMAS
BASE DE DATOS II

Fecha:8/02/2011
Versin: 1

Tipos de Datos de Fecha: Si lo que queremos definir es un domino de fecha, hora u


fecha y hora, entonces Oracle nos provee del tipo de dato DATE.
Tipos de Datos Binarios: Finalmente, si no queremos especificar un formato
especfico para nuestros datos sino que queremos manejarlos como una serie de bits
(tal es el caso de columnas que guardan una imagen u otro formato de archivo), el
dominio de los datos binarios, implementados en Oracle con los tipos de datos
RAW, LONG RAW, BLOB, BFILE son los ms adecuados.
Constraints.
Un constraint es una regla de validacin que debe cumplir una columna para considerarse
vlida. Si al momento de manipular los datos de una tabla, se viola un constraint, entonces
la manipulacin no ser exitosa. Los constraints disponibles en Oracle son los siguientes:

DEFAULT: Define un valor por defecto para la columna. Si se inserta un nuevo


registro a la tabla y no se define un valor para la columna, esta tomar el valor que
se especifique con este constraint. El valor debe estar dentro del dominio de la
columna.
NOT NULL: La columna no puede tener valores nulos. Cualquier intento de
manipular la informacin para introducir valores NULL, tendr como resultado un
fracaso.
NULL: La columna puede tener valores nulos. Si se inserta un nuevo registro a la
tabla y no se define un valor para la columna, esta tomar el valor NULL.

FACULTAD DE INGENIERA Y ARQUITECTURA


PROGRAMA DE INGENIERA DE SISTEMAS
BASE DE DATOS II

Fecha:8/02/2011
Versin: 1

UNIQUE: La columna solo puede tener valores nicos, es decir, no puede repetirse
ningn valor dentro de la columna.
PRIMARY KEY: La columna es parte de la llave primaria de la tabla.
REFERENCES: La columna es una llave fornea de la tabla que hace referencia a
la columna de la tabla especificados en la sentencia.
CHECK: Verifica una regla de validacin antes de manipular la columna; la
verificacin puede incluir clculos sobre otras columnas de la tabla.
CREATE SEQUENCE
La sentencia CREATE SEQUENCE nos permite crear una nueva serie que se va
incrementando automticamente. La serie es independiente de cualquier tabla de la Base de
Datos y es til cuando deseamos crear valores secuenciales para ser asignados a las llaves
primarias de las tablas de nuestro esquema. La sintaxis es:

Para acceder a la secuencia se usan las funciones secuencia.CURRVAL y


secuencia.NEXTVAL.
CURRVAL: Retrona el nmero actual de la serie, pero no la actualiza.
NEXTVAL: Trae el siguiente nmero de la serie y la actualiza.

FACULTAD DE INGENIERA Y ARQUITECTURA


PROGRAMA DE INGENIERA DE SISTEMAS
BASE DE DATOS II

Fecha:8/02/2011
Versin: 1

En base a esta informacin y teniendo en cuenta el esquema relacional


1. Puesto {id_puesto, descripcion, min_salario, max_salario}
2. Sucursal {id_sucursal, nombre, ciudad, departamento, pais}
3. Empleado {id_empleado, pnombre, snombre, apellido, id_puesto, salario,
id_sucursal, enganche}
Y las caractersticas:
Tabla Puesto
La descripcin del puesto debe ser por defecto posicin nueva
El salario minimo del puesto no debe ser menor a $350000
El salario mximo del puesto no debe sobrepasar $2500000
Todos los campos de la tabla puesto son obligatorios
Tabla Sucursal
El valor por defecto del campo pas de la sucursal es COLOMBIA
El id_sucursal de las sucursales debe ser igual a {1389, 0736, 0877, 1622,
1756} o ser un nmero de cuatro digitos que comienzen con 99
Solo la llave primaria es obligatoria para la tabla sucursal
Tabla Empleado
La fecha de enganche del empleado es por defecto la fecha del sistema.
La sucursal por defecto es la 9952
El salario por defecto es de $350000
Todos los campos son obligatorios.
Cree las siguientes secuencias:
Seqpuesto, una secuencia que comience en uno y tenga incrementos de una unidad.
Seqsucursal, una secuencia que comience en uno y tenga incrementos de una
unidad.
seqempleado, una secuencia que comience en uno y tenga incrementos de una
unidad.
Utilice sentencias DDL para crear la Base de Datos mencionada. Recuerde utilizar su
usuario para almacenar las tablas en su esquema.

También podría gustarte