base de datos en sql

22
BASE DE DATOS EN SQL INTEGRANTES: Jose Manuel Mori Rojas Thalia Regalado Juape

Upload: thalia-regalado-juape

Post on 08-Jan-2017

30 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Base de datos en sql

BASE DE DATOS EN SQL

INTEGRANTES:Jose Manuel Mori RojasThalia Regalado Juape

Page 2: Base de datos en sql

DEFINICIÓNSQL (por sus siglas en inglés Structured Query Language; en español lenguaje de consulta estructurada) es un lenguaje declarativo de acceso a bases de datos relacionales que permite especificar diversos tipos de operaciones en ellas. Una de sus características es el manejo del álgebra y el cálculo relacional que permiten efectuar consultas con el fin de recuperar, de forma sencilla, información de bases de datos, así como hacer cambios en ellas.Se le llama base de datos a los bancos de información que contienen datos relativos a diversas temáticas y categorizados de distinta manera, pero que comparten entre sí algún tipo de vínculo o relación que busca ordenarlos y clasificarlos en conjunto.Una base de datos o banco de datos es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso. En este sentido; una biblioteca puede considerarse una base de datos compuesta en su mayoría por documentos y textos impresos en papel e indexados para su consulta.

Page 3: Base de datos en sql

RESEÑA HISTÓRICA DE SQLEl término SQL es el acrónimo en inglés –cuyo significado es sigla que se pronuncia como una palabra y que por el uso termina por lexicalizarse- de Structured Query Language (Lenguaje de Consulta Estructurado). Esta sigla fue introducida por primera vez, en 1979, por Oracle, en una base de datos comercial. Anteriormente se llamaba SEQUEL –Structured English Query Language- y servía como interfaz para un sistema experimental de base de datos llamado SYSTEM R, se adoptó la nueva denominación por cuestiones legales.El SQL esta directa y estrechamente relacionado a las bases de datos, por lo tanto nace casi al mismo tiempo y en 1970 cuando Codd desarrolla el modelo relacional, lo hace implementando con este un Sublenguaje llamado SEQUEL, que estaba basado en el desarrollo llevado a cabo en los laboratorios de la IBM. El lenguaje tuvo tanto éxito que luego de unos años, IBM con su Motor System R. y Oracle lo hicieron parte de sus MBD, para luego evolucionar a lo que hoy conocemos como SQL, que luego se convierte en el lenguaje predilecto de todos los MBD, y en 1986 es estandarizado por el ANSI como SQL-86 o SQL I, que poco tiempo después también seria estandarizado por la ISO. En el año de 1992, se suprimen algunas funcionalidades y se implementan otras, dando así origen a el SQL-92 o SQL II, que es Lenguaje que se utiliza en este momento como predeterminado, sin embargo ya se trabaja en una nueva versión llamada SQL III.

Page 4: Base de datos en sql

CARACTERÍSTICAS PRINCIPALESPermite concesión y negación de permisos, restricciones de integridad, controles a la transacción y modificación de los esquemas.También puede usarse de manera Integrada, que está dirigido a usuarios más avanzados, que utilizan un lenguaje de programación anfitrión y el SQL como sub lenguaje de datos.El SQL Estático es una técnica para el manejo embebido del SQL, y las sentencias que se utilizan no varían en ningún momento mientras se lleve a cabo la ejecución del programa.El SQL Dinámico también es una técnica para el uso embebido del SQL, pero a diferencia del SQL estático, esta modifica todas o gran parte de las sentencias mientras se ejecuta el programas.Para evitar problemas en el orden de ejecución interno, se debe llevar a cabo una optimización, antes de ejecutar las sentencias.Otra versión del SQL es el FSQL, que es el mismo SQL, pero basado en lógica difusa, para lógicamente ser implementado en bases de datos difusas.

Page 5: Base de datos en sql

BASE DE DATOS DEL SISTEMA

Page 6: Base de datos en sql

