Developer's Diary

14 marzo, 2011

Curso Oracle Rápido – Comenzando Oracle II

Filed under: BBDD, Programación, Sin categoría — Etiquetas: , , , , , , , , , — jnavero @ 8:13 PM

—- Nos mudamos: http://devthisblog.namocode.es
—————————————————————–
Hace tiempo que comencé a escribir este tutorial pero, por falta de tiempo voy retrasado por lo que pido disculpas por los retrasos. Aqui dejo el siguiente capitulo.

Proximamente pondré la version descargable (en pdf).

Índice del capítulo.

Índice del capítulo.                            2
Recapitulando.                                     2
Modificación de las tablas               2
Restricciones, ampliación               3
Primary Key                                          3
Foreign key                                            3
Unique                                                      4
Default                                                      4
Check                                                        4
Deshabilitando las restricciones   4

Recapitulando.
En el capitulo anterior, vimos un poco que es Oracle, y las sentencias para la creación de tablas así como la forma de crear algunas restricciones (Claves primarias y foráneas). En este capítulo continuaremos con DDL.
Modificación de las tablas
En el capitulo anterior, vimos como se creaban las tablas con create table. Pues bien, supongamos que deseamos insertar alguna columna mas, borrarla, cambiar el tipo, etc.
Para este tipo de acciones utilizaremos Alter Table de la siguiente forma:
alter table [esquema.]tabla(
{add columna tipo| modify columna tipo | drop columna }
)
Además de las columnas también sirve para modificar las restricciones, insertarlas o borrarlas.
Expongo ejemplos del uso de alter table.
En el capitulo anterior creamos una tabla llamada equipo, de momento será nuestro “conejillo de indias para hacer los cambios.”

Insertando una columna:
alter table equipo
add organismo  varchar(15);

Modificando una columna:
alter table equipo
modify organismo number(5);

Eliminando una columna:
alter table equipo
drop column organismo;

Añadiendo una restricción
alter table equipo
add constraint nuevarestriccion

Eliminando una restricción
alter table equipo
drop constraint nuevarestriccion
Restricciones, ampliación
En el capitulo anterior vimos poco las restricciones, en este capítulo veremos un poco cada una de ellas por separado, aunque los ejemplos están realizados con alter table, también se pueden asignar las restricciones en el momento de la creación de la tabla.
Primary Key
Define la clave primaria de una tabla, pueden ser una o varias columnas e identifican de forma univoca un registro (no puede contener registros duplicados)
Ejemplo:
alter table equipo
add constraint pk_iddenom
primary key (denom)

Foreign key
Indica la clave foránea son los índices necesarios para mantener la integridad referencial entre las diferentes tablas
Ejemplo:
Alter table corredor
Add constraint fk_corredor
Foreign key (corredor)
References equipo(denom)
Unique
Esta restricción sirve para indicar que una fila es única y no puede estar repetida.

Ejemplo:
alter table equipo
add constraint unique_pais
unique (país)
Default
Asigna un valor por defecto a una columna, de este modo cuando insertemos un dato en la columna si no se especifica un valor concreto, se asignará el valor por defecto automáticamente.

Ejemplo:
alter table equipo
modify país default ‘ES’;
En este ejemplo se asigna como valor por defecto ES al país, siempre y cuando al insertar un registro, no insertemos un valor para el país.
Check
Realiza una verificación de los valores que se asignan en un registro concreto.

Ejemplo:
alter table equipo
add constraint chk_ncorredores
check (n_corredores between 5 and 500)
En este ejemplo, se chequea que el número de corredores esté entre 5 y 500.
Deshabilitando las restricciones
Cuando se definen las restricciones podemos activarlas o desactivarlas cuando queramos. Con with nocheck. Buscando información sobre esto en diferentes manuales y por internet he visto la sentencia enable y disable la cual no he podido probar, en el próximo capítulo pondré una notación de si funciona o no.

Ejemplos de utilización:
alter table equipo
with nocheck
add constraint chk_corredores
check (n_corredores between 5 and 500)

Anuncios

Dejar un comentario »

Aún no hay comentarios.

RSS feed for comments on this post. TrackBack URI

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: