Download Diapositiva 1 - Docencia FCA-UNAM

Document related concepts

SQL wikipedia , lookup

Lenguaje de manipulación de datos wikipedia , lookup

Microsoft SQL Server wikipedia , lookup

Trigger (base de datos) wikipedia , lookup

Lenguaje de definición de datos wikipedia , lookup

Transcript
UNIVERSIDAD LATINA
BASES DE DATOS
PLATAFORMA TEÓRICO-CONCEPTUAL
TERMINOLOGÍA
Algunos términos importantes que podemos mencionar son:
Clave.- campo que contiene información única, se le llama campo clave
Registro Físico o Bloque. Un bloque, en informática, es la cantidad más pequeña de
datos que pueden transferirse en una operación de entrada/salida entre la memoria
principal de una computadora y los dispositivos periféricos o viceversa.
Factor de Bloqueo. Es el número de registros lógicos que puede contener como
máximo un registro físico o bloque.
Tipos de Datos. Los tipos de datos hacen referencia al tipo de información que se
trabaja, donde la unidad mínima de almacenamiento es el dato. Estructuras de
Datos. Es una es una forma de organizar un conjunto de datos elementales con el
objetivo de facilitar su manipulación.
Tipos Abstractos de Datos. (TAD) es un modelo matemático compuesto por una
colección de operaciones definidas sobre un conjunto de datos para el modelo.
TERMINOLOGÍA
Campo : Es la unidad de información lógicamente significativa más pequeña en un
archivo. Un registro de un archivo está compuesto de varios campos.
Registro: Conjunto de campos relacionados. Por ejemplo los datos de una
factura, como el RUT, NOMBRE, FECHA, DIRECCION, pueden conformar un
registro.
Acceso directo: Modo de acceder a un archivo, que implica saltar al lugar
preciso donde se encuentra un registro.
Acceso secuencial: Modo de acceder a un archivo, que implica leer el archivo
desde el principio y continuar hasta que se haya leído todo lo necesario.
Búsqueda secuencial : Método de búsqueda en un archivo, que implica leer el
archivo desde el principio y continuar haciéndolo hasta que se haya encontrado el
registro deseado.
Método de acceso: Enfoque proporcionado para localizar información en un
archivo.
Características de los Campos
Longitud: Es el tamaño del campo, medido en caracteres. Puede ser fija o
variable.
Clase: Es la definición del tipo de dato que será almacenado en el campo. Los
tipos de datos más comunes son: • Numéricos, • Binarios, • Alfabéticos,
Alfanuméricos y Lógicos
Alineamiento: Es la ubicación del dato dentro del campo. Las posiciones típicas
son a la izquierda y a la derecha.
Relleno: Un campo, dependiendo del sistema computacional, una vez definida
su clase puede ser llenado por el sistema, con valores predeterminados o por
defecto. Para los números se utiliza típicamente los ceros y para los caracteres
se usan los blancos. Puede no existir relleno.
Estructura de Registro
Posicional: En esta representación cada campo tiene una posición fija
dentro del registro.
• Relacional: Los Valores pueden se de cualquier largo, y la forma de
distinguirlos es a través de un separador, el que debe ser tal que no
pertenezca al conjunto de valores posibles para los registro.
• Rotulada: Los campos atributos se especifican explícitamente en esta
representación. Para esta representación se usan rótulos que identifican
cada campo.
Longitud del Registro
La longitud de los registros puede ser fija o
variable. En el caso de registros de longitud
fija, la longitud de los campos es fija. En el
caso de los registros de longitud variable, se
puede tener dos casos: que los campos sean de
longitud fija o longitud variable.
Conceptos de la estructura: Presentación de datos
Estructura Jerárquica:
Campos.- espacio de almacenamiento para un dato en particular
(Ejem. Nombre)
Registros.- Conjunto de campos (Ejem. Registro de clientes)
Archivos.- Conjunto de registros (Ejem: Clientes, artículos,
proveedores)
Base de Datos.- Conjunto de archivos interrelacionados (Ejem. BD
empresa)
Sistema de archivos
Son los mecanismos y estructuras que el sistema
operativo utiliza para organizar la información en medios
físicos tales como discos y diskettes (aspecto físico del
sistema de archivos), y por otro a la visión que es
ofrecida al usuario para permitir la manipulación de la
información almacenada.
Manejadores de archivos
Los sistemas manejadores de archivos ("file manager")
son un tipo de software muy específicos,
dedicados a servir de interfaz entre la Base de
datos el usuario, y las aplicaciones que la
utilizan.
Base de Datos
Conjunto de datos almacenados en
archivos relacionados entre si que
tienen un significado implícito para la
toma de decisiones
Modelo de Base de Datos
Es el fundamento teórico de una base de datos
y determina de que manera los datos van a ser
guardados, organizados y manipulados en un
sistema de base de datos. De esta forma,
define la infraestructura ofrecida por un
sistema de base de datos particular.
El ejemplo mas popular de un modelo de base de
datos, es el modelo relacional
Sistema Manejador de Base de Datos
El sistema manejador de bases de datos (Data Base
Manager System) es la porción más importante del software
de un sistema de base de datos.
Un DBMS es una colección de numerosas rutinas de
software interrelacionadas, cada una de las cuales es
responsable de alguna tarea específica. Consiste en un
conjunto de programas, procedimientos y lenguajes que nos
proporcionan las herramientas necesarias para trabajar con
una base de datos. Incorporar una serie de funciones que
nos permita definir los registros, sus campos, sus
relaciones, insertar, suprimir, modificar y consultar los
datos.
Funciones de un Sistema Manejador de Base de Datos
Las funciones principales de un DBMS son:
Crear y organizar la Base de datos. Establecer
y mantener las trayectorias de acceso a la base
de datos de tal forma que los datos puedan ser
accesados rápidamente. Manejar los datos de
acuerdo a las peticiones de los usuarios.
Registrar el uso de las bases de datos.
Interacción con el manejador de archivos.
DBMS más populares
Nombre
Productos
Sybase
Adaptive Server
Oracle
Oracle8, Oracle8i, Oracle8iEE,
Oracle9i, Oracle 10g
PostgreSQL
PostgreSQL
Microsoft
Access, MS-SQL Server
MySQL
MySQL
Informix
Illustra, Universal Server, Dynamic
Server
IBM
DB2
Apache
Derby
SQLite
SQLite
Firebird
Firebird
Estadisticas
Criterios al elegir un (DBMS)
•
•
•
•
•
•
Número de usuarios
Número de transacciones
Cantidad de datos para almacenar
Consistencia en la información
Presupuesto
Experiencia propia o externa
300/500
5000
4GB
-nulo
--
Ejemplo: para MySQL / PostgreSQL
Requerimientos
Linux version Empresarial
Enlace a internet
1GB RAM, Disco Duro 50GB, Procesador P4
Que incluye el servicio
Instalación y configuración de Linux (RedHat Enterprise ó
SuSE Enterprise)
Instalación y configuración de base de datos con MySQL o
PostgreSQL
Licencialiento libre
Ejemplo: para Oracle 11g en Windows XP
Requisitos mínimos de Hardware:
Memoria Física (RAM) 1Gb
Memoria Virtual El doble de tamaño que la RAM (2Gb)
Espacio en disco Instalación Básica: 4.55Gb
Instalación Avanzada: 4.92Gb
Adaptación de Vídeo 256 colores
Procesador 550Mhz
Licenciamiento.- Con costo
Para que se utiliza el DBMS ?
Los sistemas de administración de bases de
datos son usados para:
a) Permitir a los usuarios acceder y manipular
la base de datos proveyendo métodos para
construir sistemas de procesamiento de datos
para aplicaciones que requieran acceso a
los datos. (Nivel de aplicaciones)
b) Proveer a los administradores las herramientas
que les permitan ejecutar tareas de mantenimiento
y administración de los datos (Nivel de administración).
Funciones del nivel de aplicaciones:
• Definición de la base de datos –
como la información va a ser almacenada y
organizada.
• Creación de la base de datos –
almacenamiento de datos en una base de datos
definida.
• Recuperación de los datos - consultas y
reportes.
• Actualización de los datos - cambiar los
contenidos de la base de datos.
• Programación de aplicaciones de para el
desarrollo de software.
Funciones del nivel de administración:
1. La administración del servidor de Base de Datos
(Detener, arrancar y reiniciar un servidor y sus opciones de arranque)
2. La administración del catalogo (Tablas, vistas del sistema)
3. La administración de la seguridad a la Base de Datos
(El esquema de acceso al servidor, usuarios, grupos, privilegios,
restricciones al servidor)
4. Monitoreo del comportamiento de la base de datos.
5. Respaldo y recuperación de datos (Generación de respaldos y la
restauración de datos y sus scripts).
6. Importación y exportación de datos
7. Programación de tareas rutinarias y procesos
8. Ajustes de Configuración y rendimiento
Entre otros…
Análisis, Diseño y cración Bases de Datos
Éstos son los pasos básicos para diseñar y crear una base de
datos:
1. Análisis de requerimientos. Determinar su finalidad a partir de
analizar un problema de necesidades de información.
2.Hacer un diseño conceptual. (Nivel general y abstracto EntidadRelación)
3.Hacer un modelo lógico. (Nivel detallado Entidad-Relación)
3.1.Determinar las tablas que se necesitan.
3.2.Determinar los campos que se incluirán en las tablas.
3.3.Determinar las relaciones entre las tablas.
4. Hacer un modelo físico. (Llevar el modelo lógico al SMBD,
almacenamiento y acceso)
5.Agregar datos.
6. Prueba de la integridad de la Base de Datos y ejecución de SQL
Lenguaje SQL
Es el lenguaje de programación para Bases de Datos.
El Lenguaje de Consulta Estructurado (SQL) es un lenguaje Standard
que funciona para interactuar con las Bases de Datos.
Nos centraremos especialmente en las siguientes Instrucciones
CREATE
INSERT
SELECT
UPDATE
DELETE
CREATE
CREATE es la instrucción SQL que permite crear Tablas en la Base de
Datos.
Sintaxis Básica:
CREATE TABLE
<tabla> <lista de campos>
Ejemplo:
create table Materias
(id int not null,
Descripcion varchar(50));
INSERT
CREATE es la instrucción SQL que permite insertar datos a las Tablas
en la Base de Datos.
Sintaxis Básica:
INSERT INTO <tabla> VALUES (<lista de datos>)
Ejemplo:
INSERT INTO Materias VALUES (1,‘Informatica');
SELECT
SELECT es la instrucción por excelencia del SQL, ya que permite
Consultar o desplegar los datos determinados de la Base de Datos.
Sintaxis Básica:
SELECT
FROM
WHERE
ORDER BY
<campos>
<tablas>
<condición>
<campos>
Ejemplos:
select matricula, nombre, direccion, refpago
from alumnos
where id = 1;
select * from alumnos order by nombre;
select alumnos.matricula, nombre, refpago, monpago
from alumnos, pagos
where refpago = pf;
UPDATE
UPDATE sirve para actualizar datos en una tabla.
Sintaxis Básica:
Ejemplo:
UPDATE <tabla>
SET
<campo1> = <valor1>
<campo1> = <valor>
WHERE
<condición>
UPDATE alumnos SET carrera = 'administracion'
WHERE id = 1;
INSERT
INSERT es para insertar registros a una tabla.
Sintaxis Basica:
INSERT INTO
VALUES
<tabla>
( campo1, campo2... )
(valor1,
valor2....
Ejemplos:
INSERT INTO pagos
VALUES (2,'2000000','30','mensualidad',1400);
)
DELETE
DELETE sirve para borrar registros a una tabla.
Sintaxis Basica:
DELETE FROM
<tabla>
WHERE <condición>
Ejemplo:
DELETE * FROM alumnos
WHERE id >1;
Gracias por tu atención !!