1_fundamentos

Upload: manuel-huertas-honores

Post on 03-Mar-2016

6 views

Category:

Documents


0 download

DESCRIPTION

Fundamentos de sql server 2012

TRANSCRIPT

  • DESARROLLO DE SISTEMAS Y BASE DE DATOS

    UNIDAD I: CREACIN DE BASE DE DATOS CON SQL

  • EVITAR Durante clase

  • Procesamiento de

    Clientes

    Archivode

    Clientes

    Procesamiento de

    PrstamosArchivo

    de Prstamos

    UsuarioArchivo de Clientes

    UsuarioArchivo de Prstamos

    Por cada prstamo se guarda la informacin del cliente correspondiente: Redundancia

    UN POCO DE HISTORIA

  • ANTES

    EmpleadosClientes

    Inventario

    Ventas Cuentas

    SGBD

    EmpleadosClientesVentas

    InventarioCuentas

    Dpto. Personal Dpto. VentasDpto. Contabilidad

    BASE DE DATOS

    AHORAPersonal

    Ventas

    Contabilidad

  • LOGRO DE LA SESIN

    Al terminar la sesin, los alumnos:

    o Determinarn los elementos bsicos necesario para el

    modelado de un esquema de base de datos.

    o Construirn una base de datos relacional utilizando el

    gestor de base de datos SQL Server y los comandos del

    Lenguaje de Definicin de Datos (DDL), asegurando la

    integridad de los datos.

    o Utilizarn tcnicas para salvaguardar los archivos de una

    base de datos: backups, copias, adjuntar y separar.

  • CONTENIDOS

    1. Presentacin del slabo

    2. Definicin de base de datos

    3. Elementos de un modelo de base de datos: Datos, Entidad,

    Claves primarias y forneas, Integridad referencial, Datos y

    metadatos

    4. Sistema de Gestin de Base de Datos

    5. Niveles de abrstraccin (ANSI/SPARC)

    Caso de estudio N 01

    6. Crear una base de datos: usando el asistente y con Transact-

    SQL

    7. Crear tablas: usando Transact-SQL. Tipos de Datos

    8. Modelo de copia de seguridad y restauracin. Copia de

    seguridad: tipos. Restauracin de copia de seguridad.

    9. Copia de base de datos: usando asistente

    10. Adjuntar y separar base de datos.

  • DEFINICIN DE BASE DE DATOS

    Una base de datos es un conjunto estructurado de

    datos coherentes

    o Coleccin disponible de informacin

    o Coleccin organizada en subconjuntos, en funcin de relaciones entre las diferentes informaciones (estructura lgica)

  • EntidadesDatos

    Claves PK y FK

    Relaciones

    MetadatosIntegridad

  • DATOSDatos son hechos conocidos que pueden registrarse yque tienen un significado implcito.

    Ramez Elmasri y Shamkant B. Navathe

    Ejemplo:

    Pueden constituir datos los nombres, nmeros

    telefnicos y direcciones de personas que conocemos.

    3256789

    Elena Snchez

    [email protected]

    Av. Amrica 100

    Jos Martnez

    24 de Agosto de 2015

  • Una entidad es todo aquello de lo cual interesa guardar datos, por ejemplo: clientes, facturas, productos, empleados. Est formada por atributos o campos referidos a un mismo tema que interesa

    almacenar.

    ENTIDAD

    CLIENTES cuenta con los atributos: Cdigo de Cliente, Nombre, Apellido, Domicilio, Telfono.

  • Cada entidad tiene una clave primaria o campo llave que identificaunvocamente al conjunto de datos.Cuando en una entidad figura la clave primaria de otra entidad, sta sedenomina clave fornea.Las entidades se relacionan entre s a travs de las claves forneas.

    CLAVES PRIMARIAS Y FORNEAS

    CLAVES PRIMARIASCdigo de Cliente es la claveprimaria de Cliente. A cadacliente se le asocia un cdigo y acada cdigo le corresponde uncliente.

    CLAVES FORNEAS

    Son claves forneas en FacturasCdigo de Cliente y Cdigo deProducto.Clientes se relaciona con Facturasa travs del Cdigo de Cliente quefigura en ambas tablas y conProductos mediante el Cdigo deproducto.

  • INTEGRIDAD REFERENCIAL

    INTEGRIDAD REFERENCIAL

    Cdigo de Clientes en Facturas debe cumplir que exista

    en Clientes y que sea clave primaria

    Cdigo de Producto Facturas debe cumplir que exista en

    Productos y que sea clave primaria .

  • DATOS Y METADATOS

    Metadatos son datos acerca de los datos presentesen la base de datos.

    ..................

    20Alfabtico Nombre

    4NumricoNum

    Longitud Tipo Dato

    Ejemplo metadatos El tipo de datos puede ser Numrico,alfabtico, fecha, lgico (S /NO).

    La longitud indica la cantidad mxima de caracteres que puede

    asumir el dato.

    Ejemplo de Restriccin de Dominio:

    Num >0 y

  • SISTEMA DE GESTIN DE BASE DE

    DATOS

    Un Sistema de Gestin de Bases de Datos (SGBD) es un software que permite manipular las bases de datos

    ConstruirUtilizar Mantener Reorganizar

  • SISTEMA DE GESTIN DE BASE DE

    DATOS

    Propiedades fundamentales

    Independencia de los datos

    Acceso eficiente a los datos

    Integridad y seguridad de los datos

    Administracin de los datos

    Acceso concurrente y recuperacin

    Los SGBD deben cumplir con las propiedades ACID para las transacciones:

    Atomicity (Atomicidad: las transacciones son atmicas)

    Consistency (Consistencia: una transaccin transforma un estado

    consistente de la BD en otro)

    Isolation (Aislamiento: las transacciones estn aisladas entre si)

    Durability (Durabilidad: despus que una transaccin ha sido confirmada ella

    persiste)

  • NIVELES DE ABSTRACCIN

    (ANSI/SPARC)

    Nivel interno gestin de acceso

    Nivel conceptual integridad-coherencia

    Nivel externo confidencialidad

    Esquema fsico

    Esquema lgico, resultado de

    un proceso de modelamiento

    Vista usuario 1

    Vista usuario 2

    Vista usuario n

    n esquemas externos

  • Se pretende mecanizar la gestin de una biblioteca. Para ello se recoge la

    siguiente informacin:

    Se dispone de un archivo de usuarios con el nmero de carnet, nombre y

    direccin; y de un archivo de libros con nmero, autor(es), ttulo y editor.

    Se realizan prstamos de libros a los usuarios. Cada usuario puede tener

    prestados a la vez varios libros. Cada libro pertenece a una determinada

    categora, identificada por un nmero y tipo. Del tipo de libro depende el tiempo

    mximo que se puede prestar.

    Se quiere llevar un control histrico de todos los prstamos que se van

    realizando, sabiendo adems del libro y del usuario, las fechas de inicio y de

    devolucin del prstamo. Para cada libro se debe llevar un control de su estado,

    para saber si est disponible cuando un usuario lo pide prestado.

    A los usuarios se les puede penalizar cuando cometan diversos retrasos en la

    devolucin, impidindoles realizar nuevos prstamos.

    Identificar

    a. Elementos de la base de datos (entidades, atributos, relaciones, elementos

    especiales)

  • CREAR UNA BASE DE DATOS USANDO EL

    ADMINISTRADOR

  • CREACIN DE BASES DE DATOS CON

    TRANSACT-SQL

    create database comercializacion

    on

    (name= comercializacion _data,

    filename=UNIDAD:\RUTA\ comercializacion_data.mdf',

    size=8,

    maxsize=40,

    filegrowth=5)

    log on

    (name= comercializacion_log,

    filename=UNIDAD:\RUTA\ comercializacion _log.ldf',

    size=4,

    maxsize=20,

    filegrowth=5)

    Nombre lgico

    Nombre del archivo en el sistema (path completo)

    Tamao inicial

    Tamao mximoIncremento

  • CREAR TABLAS

    a. Usando Transact-SQL

    create table estado

    (cod_est int primary key not null,

    descripcion varchar(50))

    alter table cliente add primary key nonclustered (cod_cli)

  • create table cliente

    (cod_cli int primary key not null,

    nombres varchar(20),

    fecha_nac date,

    direccion varchar(20),

    cod_est int references estado)

    alter table cliente add foreign key (cod_cli) references estado

  • MODELO DE COPIA DE SEGURIDAD

    Y RESTAURACIN

  • COPIAS DE SEGURIDAD

    sysadmin: crean backups de cualquier base de datos

    db_owner pueden crear copias de seguridad de sus propias bases de datos.

    db_backupoperator pueden crear copias de seguridad de la base de datos al mismo tiempo que se impide cualquier otro tipo de acceso a la misma

  • TIPOS DE COPIA DE SEGURIDAD

    1. Completa

    Copia que captura todas las pginas de una base de datos que contienen

    datos. Esta copia es obligatoria antes de utilizar una copia diferencia o del

    registro de transacciones. Las dos nicas operaciones no permitidas durante la

    creacin de la copia de seguridad completa son la adicin o eliminacin de un

    archivo de la base de datos y la reduccin de una base de datos

    backup database pedidos to disk=UNIDAD\CARPETA\pedidos_cc.bak

    2. Diferencial

    Esta copia captura las extensiones que han cambiado desde la creacin de la

    ltima copia de seguridad completa.

    backup database pedidos to disk='d:\pedidos_cd.dif'

    with differential, compression, init, format, checksum, stop_on_error

  • Mirror to: ofrece la posibilidad de crear 4 copias

    simultneas de una sola copia de seguridad

    Init/Noinit: controlan si un archivo de copia de seguridad

    existente se ha sobreescrito o si se ha anexado algo al

    mismo tiempo.

    Checksum: verifica el valor de la suma de la pgina antes

    de escribir la pgina en la copia de seguridad.

    Stop_on_error: comportamiento por defecto para los

    erores encontrados durante la creacin de una copia.

    Continue_past_error: ignora el error y crea copias de

    seguridad de tantas pginas como sea posible.

  • RESTAURACIN DE COPIA DE

    SEGURIDAD

    RESTORE DATABASE pedidos

    FROM DISK = 'd:\pedidos_cc.bak'

    WITH FILE=1, NORECOVERY

    RESTORE DATABASE pedidos

    FROM DISK = 'd:\pedidos_cd.dif'

    WITH FILE=2, RECOVERY

  • COPIA DE BASE DE DATOS USANDO ASISTENTE

  • ADJUNTAR Y SEPARAR BASE DE DATOS

    alter database colegio set single_user

    exec sp_detach_db 'colegio', 'true'

    exec sp_attach_db @dbname = n'colegio',

    @filename1=n'c:\program files\microsoft sql

    server\mssql11.mssqlserver\mssql\data\colegio.mdf',

    @filename2=n'c:\program files\microsoft sql

    server\mssql11.mssqlserver\mssql\data\colegio_log.ldf'

    create database colegio

    on (filename = 'c:\program files\microsoft sql

    server\mssql11.mssqlserver\mssql\data\colegio.mdf' ) for attach

  • Leer los casos de estudio y determinar el modelo de la base de datos, identificando sus elementos y relaciones

    (integridad referencial).

  • 1. Bsqueda de informacin bibliogrfica y en internet sobre:1.1. Uso del Lenguaje DML: instrucciones insert, update y delete

    2. Ver el vdeo sobre copias de seguridad y responde en el foro la siguiente pregunta:a. Cul es la importancia de realizar copias de seguridad?

    NOTA: Debe colocar nicamente la respuesta a la pregunta

    3. Disear el esquema de la base de datos pedidos usando T-SQL o el Asistente. Ver esquema en Word.