MASTERAlmacena información de configuración de la instancia de SQL Server, como puede ser la definición de los inicios de sesión (Logins), de las bases de datos, de los errores del sistema, etc. Hay que tener en cuenta, que no toda la configuración de la instancia se almacena en MASTER, pues por ejemplo, el modo de autenticación (Windows o Mixto) se almacena en el registro. También contiene los procedimientos almacenados extendidos, y muchos otros procedimientos almacenados del sistema sólo disponibles en MASTER.

Page 7: Base de datos en sql

MSDBPrincipalmente tiene la función de dar soporte al Agente de SQL Server, de tal modo que almacena la definición y planificación de JOBs, Planes de Mantenimiento, etc. (incluyendo su historial de ejecución), así como almacena la definición de otros objetos como Operadores, Alertas, etc. Esto implica, que el Agente de SQL Server, que cómo sabemos es un servicio de Windows, se conectará a esta base de datos, y por ello será necesario parar el Agente de SQL Server si deseamos hacer un RESTORE de la misma, pues necesitaremos exclusividad. Sin embargo, MSDB también se utiliza cuando el Agente de SQL Server no está presente, como es el caso de SQL Express (que no incluye éste servicio) o en los casos en que no se utiliza (ej: el Agente de SQL Server está parado). Por poner ejemplos, siempre que se realiza una copia de seguridad (BACKUP DATABASE o BACKUP LOG) o una restauración (RESTORE DATABASE o RESTORE LOG), se almacena en MSDB (tablas backupfile, backupfilegroup, backupmediafamily, backupmediaset, backupset, restorefile, restorefilegroup, restorehistory). Por último, también permite servir de ubicación de almacenamiento de paquetes DTS (SQL Server 2000) y DTSX (SQL Server 2005 - SSIS).

Page 8: Base de datos en sql

MODELEsta base de datos sirve de modelo. Siempre que se crea una nueva base de datos (CREATE DATABASE), se realiza una copia de la base de datos MODEL, heredando de ésta su configuración y contenido, salvo que se especifique lo contrario. Por ejemplo, es posible establecer el Modo de Recuperación o Modo de Registro de MODEL en SIMPLE (o sencillo), con el fin de evitar que al crear una base de datos por defecto se utilice el Modo de Recuperación FULL (completo).

Page 9: Base de datos en sql

TEMPDBAlmacena tanto los objetos temporales (tablas temporales, procedimientos almacenados temporales, etc.), como los resultados intermedios que pueda necesitar crear el motor de base de datos, por ejemplo durante la ejecución de consultas que utilizan las cláusulas GROUP BY, ORDER BY, DISTINCT, etc. Además, TEMPDB se crea de nuevo siempre que se inicia la instancia SQL Server, tomando su tamaño por defecto. Dado que según necesite más espacio, TEMPDB crecerá hasta el tamaño que necesite, y dado que el crecimiento de un fichero implica esperas debidas a la entrada/salida, es muy importante en entornos críticos dimensionar correctamente TEMPDB para que se cree con un tamaño apropiado, y evitar dichas esperas de entrada/salida en tiempo de ejecución, justo cuando estamos ofreciendo servicio a los usuarios. Evidentemente, estamos desplazando dichas esperas al momento de inicio de la instancia, pero también conseguimos una ventaja adicional al crear de una vez.

Page 10: Base de datos en sql

TEMPDBLimitamos la fragmentación (también muy importante en entornos críticos). A partir de SQL Server 2005, también se utiliza al habilitar el modo de aislamiento SNAPSHOT, así como al crear o reconstruir índices con la opción SORT_IN_TEMPDB.

Page 11: Base de datos en sql

DISTRIBUTIONNo existe por defecto. Se crea al habilitar una instancia de SQL Server como Distribuidor en un entorno de Replicación. Durante el proceso de configuración del Distribuidor, se puede elegir el nombre de ésta base de datos, por lo que no resulta estrictamente necesario que se llame DISTRIBUTION. Almacena información como la definición de las Publicaciones, la definición de los Agentes de Instantánea, etc.

Page 12: Base de datos en sql

