Posts from the ‘Taller de base de datos’ Category

CREANDO VISTAS EN SQL SERVER

♣Nota: El siguinte video muestara una pequeño ejemplo de como realizar vistas en SQL.

En base a una Base de datos llamda «Negocio», crea y muestra  vistas de acuerdo a lo siguiente

A.- Los productos con costo mayor de $500.

B.- Los productos que sean del tipo «Redes», si no existe el campo generarlo en la base de datos, con todo y registros.

C.- Los proveedores, que radiquen en el extranjero.

http://www.youtube.com/watch?v=VZzuS70B5Uo

BITACORAS

♣Bitácoras:

 En informática se refiere ha un archivo donde se van apuntando las incidencias y hasta que no esta en disco no se hacen efectivos los cambios. Es incremental porque se encuentra un archivo secuencial.

Nota: La bitácora serán al menos dos archivos secuenciales que al final de cada archivo apunta al siguiente. Además, la bitácora se respalda periódicamente en cinta u otro medios de almacenamiento durables(CDs, DVDs, etc.) para protegerse contra fallos catastróficos.

La estructura más ampliamente usada para grabar las modificaciones de la base de datos es la Bitácora.

Cada registro de la bitácora escribe una única escritura de base de datos y tiene lo siguiente :

  1. Nombre de la transacción : Nombre de la transacción que realizó la operación de escritura.
  2. Nombre del dato : El nombre único del dato escrito.
  3. Valor antiguo : El valor del dato antes de la escritura.
  4. Valor nuevo : El valor que tendrá el dato después de  la escritura.

 

Ejemplo del uso de bitácoras

/* Inicio de Codigo */
/* Tabla que va a monitorear */
CREATE TABLE [TABLA] (
[ID] [int] IDENTITY (1, 1) NOT NULL ,
[Nombre] [varchar] (20) NOT NULL
) ON [PRIMARY]
GO
/* Tabla Bitacora de Comandos */
CREATE TABLE [Bitacora] (
[BitacoraID] [int] IDENTITY (1, 1) NOT NULL ,
[EventType] [char] (14) NOT NULL ,
[Status] [int] NOT NULL ,
[EventInfo] [varchar] (1000) NOT NULL ,
[Usuario] [varchar] (20) NULL ,
[Fecha] [smalldatetime] NULL
) ON [PRIMARY]
GO
 
/* Trigger de Monitoreo */
CREATE TRIGGER trig_tablabitacora
ON TABLA
FOR DELETE, INSERT, UPDATE
AS
BEGIN
DECLARE @NUMERO INT
INSERT INTO Bitacora (EventType,Status,EventInfo)
EXEC (‘DBCC INPUTBUFFER(‘ + @@SPID +’)’)
SET @NUMERO=@@IDENTITY
UPDATE BITACORA
SET Usuario=SYSTEM_USER,
Fecha=GETDATE()
WHERE BITACORAID=@NUMERO
END
GO
/* INSERTE REGISTROS */
/* BORRE REGISTRO QUE NO EXISTE */
DELETE TABLA
WHERE ID=4
GO
/* INSERTE UN REGISTRO */
INSERT TABLA
VALUES (‘Registro 1’)
GO
/* INSERTE 2 REGISTROS */
INSERT TABLA
VALUES (‘Registro 2’)
INSERT TABLA
VALUES (‘Registro 3’)
GO
/* BORRE 1 REGISTRO */
DELETE TABLA
WHERE ID=2
GO
SELECT * FROM BITACORA
GO
/* FIN DE CODIGO */

Tipos de bitácoras

Bitácoras de usuario: Usuario, password,depto,sistema,archivos, terminal,permisos.

Bitácora de archivos: Password,Dueño,Sistemas que lo usan,dominios,formatos,ubicacion

Catalogo de sistemas: Departamento,sistema,archivos,Terminal,Programas, Responsable.

Bitácora de errores: Tipo,programa,descripcion,hora,lugar,horario,fecha,archivo y sistema

Bitácora de uso:  Fecha,usuario,sistema,permiso,terminal,registro,tipo de acceso, imagen vieja,imagen nueva.

Manuales de sistemas: Sistama,Departamento,Archivos,Procedimiento de uso,Nivel de sistematizacion y Automatización.

VISTAS

En el siguiente link encontraras informacion acerca de vistas

http://ziscko.wordpress.com/2010/03/07/crear-mostrar-y-borrar-vistas-de-sql/

DISPARADORES

El siguiente Link te muestra  una presentaciòn de expocision que habla acerca de Disparadores…

http://luzarizpe.wordpress.com/2010/03/07/disparadores/

INTEGRIDAD DE ENTIDAD E INTEGRIDAD REFERENCIAL EN SQL

♣En el siguinte link encontraras acerca de lo que es integridad referencial e integridad de entidad.

 

 

http://www.slideshare.net/vyezk007/integridad-de-entidad-e-integridad-referencial-en-sql-server-y-access

