Constraints: Son validaciones en cada campo a nivel de creación de tablas. Por ejemplo no puedes borrar un registro de un archivo si existe un registro en otro archivo que depende del primero. Su ventaja principal es que limita la "basura" en los archivos e impide eliminaciones accidentales.

    TIPOS DE CONTRAINTS

  • CHECK

La restricción CHECK asegura que todos los valores en una columna cumplan ciertas condiciones.

Por ejemplo, en la siguiente instrucción,

CREATE TABLE Customer
(SID integer CHECK (SID > 0),
Last_Name varchar (30),
First_Name varchar(30));

La columna “SID” sólo debe incluir enteros mayores a 0.

  • NOT NULL

En forma predeterminada, una columna puede ser NULL. Si no desea permitir un valor NULL en una columna, querrá colocar una restricción en esta columna especificando que NULL no es ahora un valor permitido.

Por ejemplo, en la siguiente instrucción,

CREATE TABLE Customer
(SID integer NOT NULL,
Last_Name varchar (30) NOT NULL,
First_Name varchar(30));

Las columnas “SID” y “Last_Name” no incluyen NULL, mientras que “First_Name” puede incluir NULL.

  • UNIQUE KEY

La restricción UNIQUE asegura que todos los valores en una columna sean distintos.

Por ejemplo, en la siguiente instrucción,

CREATE TABLE Customer
(SID integer Unique,
Last_Name varchar (30),
First_Name varchar(30));

La columna “SID” no puede incluir valores duplicados, mientras dicha restricción no se aplica para columnas “Last_Name” y “First_Name”.

Por favor note que una columna que se especifica como clave primaria también puede ser única. Al mismo tiempo, una columna que es única puede o no ser clave primaria.

  • PRIMARY KEY (CLAVE PRIMARIA):

La clave primaria se utiliza para identificar en forma única cada línea en la tabla. Puede ser parte de un registro real, o puede ser un campo artificial (uno que no tiene nada que ver con el registro real). Una clave primaria puede consistir en uno o más campos en una tabla. Cuando se utilizan múltiples campos como clave primaria, se los denomina claves compuestas.

Las claves primarias pueden especificarse cuando se crea la tabla (utilizando CREATE TABLE) o cambiando la estructura existente de la tabla (utilizando ALTER TABLE).

A continuación se presenta un ejemplo para la especificación de una clave primaria cuando se crea una tabla:

MySQL:


CREATE TABLE Customer
(SID integer,
Last_Name varchar(30),
First_Name varchar(30),
PRIMARY KEY (SID));

A continuación se presenta un ejemplo para la especificación de una clave primaria al modificar una tabla:

MySQL:

ALTER TABLE Customer ADD PRIMARY KEY (SID);

Nota: Antes de utilizar el comando ALTER TABLE para agregar una clave primaria, necesitará asegurarse de que el campo esté definido como 'NOT NULL' -- en otras palabras, NULL no puede aceptarse como valor para ese campo.

  • FOREIGN KEY (CLAVE EXTERNA):

Una clave externa es un campo (o campos) que señala la clave primaria de otra tabla. El propósito de la clave externa es asegurar la integridad referencial de los datos. En otras palabras, sólo se permiten los valores que se esperan que aparezcan en la base de datos.


Por ejemplo, digamos que tenemos dos tablas, una tabla CUSTOMER que incluye todos los datos del CUSTOMER, y la tabla ÓRDENES que incluye los pedidos del CUSTOMER. La restricción aquí es que todos los pedidos deben asociarse con un CUSTOMER que ya se encuentra en la tabla CUSTOMER. En este caso, colocaremos una clave externa en la tabla ORDERS y la relacionaremos con la clave primaria de la tabla CUSTOMER. De esta forma, nos aseguramos que todos los pedidos en la tabla ORDERS estén relacionadas con un CUSTOMER en la tabla CUSTOMER. En otras palabras, la tabla ORDERS no puede contener información de un CUSTOMER que no se encuentre en la tabla CUSTOMER.

La estructura de estas dos tablas será la siguiente:



Tabla CUSTOMER



nombre de columna

característica

SID

Clave Primaria

Last_Name


First_Name



Tabla ORDERS



nombre de columna

característica

Order_ID

Clave Primaria

Order_Date


Customer_SID

Clave Externa

Amount



En el ejemplo anterior, la columna Customer_SID en la tabla ORDERS es una clave externa señalando la columna SID en la tabla CUSTOMER.

A continuación se muestra un ejemplo de cómo especificar la clave externa a la hora de crear la tabla ORDERS:



MySQL:


CREATE TABLE ORDERS
(Order_ID integer,
Order_Date date,
Customer_SID integer,
Amount double,
Primary Key (Order_ID),
Foreign Key (Customer_SID) references CUSTOMER(SID));



A continuación se presenta un ejemplo para la especificación de una clave externa al modificar una tabla: Esto asume que se ha creado la tabla ORDERS, y que la clave externa todavía no se ha ingresado:



MySQL:


ALTER TABLE ORDERS
ADD FOREIGN KEY (customer_sid) REFERENCES CUSTOMER(SID);



Trigger: Es un procedimiento que se ejecuta cuando se cumple una condición establecida al realizar una operación de inserción (INSERT), actualización (UPDATE) o borrado (DELETE). Son usados para mejorar la administración de la Base de datos, sin necesidad de contar con que el usuario ejecute la sentencia de SQL.