MSSQLSYSTEMRESOURCEEsta base de datos es nueva en SQL Server 2005. Aparentemente está oculta (no podremos verla desde SQL Server Management Studio). Es de sólo lectura y no contiene datos, sino por el contrario, contiene el código de todos los objetos del sistema de SQL Server 2005. No es accesible directamente, puesto que es necesario establecer el modo de usuario único (single_user) para poder acceder a esta base de datos (USE MSSQLSYSTEMRESOURCE). En cualquier caso, jamás se debe acceder a esta base de datos.Una de las principales diferencias entre SQL Server 2000 y SQL Server 2005, está en que en SQL Server 2005 ya no es posible actualizar directamente las tablas del catálogo del sistema, es decir, no funciona la opción 'allow update' de sp_configure. Todas las manipulaciones de éste tipo, se deben de realizar a traves de los procedimientos almacenados del sistema o de las propias sentencias del motor de base de datos (CREATE, ALTER, DROP, etc.).

Page 13: Base de datos en sql

TIPOS DE ARCHIVOS DE BASE DE DATOS

Page 14: Base de datos en sql

ARCHIVO PRINCIPALEl archivo de datos principal incluye la información de inicio de la base de datos y apunta a los demás archivos de la misma. Los datos y objetos del usuario se pueden almacenar en este archivo o en archivos de datos secundarios. Cada base de datos tiene un archivo de datos principal. La extensión recomendada para los nombres de archivos de datos principales es .mdf.

Page 15: Base de datos en sql

ARCHIVO SECUNDARIOLos archivos de datos secundarios son opcionales, están definidos por el usuario y almacenan los datos del usuario. Se pueden utilizar para distribuir datos en varios discos colocando cada máximo establecido para un archivo de Windows, puede utilizar los archivos de datos secundarios para archivo en una unidad de disco distinta. Además, si una base de datos supera el tamaño permitir el crecimiento de la base de datos.La extensión de nombre de archivo recomendada para los archivos de datos secundarios es .ndf.

Page 16: Base de datos en sql

ARCHIVO DE TRANSACCIONESLos archivos del registro de transacciones contienen la información de registro que se utiliza para recuperar la base de datos. Cada base de datos debe tener al menos un archivo de registro. La extensión recomendada para los nombres de archivos de registro es .ldf.Por ejemplo, puede crearse una base de datos sencilla denominada Ventas con un archivo principal que contenga todos los datos y objetos y un archivo de registro con la información del registro de transacciones. Por otra parte, puede crearse una base de datos más compleja, Pedidos, compuesta por un archivo principal y cinco archivos secundarios. Los datos y objetos de la base de datos se reparten entre los seis archivos, y cuatro archivos de registro adicionales contienen la información del registro de transacciones.De forma predeterminada, los datos y los registros de transacciones se colocan en la misma unidad y ruta de acceso para administrar los sistemas de un solo disco, pero puede que esto no resulte óptimo para los entornos de producción. Se recomienda colocar los archivos de datos y de registro en distintos discos.

Page 17: Base de datos en sql

COMANDOS PARA CREACIÓN, MODIFICACION Y ELIMINACIÓN DE UNA

BASE DE DATOS EN SQL

Page 18: Base de datos en sql

COMANDOS DDLLas sentencias DDL se utilizan para crear y modificar la estructura de las tablas así como otros objetos de la base de datos.CREATE: para crear objetos en la base de datos.ALTER: modifica la estructura de la base de datos.DROP: borra objetos de la base de datos.TRUNCATE: elimina todos los registros de la tabla, incluyendo todos los espacios asignados a los registros.

Page 19: Base de datos en sql

COMANDOS DMLSELECT: Esta instrucción tienen como fin, recuperar la información desde una base de datos. Existen funciones que están relacionadas con el comando SELECT, por ejemplo: DISTINCT: Antes de ejecutar la sentencia SELECT, esta instrucción borrara todos los errores de redundancia de