VISTAS E INDICES

♣INDICE

Un índice es una estructura de datos que permite acceder mucho más rápido a los datos de diferentes filas de una misma tabla a través de un campo.

TIPOS DE INDICES

  • Clustered Index:

                 – Por defecto se crean índices con las llaves primarias.

                  – Son como capítulos en el libro.

                   – Índice como la guía telefónica.

                    – Mantiene juntos los números de líneas.

  • Non- Clusteres Index 

                –  Son como guiones para acceder a los datos.

                 – Utilizado en llaves de varios campos.

                 – Es un índice o glosario.

                 – Son atajos para acceder a los datos.

  • VISTA

Es la representación gráfica de los datos que desea ver un usuario por medio de una consulta.

 

  • VENTAJAS DE LAS VISTAS

-Centrar el interés en los datos de los usuarios.

  • Centrarse sólo en los datos importantes o adecuados.
  • Limitar el acceso a los datos confidenciales.

-Enmascarar la complejidad de la base de datos.

  • Ocultar el diseño de la base de datos compleja.
  • Simplificar las consultas complejas, incluyendo las consultas distribuidas a datos heterogéneos.

-Simplificar la administración de los permisos del usuario.

-Mejorar el rendimiento.

-Organizar los datos para exportarse a otras aplicaiones.

IMPLEMENTACION DE LA INTEGRACION DE DATOS

♣Que es integridad de datos?

La integridad de datos se refiere a los valores reales que se pueden  almacenar y  utilizar en las estructuras de datos.

TIPOS DE INTEGRIDAD DE  DATOS

  •  INTEGRIDAD DE DOMINIO: Se encarga de salvaguardar los datos localizados en  las columnas.
  • INTEGRIDAD DE  ENTIDAD: Se encarga de salvaguardar los datos localizados en  las filas.
  • INTEGRIDAD DE REFERENCIA: Es aquella que existe para salvaguardar los datos que proviene de una relación entre tablas, en  donde una tabla se encuentra una llave primaria y la cual es relacionada hacia una segunda tabla como llave primaria.

EXIGIR INTEGRIDAD DE LOS DATOS

INTEGRIDAD DE LOS DATOS DECLARATIVA

  • Los criterios  se definen en la definición del objeto.
  • Asegura automáticamente por SQL Server.
  • Implementada mediante restricciones, valores predeterminados y reglas.

INTEGRIDAD DE LOS DATOS PROCEDIMENTAL

  • Los criterios  se definen en una secuencia de comandos.
  • Asegurada mediante una secuencia de comandos.
  • Implementada mediante desencadenadores y procedimientos almacenados.

IMPLEMENTAR RESTRICCIONES

Uno de los principales objetos  de una base de datos relacional es cuidar y controlar la integridad de los datos, la cual podría perderse ante operaciones que modifican  la información como: INSERT, UPDATE, DELETE.

Por ejemplo:

  • Se puede perder la integridad de datos ante alguna de las siguientes restricciones.
  • Se puede registrar un pedido de un producto no existente.
  • Podría modificarse los datos existentes con valores innecesarios.
  • Los cambios ala base de datos podrían aplicarse parcialmente por ejemplo se registra un pedido sin actualizar del stock del pedido requerido.

TRANSACT–SQL

Existen tres tipos de instrucciones para el lenguaje en SQL. 

♣ Lenguaje de definición de datos (DLL):

 Creación y eliminación de tipo de datos y objetos.

 

  • CREATE: Crea objeto.
  • ALTER: Modifica los datos creados.
  • DROP: Elimina el objeto. 

 

♣Lenguaje de control de datos (DCL):

 Se basa en los derechos que tiene el usuario sobre la base de datos (permisos).

  • GRANT: Da permisos a un usuario para efectuar determinadas las instrucciones.
  •  DENY: Eliminar el permiso que se ha concedido con el Grant. REVOKE: Eliminar todos los permisos.

 

♣Lenguaje de manipulación de datos (DML): Desarrollo de la programación de la base de datos.

  • SELECT
  • INSERT
  • UPDATE
  • DELETE

 

TIPOS DE DATOS DEL SISTEMA

Numérico.

  • Entero.
  • Numérico exacto.
  •  Numérico aproximado.

 Moneda.

  • Fecha y Hora.
  • Carácter y Caracteres Unicode.
  • Binario.
  • Otros.

 

TIPOS DE DATOS DEFINIDOS POR EL USUARIO

Tipos de datos definidos por el usuario están basado en los tipos de datos disponibles a través de SQL Server 2005.

Tipos de datos definidos por el usuario se pueden emplear para asegurar que un dato tenga las mismas características sobre múltiples tablas.

COMO PROGRAMAR UNA BASE DE DATOS EN MYSQL

  • En la siguiente direccion encontraras la explicacion concreta de como Programamr una base de datos en MySQL.

 

http://deahesy22.wordpress.com/2010/03/03/programando-en-mysql/

Imagen

Imagen