5
PAUL VERA RODRIGUE[SISTEMAS “X”] BASE DE DATOS SGBD (Sistema de gestión de base de datos) o en inglés Database management system (DBMS), es una agrupación de programas que sirven para definir, construir y manipular una base de datos . * Definir una base de datos: consiste en especificar los tipos de datos , estructuras y restricciones para los datos que se almacenarán . * Contruir una base de datos: es el proceso de almacenar los datos sobre algún medio de almacenamiento . * Manipular una base de datos: incluye funciones como consulta , actualización, etc. de bases de datos. Si el sistema soporta bases de datos relacionales se llama RDBMS en inglés o SGBDR en español. Otras funciones de los SGBD * En la manipulación de una base de datos, los SGBD deben incluir un control de concurrencia, o sea, deben permitir a varios usuarios tener acceso "simultáneo" a la base de datos. Controlar la concurrencia implica que si varios usuarios acceden a la base de datos, la actualización de los datos se haga de forma controlada para que no haya problemas. * Un SGBD también debe encargase de cumplir las reglas de integridad y redundancias . * Otra función importante en un SGBD es su capacidad de realizar copias de seguridad y de recuperación de datos. * Restricción de accesos no autorizados. * Suministrar múltiples interfaces de usuario. * Representar relaciones complejas entre los datos. Clasificación de los SGBD

Paul vera sistemas x

Embed Size (px)

DESCRIPTION

SISTEMA DE GESTION DE BASE DE DATOS Autor Paul Vera (UTEQ - UED)

Citation preview

PAUL VERA RODRIGUE[SISTEMAS “X”] BASE DE DATOS

SGBD

(Sistema de gestión de base de datos) o en inglés Database management system

(DBMS), es una agrupación de programas que sirven para definir, construir y manipular

una base de datos.

* Definir una base de datos: consiste en especificar los tipos de datos, estructuras y

restricciones para los datos que se almacenarán.

* Contruir una base de datos: es el proceso de almacenar los datos sobre algún medio

de almacenamiento.

* Manipular una base de datos: incluye funciones como consulta, actualización, etc. de

bases de datos.

Si el sistema soporta bases de datos relacionales se llama RDBMS en inglés o SGBDR en

español.

Otras funciones de los SGBD

* En la manipulación de una base de datos, los SGBD deben incluir un control de

concurrencia, o sea, deben permitir a varios usuarios tener acceso "simultáneo" a la

base de datos. Controlar la concurrencia implica que si varios usuarios acceden a la

base de datos, la actualización de los datos se haga de forma controlada para que no

haya problemas.

* Un SGBD también debe encargase de cumplir las reglas de integridad y redundancias.

* Otra función importante en un SGBD es su capacidad de realizar copias de seguridad y

de recuperación de datos.

* Restricción de accesos no autorizados.

* Suministrar múltiples interfaces de usuario.

* Representar relaciones complejas entre los datos.

Clasificación de los SGBD

PAUL VERA RODRIGUE[SISTEMAS “X”] BASE DE DATOS

Esta clasificación está basada en el modelo de datos en que está basado el SGBD. Los

modelos de datos más habituales son:

* Relacional (SGBDR): representa a la base de datos como una colección de tablas.

Estas bases de datos suelen utilizar SQL como lenguaje de consultas de alto nivel.

* Orientado a objetos: define a la base de datos en términos de objetos, sus

propiedades y sus operaciones. Todos los objetos que tienen la misma estructura y

comportamiento pertenecen a una clase y las clases de organizan en jerarquías.

* Objeto-relacional o relacional extendido: son los sistemas relacionales con

características de los orientado a objetos.

* Jerárquico: representa los datos como estructuras jerárquicas de árbol.

* En red o CODASYL DBTG.

Un SGBD también puede clasificarse por el número de usuario a los que da servicio:

* Monousuario

* Multiusuario

También puede clasificarse según el número de sitios en los que está distribuida la base

de datos:

* Centralizado: la base de datos y el software SGBD están almacenados en un solo sitio

(una sola computadora).

* Distribuido (SGBDD): la base de datos y el software SGBD pueden estar distribuidos

en múltiples sitios conectados por una red.

Breve historia de los SGBDR

El modelo relacional fue presentado en la década del 70, y a partir de ese momento

comenzaron a desarrollarse múltiples sistemas para gestionar las bases de datos

relacionales. IBM fue una de las pioneras en el desarrollo de productos comerciales

sobre SGBD relacionales; algunos de sus productos fueron el SQL/DS para los entornos

DOS/VSE y VM/CMS, y el DB2 para el sistema operativo MVS en 1983.

PAUL VERA RODRIGUE[SISTEMAS “X”] BASE DE DATOS

En tanto, INGRES fue otro SGBDR desarrollado por la Universidad de Berkeley a

principios de los setenta. Luego se convirtió en comercial y comenzó a ser distribuido

por Ingres Inc. y luego por Computer Associates.

Otras marcas comerciales de SGBDR son Oracle de Oracle Inc., Sybase de Sybase Inc.,

RDB de Digital Equipment Corp. de Compaq, INFORMIX de Informix Inc. y UNIFY de

Unify Inc.

Además de los SGBDR mencionados, en los ochenta aparecen múltiples aplicaciones

para PCs como ser RIM, RBASE 5000, PARADOX, OS/2 Database Manager, DBase IV,

