UNIVERSIDAD NACIONAL JOSÉ FAUSTINO SANCHEZ CARRIÓN                                 FACULTAR DE INGENIERÍA                 ...
1. INTRODUCCIÓN       •Versiones       •Ediciones       •Plataforma SQL SERVER 2005       •Entorno de desarrollo del SQL S...
SISTEMA DE GESTION DE BASE DE DATOSOBJETIVOS:oAbstraer la información acerca de cómo se almacenan físicamente los datos.oM...
REGLAS   Debe utilizar sus capacidades relacionales con el pro pósito de gestionar la base    de datos.   Toda la inform...
¿QUE ES SQL SERVER?   Es un sistema de gestión de base de datos relacionales basado en    el lenguaje Transact-SQL, y esp...
HISTORIA DEL SQL SERVER Versión     Año        Nombre de la versión        Code Name1.0 (OS/2)   1989          SQL Server ...
   SQL Server tuvo sus orígenes en acuerdos comerciales entre las    empresas Microsoft, IBM, Sybase y Ashton-Tate.   Co...
   En 1989, surgió la primera versión de SQL Server para OS/2 bajo    el nombre Ashton-Tate/Microsoft SQL Server 1.0.   ...
   La versión 6.5, liberada en abril de 1996, incluía más facilidades de    uso, la certificación ANSI-SQL, más posibilid...
