basededatos diseño fisico

17
BASE DE DATOS DISEÑO FISICO DISEÑO FISICO LIC. DIEGO KRAUTHAMER PROFESOR ADJUNTO INTERINO SEDE BUENOS AIRES

Upload: diegokr

Post on 11-Nov-2014

28 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: BasedeDatos Diseño Fisico

BASE DE DATOSDISEÑO FISICODISEÑO FISICO

LIC. DIEGO KRAUTHAMERPROFESOR ADJUNTO INTERINOSEDE BUENOS AIRES

Page 2: BasedeDatos Diseño Fisico

AGENDA� Concepto de Diseño Físico� Lenguaje SQL

� Características

� Historia� Historia

� Componentes

� Herramientas Case: DBDesigner

Page 3: BasedeDatos Diseño Fisico

DISEÑO FISICO�Se definen las estructuras de almacenamiento y los métodos de acceso efectivo a los datos.� Se selecciona el Software de Base de Datos en el cuál se implementará la Base de Datos.cuál se implementará la Base de Datos.� Se utilizará DB2 Express-C.

Diseño Físico

Instrucciones de Lenguaje de

Definición de Datos (D.D.L)

Diagrama Lógico(Modelo Normalizado)

Page 4: BasedeDatos Diseño Fisico

LENGUAJE SQL� Es el Lenguaje Estructurado de Consultas o Structur edQuery Language.� Es de Cuarta Generación (4GL).� Es un estándar del mercado.� Historia

� 1974 – Donald Chamberlin IBM define las especificacio nes. Inicialmente se denómino SEQUEL.� 1976 – Primer Prototipo de SQL (SYSTEM/R) IBM� 1979 – Oracle 2 Primera Versión de Oracle � 1983 – Se empieza a comercializar DB2 de IBM� 1986 – Primera Versión del ANSI SQL SQL/86� 1989 –SQL Server Versión 1.0 para OS/2

Page 5: BasedeDatos Diseño Fisico

LENGUAJE SQL - COMPONENTES

� Lenguaje de Definición de Datos (D.D.L) � Se utiliza para crear la estructura física de la ba se de datos.� Instrucciones: CREATE, ALTER, DROP.

� Lenguaje de Manipulación de Datos (D.M.L).� Es usado para consultar la información alojada en l a Base de Datos�Instrucciones: SELECT.

� Lenguaje de Control de Datos (D.C.L)� Se aplica a la Seguridad de la Base de Datos.� Instrucciones: GRANT, REVOKE, DENY.

Page 6: BasedeDatos Diseño Fisico

LENGUAJE DE DEFINICION DE DATOSINSTRUCCIÓN CREATE

� instrucción CREATE� Creación de objetos de la base de datos (TABLAS)� Sintaxis:

CREATE TABLE [NOMBRE TABLA] (

� Campo: es el nombre de cada uno de los campos.� Null/Not Null: Indica si es campo puede contener o n o información Nula.

CREATE TABLE [NOMBRE TABLA] (NOMBRE_CAMPO TIPO_DATO NULL/NOT NULL RESTRICCIÓN,…………………,…………………);

Page 7: BasedeDatos Diseño Fisico

LENGUAJE DE DEFINICION DE DATOSTIPOS DE DATOS

� Es el tipo de información a ingresar dentro del cam po creado.

Categoría Tipo de Datos

Numérico IntegerNumérico Integer

Decimal(presición,escala)

Cadena Char(Longitud)

Varchar(Longitud)

Fecha y Hora Date

XML XML

Page 8: BasedeDatos Diseño Fisico

LENGUAJE DE DEFINICION DE DATOSRESTRICCIONES O CONSTRAINTS

� Forman parte del a definición de una tabla y permit en:� Forzar la unicidad del conjunto de columnas que def inen la clave primaria.� Forzar la unicidad de una columna (Unique)� Forzar valores predeterminados (Default)� Forzar valores predeterminados (Default)� Forzar la existencia de valores (Not Null)� Restringir el Domino de un Campo (Check)� Forzar la integridad referencial (Foreign Key).

� Pueden ser definidas a Nivel de Columna o a Nivel d e Tabla.

Page 9: BasedeDatos Diseño Fisico

RESTRICCIONES O CONSTRAINTSPRIMARY KEY

� Identifica univocamente a un campo o combinación de campos.� Definición a Nivel de Columna

CREATE TABLE PRODUCTO(CPROD INTEGER PRIMARY KEY,…………………,

Definición a Nivel de Tabla

…………………, …………………);

CREATE TABLE PRODUCTO(CPROD INTEGER,DESCRI VARCHAR(100), …………………,CONSTRAINT PK_CPROD PRIMARY KEY(CPROD)

);

Nombre de la

Restricción

Nombre del

CampoTipo de

Restricción

Page 10: BasedeDatos Diseño Fisico

RESTRICCIONES O CONSTRAINTSFOREIGN KEY

� Es una columna o combinación de columnas sobre las que se establece un vinculo de integridad referencial entr e dos tablas.� Representa una Jerarquía Padre-Hijo.� Definición a Nivel de Columna

� Solo se puede realizar a este nivel para claves simp les.� Solo se puede realizar a este nivel para claves simp les.

CREATE TABLE [NOMBRE_TABLA](NOMBRE_CAMPO TIPO_DATO CONSTRAINT [NOMBRE] TABLA_PADRE(CAMPO1),…………………);

CREATE TABLE FACTURA(CODCLI INTEGER CONSTRAINT FK_CODCLI CLIENTE(CODCLI),……………………………………);

� Ejemplo :

Page 11: BasedeDatos Diseño Fisico

RESTRICCIONES O CONSTRAINTSFOREIGN KEY

� Definición a Nivel de Tabla:�Se puede realizar a nivel claves simples o compuesta s�Sintaxis:

CREATE TABLE [NOMBRE_TABLA](NOMBRE_CAMPO TIPO_DATO CONSTRAINT [NOMBRE] NOMBRE_CAMPO TIPO_DATO CONSTRAINT [NOMBRE] FOREIGN KEY(CAMPO1,CAMPO2) REFERENCES TABLA_PADRE(CAMPO1,CAMPO2));

CREATE TABLE FACTURA(NFACT INTEGER PRIMARY KEY,FECHA DATE,CODCLI INTEGER,CONSTRAINT FK_CODCLI FOREIGN KEY(CODCLI)REFERENCES CLIENTE(CODCLI));

� Ejemplo :

Page 12: BasedeDatos Diseño Fisico

RESTRICCIONES O CONSTRAINTSCHECK

� Son restricciones de dominio. Se definen a través d e una condición:� Definición a Nivel de Columna

CREATE TABLE [NOMBRE_TABLA](…………………, NOMBRE_CAMPO TIPO_DATO CHECK(CONDICION) NOMBRE_CAMPO TIPO_DATO CHECK(CONDICION) …………………);

CREATE TABLE DETALLE_FACTURA(NFACT INTEGER,CPROD INTEGER, CANTIDAD INTEGER CHECK(CANTIDAD > 0),CONSTRAINT PK_CPROD PRIMARY KEY(NFACT,CPROD)

);

� Ejemplo :

Page 13: BasedeDatos Diseño Fisico

RESTRICCIONES O CONSTRAINTSCHECK

� Son restricciones de dominio. Se definen a través d e una condición.� Definición a Nivel de Columna

CREATE TABLE [NOMBRE_TABLA](…………………, NOMBRE_CAMPO TIPO_DATO CHECK(CONDICION) NOMBRE_CAMPO TIPO_DATO CHECK(CONDICION) …………………);

CREATE TABLE DETALLE_FACTURA(NFACT INTEGER,CPROD INTEGER, CANTIDAD INTEGER CHECK(CANTIDAD > 0),CONSTRAINT PK_CPROD PRIMARY KEY(NFACT,CPROD)

);

� Ejemplo :

Page 14: BasedeDatos Diseño Fisico

RESTRICCIONES O CONSTRAINTSCHECK

� Definición a Nivel de Tabla� Sintaxis

CREATE TABLE [NOMBRE_TABLA](…………………, CONSTRAINT NOMBRE TIPO_DATO CHECK(CONDICION), CONSTRAINT NOMBRE TIPO_DATO CHECK(CONDICION), …………………);

CREATE TABLE DETALLE_FACTURA(NFACT INTEGER,CPROD INTEGER, CANTIDAD INTEGER,CONSTRAINT CK_CANTIDAD CHECK(CANTIDAD > 0),CONSTRAINT PK_CPROD PRIMARY KEY(NFACT,CPROD)

);

� Ejemplo:

Page 15: BasedeDatos Diseño Fisico

RESTRICCIONES O CONSTRAINTSUNIQUE

� Impide que el valor de un campo aparezca más de una vez.�A nivel de columna:

CREATE TABLE EMPLEADO(LEGAJO INTEGER NOT NULL PRIMARY KEY,NOMBRE VARCHAR(50),NOMBRE VARCHAR(50),LEGAJO_JEFE INTEGER NOT NULL UNIQUE

);

CREATE TABLE EMPLEADO(LEGAJO INTEGER NOT NULL PRIMARY KEY,NOMBRE VARCHAR(50),LEGAJO_JEFE INTEGER NOT NULL,UNIQUE(LEGAJO JEFE)

);

� A nivel de tabla:

Page 16: BasedeDatos Diseño Fisico

LENGUAJE DE DEFINICION DE DATOSINSTRUCCION ALTER

� Instrucción ALTER� Se utiliza para modificar la estructura de un objet o dentro de la base de datos. �Sintaxis:

� Ejemplo: Agregar el campo línea a la tabla Producto .

� Ejemplo: Eliminar el campo descri a la tabla Product o.

ALTER TABLE [NOMBRE TABLA][ADD/DROP];

ALTER TABLE PRODUCTO ADD LINEA VARCHAR(50);

ALTER TABLE PRODUCTO DROP DESCRI;

Page 17: BasedeDatos Diseño Fisico

LENGUAJE DE DEFINICION DE DATOSINSTRUCCION DROP

� Instrucción DROP� Se utiliza para eliminar objetos dentro de la base de datos� Sintaxis:

DROP TABLE [NOMBRE TABLA];

� Ejemplo: Borrado de la tabla Factura

DROP TABLE FACTURA;