XDB, WAT-COM SQL, SQL Server (de Sybase Inc.), SQL Server (de Microsoft), Access,

etc.

BASE DE DATOS REALCIONAL

Una base de datos relacional es un conjunto de una o más tablas estructuradas en registros (líneas) y campos (columnas), que se vinculan entre sí por un campo en común, en ambos casos posee las mismas características como por ejemplo el nombre de campo, tipo y longitud; a este campo generalmente se le denomina ID, identificador o clave. A esta manera de construir bases de datos se le denomina modelo relacional.

Estrictamente hablando el término se refiere a una colección específica de datos pero a menudo se le usa, en forma errónea como sinónimo del software usado para gestionar esa colección de datos. Ese software se conoce como SGBD (sistema gestor de base de datos) relacional o RDBMS (del inglés relational database management system).

Las bases de datos relacionales pasan por un proceso al que se le conoce como normalización de una base de datos, el cual es entendido como el proceso necesario para que una base de datos sea utilizada de manera óptima.

Entre las ventajas de este modelo están:

1. Garantiza herramientas para evitar la duplicidad de registros, a través de campos claves o llaves.

2. Garantiza la integridad referencial: Así al eliminar un registro elimina todos los registros relacionados dependientes.

3. Favorece la normalización por ser más comprensible y aplicable.

PAUL VERA RODRIGUE[SISTEMAS “X”] BASE DE DATOS

PALABRAS QUE SE USAN EN SGBD

SELECT: corresponde a la operación proyección del algebra relacional, y se usa

para mostrar los atributos deseados de una consulta.

FROM: corresponde a la operación producto cartesiano del algebra relacional

Lista las relaciones que deben ser analizadas en la evaluación

WHERE: corresponde al predicado selección del algebra relacional, es un

predicado que engloba a los atributos de las relaciones que aparecen en la clausula

from.

CREATE: Este comando crea un objeto dentro de la base de datos. Puede ser una

tabla, vista, índice, trigger, función, procedimiento o cualquier otro objeto que el

motor de la base de datos soporte.

ALTER: Este comando permite modificar la estructura de un objeto. Se pueden

agregar/quitar campos a una tabla, modificar el tipo de un campo, agregar/quitar

índices a una tabla, modificar un trigger, etc.

DROP: Este comando elimina un objeto de la base de datos. Puede ser una tabla,

vista, índice, trigger, función, procedimiento o cualquier otro objeto que el motor de

la base de datos soporte. Se puede combinar con la sentencia ALTER.

TRÚNCATE: Este comando trunca todo el contenido de una tabla. La ventaja

sobre el comando DELETE, es que si se quiere borrar todo el contenido de la tabla,

es mucho más rápido, especialmente si la tabla es muy grande, la desventaja es que

PAUL VERA RODRIGUE[SISTEMAS “X”] BASE DE DATOS

TRUNCATE solo sirve cuando se quiere eliminar absolutamente todos los registros,

ya que no se permite la cláusula WHERE.

INSERT: Una sentencia INSERT de SQL agrega uno o más registros a una (y sólo

una) tabla en una base de datos relacional.

UPDATE: Una sentencia UPDATE de SQL es utilizada para modificar los valores

de un conjunto de registros existentes en una tabla.

DELETE: Una sentencia DELETE de SQL borra cero o más registros existentes en

una tabla,

Commit work compromete la transacción actual; es decir, hace que los cambios

realizados por la transacción sean permanentes en la base de datos.

Rollback work causa el retroceso de la transacción actual; es decir, deshace todas

las actualizaciones realizadas por las instrucciones SQL de la transacción; así, el

estado de la base de datos se restaura al que existía previo a la ejecución de la

transacción.

char (n) es una cadena de caracteres de longitud fija, con una longitud n

especificada por el usuario. También se puede utilizar la palabra completa

character.

varchar (n) es una cadena de caracteres de longitud variable, con una longitud n

especificada por el usuario. También se puede utilizar la forma completa character

varying. int es un entero (un subconjunto finito de los enteros, que es dependiente de la

máquina). También se puede usar la palabra completa integer.

smallint es un entero pequeño (un subconjunto del dominio de los enteros, también

dependiente de la máquina).

numeric (p,d) es un número en coma flotante, cuya precisión la especifica el

usuario. El número está formado por p dígitos (más el signo), y de esos p dígitos, d

pertenecen a la parte decimal. Así, numeric (3,1) permite que el número 44,5 se

almacene exactamente, mientras que los números 444,5 y 0,32 no se pueden

almacenar exactamente en un campo de este tipo.

real, double precision son respectivamente números en coma flotante y números

en coma flotante de doble precisión, con precisión dependiente de la máquina.

float (n) es un número en coma flotante, cuya precisión es de al menos n dígitos.

date es una fecha del calendario, que contiene un año (de cuatro dígitos), un mes y

un día del mes.

time es la hora del día, expresada en horas, minutos y segundos. Se puede usar una

variante, time (p), para especificar el número de dígitos decimales para los

segundos (el número predeterminado es 0). También es posible almacenar la

información del uso horario junto al tiempo.

timestamp es una combinación de date y time. Se puede usar una variante,

timestamp(p), para especificar el número de dígitos decimales para los segundos (el

número predeterminado es 6).