SQL SERVER 7.0    INNOVACIONES   La primera base de datos en escalar desde la    computadora portátil hasta la empresa   ...
OBJETIVOS DEL PROCESO   Arquitectura RDBMS   Datos distribuidos y replicación   Integración Internet y correo electróni...
SQL SERVER 2000    INNOVACIONES   Proporciona el procesamiento transaccional    online a gran escala, el Business Intelli...
NOVEDADESNovedades de Microsoft SQL Server 2000              Novedades de los Servicios de Análisis   Mejoras de la base ...
SQL SERVER 2005INNOVACIONES   Soporte para varios procesadores, RAID y balanceo de carga de trabajo   Particionado de ba...
SQL SERVER 2005    CARACTERISTICAS DE ADMINISTRACION DE BASE DE DATOS   Mirroring de Bases de Datos   Operaciones de Ind...
SQL SERVER 2005     CARACTERISTICAS DE DESARROLLO   Soporte para .NET Framework   Tecnologías XML   ADO.NET Versión 2.0...
SQL SERVER 2005CARACTERISTICAS DE INTELIGENCIA DE NEGOCIOS   Servicios de Análisis   Servicios de Transformación de Dato...
Ediciones:
Microsoft SQL Server         es una plataforma de base de datos y análisis de datos para  aplicaciones OLTP.  Para diseño,...
Microsoft SQL Server Management Studio               Entorno de desarrollo        Servidores                              ...
MODELADORES DE BASE DE DATOS LICENCIADA:               •ERWIN Data Modeler 7.3               •Sybase Power Designer 15.1  ...
Archivos de una base de datos en SQL Server:Archivo primario (.mdf)Archivos secundarios (.ndf)Archivos de registro de t...
Migrar de Erwin a SQL Server 2005 de forma ODBC
Migrar de Erwin a SQL Server 2005 de forma NATIVE
La réplica es un conjunto de tecnologías destinadas a lacopia y distribución de datos y objetos de base de datosdesde una...
Introducción a la replicación   Publicador: Servidor que pone los datos a disposición de otros servidores su replicación....
Agentes de replicación   Agente de instantáneas: El agente de instantáneas es el encargado de crear la instantánea inicia...
El Modelo de replicación en Microsoft Sql server 2005Publicador                                       Suscriptor  Mantiene...
Nuevos tipos de replicación                            Los datos pueden ser publicados desde una base de datos Oracle a un...
Modelo de replicación transaccional
Información general de la replicación                transaccionalNormalmente, la replicación transaccional se iniciacon u...
Tipos de autentificación en SQL Server                                                    Tipos de autentificación en SQL ...
Proceso de autentificación en SQL Server                                                  Servidor Windows                ...
Terminología de SeguridadPrincipal:Un principal es cualquier identidad autenticada que puede tener permisos de acceso a un...
Incluyen:                                  Logins                                  HTTP endpoints                       ...
Asegurable                  Permiso                                      Descripción                     CONNECT_SQL      ...
ROLES FIJOS DE SERVIDOR       ROL              DESCRIPCIÓN                                 PERMISOSdbcreator       Creador...
ROLES FIJOS DE BASE DE DATOS            ROL             DESCRIPCIÓN                                 PERMISOSdb_owner      ...
TRANSACT - SQL  ELEMENTOS:  Lenguaje de Manipulación de Datos (DML)                    SELECT                    INSERT...
VIEWS, FUNCTIONS, STORED PROCEDURES, TRIGGERSViistas, Funciones, Procedimientos Almacenados, Disparadores
VISTAS:Es un objeto de la base de datos que almacena una consulta predefinida.                                            ...
PROCEDIMIENTO ALMACENADO:Son instrucciones pre compiladas.Necesita ser invocadoUn Store Procedure también puede llamar ...
PROCEDIMIENTO ALMACENADO SIN PARAMETROS:
PROCEDIMIENTO ALMACENADO CON PARAMETROS:                        Muestra los datos del cliente con código “X”
PROCEDIMIENTO ALMACENADO QUE RECIBE Y ENTREGA PARAMETROS:                                                       Muestra el...
FUNCIONES DEFINIDAS POR EL USUARIO:Es una porción encapsulada de código que puede ser reutilizada por diferentes programas...
FUNCIÓN CON VALORES ESCALARES                                Retorna un resultado con                                un v...
FUNCIÓN DE TABLA EVALUADA MULTISENTENCIARetorna una tablaconstruida a base deuna o mas sentencias.Puede ser referenciado...
FUNCIÓN TABLA EVALUADA EN LÍNEA                                  Retorna una tabla que es resultado de la                ...
TRIGGER:Se ejecuta automaticamente sobre objetos de una base de datos cuando una aplicacion produce algúncambio en los mis...
TRIGGER DMLSe ejecuta automáticamente cuando se produce una modificación en el contenido de la tabla.           TIPOS DE T...
TRIGGER DML: EJEMPLOINSERT AFTER:                                           Re-calcula y actualiza el monto de una factura...
TRIGGER DML: EJEMPLOINSERT AFTER:                                               Re-calcula y actualiza el monto de una fac...
TRIGGER DDL  Se ejecuta en respuesta a la ejecución de una sentencia DDL.             SE USA CUANDO:        •    Se desea ...
UNIVERSIDAD NACIONAL JOSÉ FAUSTINO SANCHEZ CARRIÓN                      FACULTAR DE INGENIERÍA                  E.A.P. DE ...
Presentacion
Presentacion
Presentacion
Presentacion
Presentacion
Upcoming SlideShare
Loading in …5
×

Presentacion

