Download Informe de SQL. - Desarrollo De Software
Document related concepts
Transcript
Trabajo especializado en SQL (Base de datos) Integrantes: Leonel de Jesús Restrepo Rivero Wilson dorado lujan Rodrigo ortega Julieth Castañeda Profesor: Víctor Arismendy SENA Servicio Nacional de Aprendizaje Caucasia –Antioquia 2013 Contenido Introducción Objetivos Concepto Características operadores Comandos Definición de procedimientos almacenados Ventajas de los procedimientos almacenados Funciones Tipos de funciones Códigos de Base de datos Otros conclusión Bibliografía Introducción El lenguaje de consulta estructurado (SQL) es un lenguaje de base de datos normalizado, utilizado por el motor de base de datos de Microsoft, SQL se utiliza para crear objetos También se puede utilizar con el método Execute para crear y manipular directamente las bases de datos Jet y crear consultas SQL de paso a través para manipular bases de datos remotas cliente - servidor Además analizaremos cada una de las partes de SQL, comprobando y justificando todas sus partes internas. Objetivo El objetivo de esta investigación, es estudiar en forma concreta una aplicación diseñada especialmente para operar dentro del ambiente de las redes de computadoras, tal como lo es SQL Server, con el fin de poder conocer su arquitectura, las plataformas en las cuales es capaz de operar, sus métodos de instalación, los procedimientos necesarios para trabajar en él y los elementos por los cuales se encuentra constituida dicha aplicación. Además, el poder analizar detalladamente toda su estructura, como lo es su sintaxis, sus comandos, entre otras podemos tener un enfoque claro de como poder hacer una base de datos, por que contaríamos con la teorías fundamentales para poder ir a la practica. Concepto SQL El lenguaje de consulta estructurado SQL Server (structured query language) en español (Servidor de lenguaje de preguntas estructurado). 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 interés de bases de datos, así como hacer cambios en ella. Además, SQL Server es un manejador de base de datos capaz de crear, desplegar y administrar aplicaciones más seguras y confiables. SQL Server es un estándar en el lenguaje de acceso a base de datos el cual nos permite compartir datos en múltiples plataformas. Como podemos ver este programa nos facilita mejor todo aquel trabajo específico que tenemos en una empresa o en un mercado, agilizando todo el proceso matemático e historial de lo que queramos manipular. Características Es un lenguaje declarativo de alto nivel o de no procedimiento que, gracias a su fuerte base teórica y su orientación al manejo de conjuntos de registros —y no a registros individuales— permite una alta productividad en codificación y la orientación a objetos. De esta forma, una sola sentencia puede equivaler a uno o más programas que se utilizarían en un lenguaje de bajo nivel orientado a registros. SQL también tiene las siguientes características: Lenguaje de definición de datos: El LDD de SQL proporciona comandos para la definición de esquemas de relación, borrado de relaciones y modificaciones de los esquemas de relación. Lenguaje interactivo de manipulación de datos: El LMD de SQL incluye lenguajes de consultas basado tanto en álgebra relacional como en cálculo relacional. Integridad: El LDD de SQL incluye comandos para especificar las restricciones de integridad que deben cumplir los datos almacenados en la base de datos. Definición de vistas: El LDD incluye comandos para definir las vistas. Control de transacciones: SQL tiene comandos para especificar el comienzo y el final de una transacción. SQL incorporado y dinámico: Esto quiere decir que se pueden incorporar instrucciones de SQL en lenguajes de programación como: C++, C, Java, Cobol, Pascal y Fortran. Autorización: El LDD incluye comandos para especificar los derechos de acceso a las relaciones y a las vistas DDl Operadores Operador | Uso AND | Es el "y" lógico. Evalúa dos condiciones y devuelve un valor de verdad sólo si ambas son ciertas. OR | Es el "o" lógico. Evalúa dos condiciones y devuelve un valor de verdar si alguna de las dos es cierta. NOT | Negación lógica. Devuelve el valor contrario de la expresión. | Operadores de Comparación: Se utilizan principalmente en nuestras condiciones para comparar dos variables y verificar si cumple o no la propiedad del operador. Operador | Uso < | Menor que > | Mayor que | Distinto de = | Mayor ó Igual que = | Igual que BETWEEN | Utilizado para especificar un intervalo de valores. LIKE | Utilizado en la comparación de un modelo In | Utilizado para especificar registros de una base de datos. Componentes de SQL El lenguaje SQL está compuesto por: comandos cláusulas operadores Funciones de agregado. Estos elementos se combinan en las instrucciones para crear, actualizar y manipular las bases de datos. Además, al tener estas características declara mejor su estructura y puede dejar como resultado una mejor base de datos. Por lo tanto, estas funciones como lo es su sintaxis dejara enfocada su estructura, dejando habilitado todo su procedimiento: Comandos Existen dos tipos de comandos SQL: Los DLL que permiten crear y definir nuevas bases de datos, campos e índices. los DML que permiten generar consultas para ordenar, filtrar y extraer datos de la base de datos. Ahora veamos acerca del comando DDL, quien nos dará más información importante de la estructura que debería llevar nuestra base de datos: El lenguaje de definición de datos es el que se encarga de la modificación de la estructura de los objetos de la base de datos. Incluye órdenes para modificar, borrar o definir las tablas en las que se almacenan los datos de la base de datos. Existen cuatro operaciones básicas: CREATE, ALTER, DROP y TRUNCATE. DROP | ELIMINAR Este comando elimina un objeto de la base de datos. Puede ser una tabla, vista, índice, función, procedimiento o cualquier otro objeto que el motor de la base de datos soporte. Se puede combinar con la sentencia ALTER. EJEMPLO DROP TABLE 'NOMBRE_TABLA'; TRUNCATE | BORRAR TABLA TRUNCATE | BORRAR TABLA Este comando trunca todo el contenido de una tabla. La ventaja sobre el comando DROP, es que si se quiere borrar todo el contenido de la tabla, es mucho más rápido, especialmente si la tabla es muy grande. La desventaja es que truncate sólo sirve cuando se quiere eliminar absolutamente todos los registros, ya que no se permite la cláusula where. Si bien, en un principio, esta sentencia parecería ser DML (Lenguaje de Manipulación de Datos), es en realidad una DDL, ya que internamente, el comando truncate borra la tabla y la vuelve a crear y no ejecuta ninguna transacción. EJEMPLO TRUNCATE TABLE 'NOMBRE_TABLA'; INSERT | INSERTAR Una sentencia INSERT de SQL agrega uno o más registros a una (y sólo una) tabla en una base de datos relacional. FORMA BASICA INSERT INTO 'tabla' ('columna1',['columna2,... ']) VALUES ('valor1', ['valor2,...']) Las cantidades de columnas y valores deben ser iguales. Si una columna no se especifica, le será asignado el valor por omisión. Los valores especificados (o implícitos) por la sentencia INSERT deberán satisfacer todas las restricciones aplicables. Si ocurre un error de sintaxis o si alguna de las restricciones es violada, no se agrega la fila y se devuelve un error. EJEMPLO INSERT INTO agenda_telefonica (nombre, numero) VALUES ('Roberto Jeldrez', 4886850); UPDATE | MODIFICACIÓN DE DATOS Su uso permite modificar campos de los registros existentes en una tabla existente, su sintaxis es la siguiente: UPDATE Tabla SET campo1 = 'valor1', campo2 = 'valor2', campoN = 'valorN' WHERE [Condición] EJEMPLO UPDATE Cliente SET Nombre = 'Mengano' WHERE RutCli = 1 DELETE | ELIMINACION DE DATOS Permite eliminar registros de una tabla existente, su sintaxis a continuación: DELETE Tabla WHERE [Condición] EJEMPLO DELETE Cliente WHERE RutCli = 1 Definición de procedimientos Almacenados Un procedimiento almacenado es una colección con nombre de instrucciones de Transact-SQL que se almacena en el servidor. Los procedimientos almacenados son un método para encapsular tareas repetitivas. Admiten variables declaradas por el usuario, ejecución condicional y otras características de programación muy eficaces. Por lo tanto, al tener estas características y precedentes, podemos ver o notar que algunos procedimientos que se almacenan tienen su espacio, ubicándolo en un lugar específico. TIPOS DE PROCEDIMIENTOS ALMACENADOS: Procedimientos almacenados del sistema (sp_) almacenados en la base de datos master e identificados mediante el prefijo sp_, los procedimientos almacenados del sistema proporcionan un método efectivo de recuperar información de las tablas del sistema. Permiten a los administradores del sistema realizar tareas de administración de la base de datos que actualizan las tablas del sistema aunque éstos no tengan permiso para actualizar las tablas subyacentes directamente. Los procedimientos almacenados del sistema se pueden ejecutar en cualquier base de datos. Procedimientos almacenados locales: Los procedimientos almacenados locales se crean en las bases de datos de los usuarios individuales. Procedimientos almacenados temporales: Los procedimientos almacenados temporales pueden ser locales, con nombres que comienzan por un signo de almohadilla (#), o globales, con nombres que comienzan por un signo de almohadilla doble (##). Los procedimientos almacenados temporales locales están disponibles en la sesión de un único usuario, mientras que los procedimientos almacenados temporales globales están disponibles para las sesiones de todos los usuarios. Los procedimientos almacenados remotos son una característica anterior de SQL Server. Las consultas distribuidas admiten ahora esta funcionalidad. Procedimientos almacenados extendidos (xp_) Los procedimientos almacenados extendidos se implementan como bibliotecas de vínculos dinámicos que se ejecutan fuera del entorno de SQL Server. Normalmente, se identifican mediante el prefijo xp_. Se ejecutan de forma similar a los procedimientos almacenados. Ventajas de los procedimientos Almacenados Un procedimiento almacenado es un programa (o procedimiento) el cual es almacenado físicamente en una base de datos. Su implementación varía de un gestor de bases de datos a otro. La ventaja de un procedimiento almacenado es que al ser ejecutado, en respuesta a una petición de usuario, es ejecutado directamente en el motor de bases de datos, el cual usualmente corre en un servidor separado. Como tal, posee acceso directo a los datos que necesita manipular y sólo necesita enviar sus resultados de regreso al usuario, deshaciéndose de la sobrecarga resultante de comunicar grandes cantidades de datos salientes y entrantes. Funciones SQL Server proporciona numerosas funciones integradas y permite crear funciones definidas por el usuario. Veamos dichas funciones para poder tener un concepto apropiado de ellas y poder analizar más detalladamente su estructura. Tipos de funciones: Funciones de conjuntos de filas: Devuelven un objeto que se puede utilizar como las referencias a tablas en una instrucción SQL. Funciones de agregado: Operan sobre una colección de valores y devuelven un solo valor de resumen. Funciones de categoría: Devuelven un valor de categoría para cada fila de una partición. . Funciones escalares: Operan sobre un valor y después devuelven otro valor. Las funciones escalares se pueden utilizar donde la expresión sea válida. Funciones de conjuntos de filas: Todas las funciones de conjuntos de filas son no deterministas. Por ello, estas funciones no siempre devuelven el mismo resultado cada vez que se llaman, incluso con el mismo conjunto de valores de entrada. Funciones de agregado: Las funciones de agregado realizan un cálculo sobre un conjunto de valores y devuelven un solo valor. Si exceptuamos la función COUNT, todas las funciones de agregado ignoran los valores NULL. Las funciones de agregado se suelen utilizar con la cláusula GROUP BY de la instrucción SELECT. Todas las funciones de agregado son deterministas. Esto significa que las funciones de agregado devuelven el mismo valor cada vez que se las llama con un conjunto específico de valores de entrada Funciones de categoría: Las funciones de categoría devuelven un valor de categoría para cada fila de una partición. Según la función que se utilice, algunas filas pueden recibir el mismo valor que otras. Las funciones de categoría son no deterministas. . Códigos de Base de datos Este es un ejemplo de nuestro código, aunque no esta todo completo por que la otra parte está adjunta a los archivos, pero claramente vemos su estructura dejando así claramente la estructura general de la base de datos: Use master go create database on primary ( name = HENRY_dat, filename = 'C: \Archivos de programa\Microsoft SQL Server\MSSQL.1\MSSQL\Data\HENRY.mdf', size = 5, maxsize = 40, filegrowth = 3, ) Use create table (cod_lector int, Dni nvarchar (45) nom_apellidos n varchar (70) Dirección nvarchar Teléfono nvarchar (20) Distrito nvarchar (70), ) Otros Punto y coma después de las sentencias SQL Algunos sistemas de bases de datos requieren un punto y coma al final de cada sentencia SQL. El punto y como es un estándar que se para cada sentencia SQL en sistemas de bases de datos que habilitan mas de una sentencia SQL ejecutada en la misma llamada al servidor Comillas en los campos de texto SQL usa comillas simples en los valores de texto (muchos sistemas manejadores de bases de datos aceptan comillas dobles).Para SQL los valores de texto deben ser puestos entre comillas simples Los valores numericos no deben ser puestos entre comillas Para valores de texto: Esta es la forma correcta: SELECT * FROM Personas WHERE Nombre='Lucero' Esta es la forma equivocada: SELECT * FROM Personas WHERE Nombre=Lucero Para valores numericos: Esta es la forma correcta: SELECT * FROM Personas WHERE P_id = 9 Esta es la forma incorrecta: SELECT * FROM Personas WHERE P_id = '9' Conclusión Después de la presentación de la información, hemos llegado a la conclusión de lo que en sí significa SQL SERVER y gran parte de su estructura interna, dejándonos claro de que este sistema ofrece los mejores complementos en consideración a la calidad de las presentaciones y la optimización que requieren las empresas, encontramos estas funciones relacionadas con la básico que ofrece la paquetería office creado por la misma empresa, pero con muchas mas características por considerar que esta destinado para una organización. De seguro no fue fácil elegir información con la intención de no hacer tan grande el trabajo, ya que este tema es muy complejo o mejor dicho muy detallado, pero si podemos decir que con esta información ya podemos tener las bases de como poder hacer una base de datos compleja y con diferentes características para guardar toda la información de una empresa. Bibliografía 1. Implementing a database on Microsoft SQL Server 7.0. Workbook Microsoft Training and Certification 2. http://www.microsoft.com 3. http://www.microsoft.com/latam/soporte 4. http://windowsnt.about.com 5. http://support.microsoft.com/support/sql/70faq.asp 6. http://www.slideshare.net/Jilliankurusugawa/componentes-de-sql-server-2008 7. http://sql-principiantes.blogspot.com/