datos que puedan existir. COUNT: Se utiliza para obtener el número de valores en la columna. SUM: Suma todos los elementos de una columna, siempre y cuando estos sean numéricos. AVG: Hace un promedio de los datos numéricos de una columna. MIN o MAX: Se usa para obtener el mayor o menor valor de una Columna. COUNT(*): Se implementa para contar la orientación de una tabla sin eliminación de valores duplicados. GROUP BY: Reordena virtual, lógicamente y en grupos una tabla. HAVING: Esta sentencia se usa para eliminar grupos de datos. ORDER BY: Ordena la tabla en un orden especifico. EXIST: Esta función es una especie de calificador de existencia, es decir, evalúa todos los procesos lógicos y se

cumple cuando el retorno de estos no son nulos. Una sub consulta se hace combinando el Parámetro SELECT con cualquiera de las anteriores Instrucciones.UPDATE: Se utiliza para modificar los atributos de una o más tablas seleccionadas.DELETE: Comando utilizado para borrar las tablas desde una relación, si se digita solo, se borran todas, pero al combinarlo con el comando WHERE, se pueden seleccionar las tablas que se van a borrar.

INSERT: Agrega una tablas a una relación, para esto se debe especificar el nombre de la relación y una lista ordenada de valores que se agregarán a la tabla.

Page 20: Base de datos en sql

RESUMENEn el presente trabajo de investigación estudiaremos Base de Datos en SQL, donde analizaremos la definición, características principales, Base de Datos del Sistema, Tipos de archivos de Base de Datos y comandos de la misma.Una base de datos es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso.Las base de datos del sistema son: (Master, Msdb, Model, Tempdb, Distribution, Mssqlsystemresource). SQL cuenta con tres tipos de archivos, entre ellos: Principal, Secundario y Transacciones; las cuales se detallaran en el contenido del tema. Finalmente veremos los comandos que se utilizan en SQL, comandos DDL y comandos DML.Se muestra la importancia de la base de datos en SQL, ya que una de sus características principales es el manejo del álgebra y el cálculo relacional que permiten efectuar consultas con el fin de recuperar, de forma sencilla, información de bases de datos, así como hacer cambios en ellas.

Page 21: Base de datos en sql

CONCLUSIONESUna base de datos en SQL se le puede llamar como un banco de información ya que contienen datos de diversos temas pero con algún tipo de vínculo en común y se les pueden categorizar para ordenarlos.Una de sus características muy importante es el manejo del álgebra y el cálculo relacional que permiten efectuar consultas con el fin de recuperar, de forma sencilla, información de bases de datos, así como hacer cambios en ellas.Es un lenguaje muy potente que nos ayuda a definir tareas mientras trabajamos con bases de datos.Una base de datos es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso. SQL cuenta con tres tipos de archivos, entre ellos: Principal, Secundario y Transacciones; las cuales se detallaran en el contenido del tema.

Page 22: Base de datos en sql

GLOSARIO DE TÉRMINOSBase de Datos relacional: Una base de datos relacional es una colección de elementos de datos organizados en un conjunto de tablas formalmente descritas desde la que se puede acceder a los datos o volver a montarlos de muchas maneras diferentes sin tener que reorganizar las tablas de la base. 

Acrónimo: puede ser un vocablo formado al unir parte de dos palabras. Este último tipo de acrónimos funden dos elementos léxicos tomando, casi siempre, del primer elemento el inicio y del segundo el final, como bit (Binary digit).

Integridad: Significa totalidad, virginidad, robustez y buen estado físico. Integridad deriva del adjetivo integer, que significa intacto, entero, no tocado o no alcanzado por un mal.

Backup: Es una copia de los datos originales que se realiza con el fin de disponer de un medio para recuperarlos en caso de su pérdida.

Base de datos difusas: Las bases de datos difusas nacen de unir la teoría de bases de datos, principalmente del modelo relacional con la teoría de conjuntos difusos. Restore: Restaurar una base de datos.

Clausula: Las cláusulas son condiciones de modificación utilizadas para definir los datos que desea seleccionar o manipular.