Además, pueden generar valores de columnas, previene errores de datos, sincroniza tablas, modifica valores de una vista, etc.

Permite implementar programas basados en paradigma lógico (sistemas expertos, deducción).


TIPOS:

Existen dos tipos de disparadores que se clasifican según la cantidad de ejecuciones a realizar:

    - Row Triggers (o Disparadores de fila): son aquellas que se ejecutaran n-veces si se llama n-veces desde la tabla asociada al trigger

    - Statement Triggers (o Disparadores de secuencia): son áquellos que sin importar la cantidad de veces que se cumpla con la condición, su ejecución es única.


    FUNCTIONS: permiten almacenar registros almacenados en una base de datos estilo-dbm. Este tipo de base de datos almacena parejas clave/valor (a diferencia de los registros completos soportados por las bases de datos relacionales).


    PROCEDURES: Su implementación varía de un manejador de bases de datos a otro. La ventaja de un procedimiento almacenado es que al ser ejecutado, en respuesta a una petición de usuario, es ejecutado directamente en el motor de bases de datos, el cual usualmente corre en un servidor separado. Como tal, posee acceso directo a los datos que necesita manipular y sólo necesita enviar sus resultados de regreso al usuario, deshaciéndose de la sobrecarga resultante de comunicar grandes cantidades de datos salientes y entrantes.


    PACKAGES: Un package es una agrupación de clases afines. Equivale al concepto de librería existente en otros lenguajes o sistemas. Una clase puede definirse como perteneciente a un package y puede usar otras clases definidas en ese o en otros packages.

Los packages delimitan el espacio de nombres (space name). El nombre de una clase debe ser único dentro del package donde se define. Dos clases con el mismo nombre en dos packages distintos pueden coexistir e incluso pueden ser usadas en el mismo programa.

Una clase se declara perteneciente a un package con la clausula package, cuya sintaxis es:

package nombre_package;

La clausula package debe ser la primera sentencia del archivo fuente. Cualquier clase declarada en ese archivo pertenece al package indicado.

Por ejemplo, un archivo que contenga las sentencias:

package miPackage;
. . .
class miClase {
. . .

declara que la clase miClase pertenece al package miPackage.

La claúsula package es opcional. Si no se utiliza, las clases declaradas en el archivo fuente no pertenecen a ningún package concreto, sino que pertenecen a un package por defecto sin nombre.

La agrupación de clases en packages es conveniente desde el punto de vista organizativo, para mantener bajo una ubicación común clases relacionadas que cooperan desde algún punto de vista. También resulta importante por la implicación que los packages tienen en los modificadores de acceso

INDICE: Un índice es un objeto de base de datos que ayuda al servidor a encontrar un dato más rápidamente

INDICE ÚNICO: Un índice único es un índice que no permite valores duplicados

Ejemplo:

create unique index idx_u_authors_1

on authors(au_id)


Apropiado cuando cada valor en la columna indizada debe ser único


Ejemplo:

select * from authors

where au_id = "213-46-8915"


Puede ser creado solamente sobre columnas que no tengan valores duplicados


INDICE COMPUESTO: Un índice compuesto es un índice creado sobre dos o más columnas


Ejemplo:

create index idx_authors_3

on authors(au_lname, au_fname)


Apropiado cuando las consultas se hacen sobre múltiples columnas


Ejemplo:

select * from authors

where au_lname = "Ringer" and au_fname = "Anne"

    TIPO DE DATOS


    Tipo de datos Adabas

    Tipo de datos de SQL

    Longitud

    Descripción

    Fecha de Adabas Natural

    FECHA

    4

    Adabas Natural Tiempo

    TIEMPO

    7

    Binario

    BINARY

    1-30000

    El campo binario no se convierte. Proporciona acceso a crudo, los datos sin alterar.

    Char (Derecho rellena con espacios)

    BINARY (Texto)

    -1

    Los datos binarios.

    Doble float Prec (Mainframe)

    DOBLE

    8

    8-byte de gran precisión de mainframe endian doble: USAGE COMP-2

    LongWord (BE)

    SQL_INTEGER

    4

    USAGE COMP

    Bolsas Decimal -> Entero

    LARGO

    1-5

    Decimal empaquetado (1-255 bytes) se convierte en un largo plazo.

    Firmado Overpunch -> Decimal

    DECIMAL

    1-17 caracteres

    Overpunched Decimal convierte a SQL decimal.

    Single Prec float (Mainframe)

    REAL

    4

    4-byte big-endian float mainframe: USAGE COMP-1

    Texto (terminada en nulo)

    VARCHAR

    -1

    USAGE COMP

    Word (Big Endian)

    SQL_SMALLLINT

    2

    USAGE COMP

0 comentarios:

Publicar un comentario

Equ!pO

Equ!pO

...o0°[†Ø Ð∂†∂ ک†Øяε]°0o...

El sector de la confección presenta dificultades a la hora de realizar sus procesos de mercadeo y venta de los productos y asi mismo carece de un sistema que permita llevar un registro con las sugerencias de sus clientes, lo que genera que sus procedimientos sean poco ágiles y requiera un mayor papeleo en el manejo de la información.

¿Cómo te parece este sitio?