1,551 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,551
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
28
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Presentacion

  1. 1. UNIVERSIDAD NACIONAL JOSÉ FAUSTINO SANCHEZ CARRIÓN FACULTAR DE INGENIERÍA E.A.P. DE INGENIERÍA DE SISTEMAS TEMA : SQL SERVER CURSO : Teoría y Diseño de Base de Datos DOCENTE : Claros Vázquez EQUIPO: •Ortiz Pimentel, Rosmel. •Elías More , Ever. •Reyes Sánchez, Mario. •Muñoz Quispe, Javier.
  2. 2. 1. INTRODUCCIÓN •Versiones •Ediciones •Plataforma SQL SERVER 2005 •Entorno de desarrollo del SQL SERVER 20052. CREAR UN BASE DE DATOS •De manera grafica: Tablas y relaciones •Migración Del ERwin de forma Native •Migración Del ERwin en forma ODBC3. CREACION DE UNA REPLICA . REPLICACION TRANSACIONAL4. EXPORTAR E IMPORTAR BASES DE DATOS •Adjuntar una base de datos •Exportar una BD de SQL SERVER a ACCES •Importar una BD de ACCES a SQL SERVER 20055. . LOGIN •Diferentes niveles de acceso a NIEVEL DE SQL SERVER6. BACKUP Y RESTAURACION DE BASE DE DATOS •Adjuntar base de datos •BackUp manual •BackUp automático con un plan de mantenimiento7. PROCEDIMIENTOS ALMACENADOS8. TRIGGERS
  3. 3. SISTEMA DE GESTION DE BASE DE DATOSOBJETIVOS:oAbstraer la información acerca de cómo se almacenan físicamente los datos.oMantener la independencia entre la vista física y lógica de los datos.oMantener la mínima redundancia, dado que los diseños de bases de datosque soportan (el modelo relacional) no son propensos a representarinformación repetida.oAsegurar la consistencia de la información.oProveer seguridad ante usos malintencionados, ataques, robos deinformación, etc.oAsegurar la integridad de los datos almacenados.oProveer mecanismos de respaldo y recuperaciónoRegular y controlar la concurrencia de usuarios.oProveer buen tiempo de respuesta.
  4. 4. REGLAS Debe utilizar sus capacidades relacionales con el pro pósito de gestionar la base de datos. Toda la información contenida en una base de datos relacional (BDR) se representa explícitamente en el nivel lógico de una manera exacta: con valores en tablas. Regla del acceso garantizado. Tratamiento sistemático de valores nulos. Catálogo dinámico en línea basado en el modelo relacional. Regla del sublenguaje de datos completo. Regla de actualización de vistas. Regla de inserción, actualización y borrado de alto nivel. Regla de independencia física de datos. Regla de independencia lógica de datos. Regla de independencia de integridad. Regla de independencia de distribución. Regla de la no-subversión.
  5. 5. ¿QUE ES SQL SERVER? Es un sistema de gestión de base de datos relacionales basado en el lenguaje Transact-SQL, y específicamente en Sybase IQ, capaz de poner a disposición de muchos usuarios grandes cantidades de datos de manera simultánea, así como de tener unas ventajas que más abajo se describen. Microsoft SQL Server constituye la alternativa de Microsoft a otros potentes sistemas gestores de bases de datos como son Oracle, Sybase ASE, PostgreSQL, Interbase, Firebird o MySQL.
  6. 6. HISTORIA DEL SQL SERVER Versión Año Nombre de la versión Code Name1.0 (OS/2) 1989 SQL Server 1.0 -4.21 (NT) 1993 SQL Server 4.21 - 6.0 1995 SQL Server 6.0 SQL95 6.5 1996 SQL Server 6.5 Hydra 7.0 1998 SQL Server 7.0 Sphinx 1999 SQL Server Herramientas OLAP Platón 8.0 2000 SQL Server 2000 Shiloh 8.0 2003 SQL Server 2000 para 64 bits Liberty 9.0 2005 SQL Server 2005 Yukon 10.0 2008 SQL Server 2008 katmai
  7. 7.  SQL Server tuvo sus orígenes en acuerdos comerciales entre las empresas Microsoft, IBM, Sybase y Ashton-Tate. Con la finalidad de ubicarse rápidamente en una posición competitiva, en 1986 Microsoft se asoció con Sybase Inc., que ya tenía un producto corriendo en UNIX que se encontraba muy bien conceptuado en el mercado. En 1988, Microsoft se asoció con Ashton-Tate y anunció un nuevo producto: Ashton-Tate/Microsoft SQL Server. La idea era escalar Dbase con el fin de crear una versión cliente/servidor que permitiera utilizar su lenguaje de consultas para crear aplicaciones que se comunicaran con SQL Server.
  8. 8.  En 1989, surgió la primera versión de SQL Server para OS/2 bajo el nombre Ashton-Tate/Microsoft SQL Server 1.0. En 1991, Microsoft ya estaba trabajando en Windows NT (que originalmente sería lanzado como OS/2 3.0 por su asociación con IBM), basado en la interfaz de programación de aplicaciones API Win32 (Application Programming Interfase). La siguiente versión de SQL Server, la 6.0, se liberó al mercado en 1995. Este pro- ducto ya trabajaba elementos clave, como la duplicación y los cursores, que daban la posibilidad de trabajar registros uno a uno.
  9. 9.  La versión 6.5, liberada en abril de 1996, incluía más facilidades de uso, la certificación ANSI-SQL, más posibilidades a las transacciones distribuidas, y tuvo en cuenta la creciente demanda de almacenes de datos. Durante el trancurso del año 1995, Microsoft comenzó a desarrollar un nuevo procesador de consultas al que se le sumó el de OLE DB. El producto fue liberado en enero de 1999 como la versión 7.0.
  10. 10. SQL SERVER 7.0 INNOVACIONES La primera base de datos en escalar desde la computadora portátil hasta la empresa utilizando la misma base de código y ofrecer el 100% de compatibilidad de código. Primera base de datos con OLAP integrado. La primera base de datos en proveer administración de multiservidor para cientos de servidores.
  11. 11. OBJETIVOS DEL PROCESO Arquitectura RDBMS Datos distribuidos y replicación Integración Internet y correo electrónico Gestión y administración centralizada de bases de datos Mejoras en programabilidad y lenguaje
  12. 12. SQL SERVER 2000 INNOVACIONES Proporciona el procesamiento transaccional online a gran escala, el Business Intelligence y las aplicaciones de comercio-e. Mejora significativamente las capacidades del componente de Servicios OLAP introducido en la versión 7.0 de SQL Server. Los Servicios de Análisis introducen el datamining, que se puede emplear para descubrir información en cubos OLAP y en bases de datos relacionales.
  13. 13. NOVEDADESNovedades de Microsoft SQL Server 2000 Novedades de los Servicios de Análisis Mejoras de la base de datos relacional Mejoras de cubos Integración XML de Datos Relacionales Mejoras de Dimensión Mejoras de la Administración Gráfica Mejoras de Data Mining Mejoras de Replicación Mejoras de Seguridad Mejoras de los Servicios de Transformación de Mejoras de Conectividad del Cliente en el Datos Servicio PivotTable® Mejoras de los Servicios de Análisis Otras mejoras Mejoras de los Servicios de Metas Mejoras de English Query Novedades de los Servicios de Metas Mejoras de Documentación Mejoras del Navegador de Metas Mejoras de la codificación de XML Mejoras de programación del motor de repositorio Mejoras del modelo de motor de repositorio
  14. 14. SQL SERVER 2005INNOVACIONES Soporte para varios procesadores, RAID y balanceo de carga de trabajo Particionado de bases de datos para soportar bases de datos muy grandes Operaciones de indexado paralelas Mirroring (espejado) de bases de datos para proveer protección ante fallos y redirección automática de clientes Optimización automática de bases de datos, herramientas de administración sencillas y herramientas de desarrollo avanzadas Servicios de autenticación, auditoría y autorización avanzados Encriptación avanzada de datos Servicio de revisión de buenas prácticas de programación Integración con Microsoft Baseline Security Analizer Integración con Microsoft Update Soporte de consultas recursivas, manejo de errores y nuevos tipos de datos Integración con .NET
  15. 15. SQL SERVER 2005 CARACTERISTICAS DE ADMINISTRACION DE BASE DE DATOS Mirroring de Bases de Datos Operaciones de Indexación Online Nuevas herramientas integradas Aislamiento de Imágenes (SI) Particionado de Datos Backups duplicados (“mirrored backup”) Restauración online Recuperación rápida Conexión de Administrador dedicada Mejoras en la Replicación
  16. 16. SQL SERVER 2005 CARACTERISTICAS DE DESARROLLO Soporte para .NET Framework Tecnologías XML ADO.NET Versión 2.0 Mejoras en Transact-SQL Gestor de Servicio SQL Servicios de Notificación Servicios Web Soporte para Xquery Mejoras en la Búsqueda de Texto Completo Mejoras en Seguridad
  17. 17. SQL SERVER 2005CARACTERISTICAS DE INTELIGENCIA DE NEGOCIOS Servicios de Análisis Servicios de Transformación de Datos (DTS) Data Mining Servicios de Reporting Soporte de Servicios de Análisis en Cluster Indicadores de Rendimiento Principales Escalabilidad y Rendimiento Cubo en un solo click Mejoras en la Arquitectura Integración con los informes de Office System
  18. 18. Ediciones:
  19. 19. Microsoft SQL Server es una plataforma de base de datos y análisis de datos para aplicaciones OLTP. Para diseño, creación y administración de data werehouses, y para aplicaciones de comercio electrónico.SQL Server Management Studio Plataforma SQL Server
  20. 20. Microsoft SQL Server Management Studio Entorno de desarrollo Servidores Barras de registrados herramientas Explorador de Página del objetos resumen de objeto Principales VentanasEl SQL Server Management Studio es un entorno integrado para acceder, configurar, administrar y manejar todos los componentes de SQL Server 2005.
  21. 21. MODELADORES DE BASE DE DATOS LICENCIADA: •ERWIN Data Modeler 7.3 •Sybase Power Designer 15.1 •Rational Rose 2007 •XCase 6.0 •Bainsoft BDB Professional Edition 3.6 GRATUITA: •DBDesigner 4.0.5.6
  22. 22. Archivos de una base de datos en SQL Server:Archivo primario (.mdf)Archivos secundarios (.ndf)Archivos de registro de transacciones (.ldf)
  23. 23. Migrar de Erwin a SQL Server 2005 de forma ODBC
  24. 24. Migrar de Erwin a SQL Server 2005 de forma NATIVE
  25. 25. La réplica es un conjunto de tecnologías destinadas a lacopia y distribución de datos y objetos de base de datosdesde una base de datos a otra, para luego sincronizarambas bases de datos y mantener su coherencia. Laréplica permite distribuir datos a diferentes ubicaciones y ausuarios remotos o móviles mediante redes de área local yde área extensa, conexiones de acceso telefónico,conexiones inalámbricas e Internet. DEMO_05
  26. 26. Introducción a la replicación Publicador: Servidor que pone los datos a disposición de otros servidores su replicación. Distribuidor: Servidor que aloja la base de datos de distribución (distribution) y almacena los datos históricos, transacciones y metadatos a replicar. Suscriptor: Servidor que recibe los datos replicados. Publicación: Conjunto de artículos de una base de datos que se ponen a disposición de la replicación por parte de los publicadores. Artículo: Un artículo de una publicación puede ser una vista, procedimiento almacenado, etc. o una tabla de datos la cual puede contar con todas las filas o algunas (filtrado horizontal) y simultáneamente contar de todas las columnas o algunas (filtrado vertical). Suscripción: Petición de copia de datos o de objetos de base de datos para replicar. Una suscripción define qué publicación se recibirá, dónde y cuándo.  Pueden ser: ○ Suscripciones de inserción: El Publicador solicita la sincronización o distribución de datos de una suscripción. ○ Suscripciones de extracción: El Suscriptor solicita la sincronización o distribución de datos de una suscripción. Agentes de replicación: Procesos encargados de la copia de datos entre el publicador y el suscriptor.  Existen los siguientes agentes: ○ Agente de Instantáneas ○ Agente de distribución ○ Agente del lector de registro ○ Agente del lector de cola ○ Agente de mezcla TELEVISIÓN DIGITAL
  27. 27. Agentes de replicación Agente de instantáneas: El agente de instantáneas es el encargado de crear la instantánea inicial de la base de datos de publicación y de almacenarla en una carpeta compartida del distribuidor. El agente de instantáneas pone una marca en el registro de transacciones para indicar la hora de la instantánea. El agente lector de registros usa esta marca para determinar las transacciones que deben copiarse para actualizar la instantánea en los suscriptores. Agente lector de registros: El agente lector de registros supervisa el registro de transacciones para la base de datos de publicación y copia transacciones nuevas en la base de datos de distribución. Agente de distribución: El agente de distribución inicializa una copia de la base de datos de publicación en cada suscriptor mediante la instantánea inicial. A partir de este momento, el agente de distribución copiará periódicamente las transacciones almacenadas en la base de datos de distribución y las aplicará a la copia de la base de datos de publicación de cada suscriptor para mantener la base de datos actualizada. Agente del lector de cola: Aplica los cambios de una cola y los aplica a múltiples suscriptores Agente de mezcla: Combina los cambios de sitios múltiples en entornos heterogéneos
  28. 28. El Modelo de replicación en Microsoft Sql server 2005Publicador Suscriptor Mantiene las Recibe los bases de datos cambios de de origen los datos. Distribuidor Alberga una Facilita los copia de los datos Para su Almacena los datos. duplicación metadatos , el historial y, recibe y almacena los cambios. Es posible reenviar los cambios a los suscriptores.
  29. 29. Nuevos tipos de replicación Los datos pueden ser publicados desde una base de datos Oracle a unaReplicación Heterogénea base de datos SQL Server usando replicación transaccional o instantánea.Replicación Transaccional Los datos pueden ser replicados entre múltiples peer servers. Datos aPeer-to-peer todos los servidores pueden ser actualizados y todos los servidores reciben los cambios hechos a los otros servidores. Para simplificar las replicaciones a través de un firewall o para mobileReplicación HTTP users, ha sido introducida la replicación sobre HTTP o HTTPS. Esto transmite datos en formato XML entre un suscriptor y el IIS, y usa formato binario sobre TCP/IP entre IIS y el publicador.
  30. 30. Modelo de replicación transaccional
  31. 31. Información general de la replicación transaccionalNormalmente, la replicación transaccional se iniciacon una instantánea de los datos y los objetos de labase de datos de publicaciones.En cuanto se obtiene la instantánea inicial, losposteriores cambios de datos y modificaciones delesquema realizado en el publicador habitualmentese entregan en el suscriptor cuando se producen(casi en tiempo real). Los cambios de datos se aplican al suscriptor en elmismo orden y dentro de los mismos límites de latransacción que cuando se produjeron en elpublicador. Por tanto, en una publicación, segarantiza la coherencia transaccional.
  32. 32. Tipos de autentificación en SQL Server Tipos de autentificación en SQL Server: 1. Autentificación integrada de Windows. 2. Autentificación SQL Server Autentificación: Es básicamente el proceso de determinar que alguien es realmente quien dice ser.
  33. 33. Proceso de autentificación en SQL Server Servidor Windows Servidor SQL Cuenta de usuario Windows login name SISTEMAS SISTEMAS Ventas dbo Producción login name 123 administrador Personal
  34. 34. Terminología de SeguridadPrincipal:Un principal es cualquier identidad autenticada que puede tener permisos de acceso a un objeto en unsistema de base de datos.Securable:Los Securables son recursos a los cuales el sistema de autorización de SQL Server controla el acceso.Permisos:Los Permisos son las reglas que gobiernan el nivel de accesos que los principals tienen para losasegurables. Permisos Principal Securable
  35. 35. Incluyen: Logins HTTP endpoints Certificados Notificación de evento Bases de datosNiveles Incluyen: Cuenta de usuario Usuarios local Windows Roles Cuenta de usuario de Aplicación de roles dominio Windows Ensambles Grupo Windows Tipos de mensajes Contratos de Servicio SQL Server login Servicios SQL Server role Catálogos Full-text Eventos DDL Schemas Usuario de base de datos Rol de base de datos Incluyen: Grupo de base de Tablas datos Vistas Rol de la aplicación Funciones Procedimientos Colas Tipos Reglas Defaults Sinónimos Agregados
  36. 36. Asegurable Permiso Descripción CONNECT_SQL Conecta al servidor.Server CREATE LOGIN Crea un login. ALTER ANY LOGIN Altera cualquier login en el rango del servidor. CONTROL SERVER Control completo de administración del sistema. ALTER Altera el login.Login IMPERSONATE Impersonar el login. CREATE TABLE Crea una tabla en la base de datos.Base de Datos ALTER ANY USER Altera cualquier usuario en la base de datos. CONTROL Control completo de la base de datos.Usuario ALTER Altera el usuario especificado. SELECT Selecciona rows para cualquier objeto en el schema.Schema ALTER Altera cualquier objeto en el schema. TAKE OWNERSHIP Toma propiedad del schema. SELECT Selecciona rows de la tabla.Tabla ALTER Altera la tabla. CONTROL Control total de la tabla.
  37. 37. ROLES FIJOS DE SERVIDOR ROL DESCRIPCIÓN PERMISOSdbcreator Creadores de base de datos Crear y modificar las base de datosserveradmin Administradores del servidor Cambiar las opciones de configuración del servidorsysadmin Administradores del sistema Ejecutar cualquier tarea en el servidor SQLsegurityadmin Administradores de seguridad Administrar logins
  38. 38. ROLES FIJOS DE BASE DE DATOS ROL DESCRIPCIÓN PERMISOSdb_owner Dueños de la base de datos No tiene restriccionesdb_backuperator Ejecutores de copias de seguridad Obtener copias de seguridaddb_ddladmin Ejecutores de declaraciones DDL Ejecutar cualquier declaración DDLdb_reader Lectores de datos Leer el contenido de la tabla o vistadb_writer Escritores de datos Puede modificar los datos de las tablasdb_denyreader Sin acceso de lectura No puede eer el contenido de la tabla o vistadb_denywriter Sin acceso a escritura No puede eer el contenido de la tabla o vista
  39. 39. TRANSACT - SQL ELEMENTOS: Lenguaje de Manipulación de Datos (DML)  SELECT  INSERT  UPDATE  DELETE Lenguaje de Definición de Datos (DDL)  CREATE  ALTER  DROP Lenguaje de Control de Datos (DCL) Usado para cambiar los permisos o roles asociados con un usuario de la BD.  GRANT  DENY  REVOKE
  40. 40. VIEWS, FUNCTIONS, STORED PROCEDURES, TRIGGERSViistas, Funciones, Procedimientos Almacenados, Disparadores
  41. 41. VISTAS:Es un objeto de la base de datos que almacena una consulta predefinida. Muestra la instrucción con la que se creó la vista Combinación de vistas
  42. 42. PROCEDIMIENTO ALMACENADO:Son instrucciones pre compiladas.Necesita ser invocadoUn Store Procedure también puede llamar a otro Store Procedure, así como aceptar entradas y devolvermúltiples valores al procedimiento llamado en forma de parámetros de salida.Proporciona un mecanismo de seguridad.Puede ser compartida con otras aplicaciones. VEREMOS: •PROCEDIMIENTO ALMACENADO SIN PARAMETROS •PROCEDIMIENTO ALMACENADO CON PARAMETROS •PROCEDIMIENTO ALMACENADO QUE RECIBE Y ENTREGA PARAMETROS
  43. 43. PROCEDIMIENTO ALMACENADO SIN PARAMETROS:
  44. 44. PROCEDIMIENTO ALMACENADO CON PARAMETROS: Muestra los datos del cliente con código “X”
  45. 45. PROCEDIMIENTO ALMACENADO QUE RECIBE Y ENTREGA PARAMETROS: Muestra el total por el documento “X” EJEMPLO: Calcular el ranking de los “N” productos más vendidos. N seria el parámetro que se le entrega al procedimiento
  46. 46. FUNCIONES DEFINIDAS POR EL USUARIO:Es una porción encapsulada de código que puede ser reutilizada por diferentes programas.Puede tener cero, uno o más parámetros de entrada y puede retornar un valor escalar o una tabla. F. Deterministicas Ejm. COS() F. No Deterministicas Ejm. VEREMOS: GETDATE() •FUNCIÓN CON VALORES ESCALARES •FUNCIÓN DE TABLA EVALUADA MULTISENTENCIA •FUNCIÓN TABLA EVALUADA EN LÍNEA
  47. 47. FUNCIÓN CON VALORES ESCALARES Retorna un resultado con un valor escalar. Similar a las funciones estandar del sistema.
  48. 48. FUNCIÓN DE TABLA EVALUADA MULTISENTENCIARetorna una tablaconstruida a base deuna o mas sentencias.Puede ser referenciadoen la clausula FROM seuna sentencia SELECT.
  49. 49. FUNCIÓN TABLA EVALUADA EN LÍNEA Retorna una tabla que es resultado de la ejecución de una sola sentencia SELECT.
  50. 50. TRIGGER:Se ejecuta automaticamente sobre objetos de una base de datos cuando una aplicacion produce algúncambio en los mismosEXISTEN 2 TIPOS: Lenguaje de Manipulación de Datos (DML): Se ejecutan con las intrucciones : • INSERT • UPDATE o • DELETE. Lenguaje de Definición de Datos (DDL): se ejecutan cuando se crean, alteran o borran objetos de la base de datos.
  51. 51. TRIGGER DMLSe ejecuta automáticamente cuando se produce una modificación en el contenido de la tabla. TIPOS DE TRIGGER DML  Trigger AFTER Se ejecutan después que una acción INSERT, UPDATE o DELETE es ejecutada. Solo se puede especificar para tablas. •INSERT AFTER •DELETE AFTER •UPDATE_AFTER  Trigger INSTEAD OF Se pueden definir sobre vistas que tienen una o más tablas subyacentes. SINTAXIS: CREATE TRIGGER <nombre del Trigger> ON <nombre de la tabla> AFTER <INSERT,DELETE,UPDATE> AS <sentencias SQL>
  52. 52. TRIGGER DML: EJEMPLOINSERT AFTER: Re-calcula y actualiza el monto de una factura cada vez que se inserta un detalle para dicha factura.CREATE TRIGGER tg_insert_DetalleFacturaON detalle AFTER INSERTAS DECLARE @fact int DECLARE @suma moneySET @fact =(SELECT id_factura FROM inserted)SET @suma =(SELECT SUM(precio_unitario*cantidad) FROM detalle WHERE detalle.id_factura= @fact) UPDATE factura SET monto_factura=@suma WHERE id_factura= @fact
  53. 53. TRIGGER DML: EJEMPLOINSERT AFTER: Re-calcula y actualiza el monto de una factura cada vez que se inserta un detalle para dicha factura.PARA PROBARLO:INSERT INTO factura VALUES (3, ‟22/01/2010‟, „Pepito Pérez‟ , NULL)INSERT INTO detalle VALUES (3, 101, 14 ,100)INSERT INTO detalle VALUES (3, 102, 18 ,100)INSERT INTO detalle VALUES (3, 102, 20 ,100)INSERT INTO detalle VALUES (3, 103, 25 ,100) INSTEAD OF:
  54. 54. TRIGGER DDL Se ejecuta en respuesta a la ejecución de una sentencia DDL. SE USA CUANDO: • Se desea registrar o impedir cambios en el esquema de la base de datos. • El propósito principal es auditar acciones realizadas en una base de datos.EJEMPLO:CREATE TRIGGER tg_seguridadON DATABASEFOR DROP_TABLE, ALTER_TABLEAS PRINT DEBE DESHABILITAR EL DESENCADENANTE tg_seguridad PARA ELIMINAR O MODIFICAR UNA TABLA ROLLBACKDROP TABLE detalle
  55. 55. UNIVERSIDAD NACIONAL JOSÉ FAUSTINO SANCHEZ CARRIÓN FACULTAR DE INGENIERÍA E.A.P. DE INGENIERÍA DE SISTEMAS GRACIAS POR SU ATENCIÓN

×