LENGUAJE DE CONSULTA ESTRUCTURADO (SQL)

Documentos relacionados
Anexo 3 COMPONENTES DE SQL SERVER. Los DDL (Data Definition Languaje) que permiten crear y definir nuevas

Un proyecto de IBM llamado Sistem/R construye un prototipo simple llamado SQUARE que después se transformó en SQL.

Los DLL que permiten crear y definir nuevas bases de datos, campos e índices.

Create Database ClaseAutos. Use ClaseAutos

MANUAL BÁSICO DEL LENGUAJE SQL

Modulo I: Introducción Gestores de Bases De Datos

1. Lenguaje de Definición de Datos. 2. Lenguaje de Manipulación de. Datos. M. C. Gustavo Alfonso Gutiérrez Carreón

Manual de Sentencias Básicas en SQL

Sistemes de Supervisió Industrial - SCADAS

El SQL es un lenguaje estándar de programación para el acceso a bases de datos.

INFORMÁTICA MÉDICA. Profesor: MsC. Liz Armenteros Chávez

Lenguaje de manipulación de datos

SUBCONSULTAS SQL. Cuando se ejecuta una consulta que contiene una subconsulta, la subconsulta se ejecuta por cada fila de la consulta principal.

SQL Básico. José Muñoz Jimeno Febrero 2015

ADMINISTRACION DE ORACLE 9i Guía de estudio (OCA) TEMA 1

INFORMÁTICA MÉDICA. Profesor: MsC. Liz Armenteros Chávez

TEMA 4.. CONSULTA DE DATOS I.

Base de Datos. Docente: Ing. Francisco Rodríguez BASE DATOS. Resultados. Internet. Requerimientos

GUÍA DE TRABAJO N 5 GRADO 11 Programación y Diseño de Articulación SENA Software Ing. Néstor Raúl Suarez Perpiñan Página 1 de 6

SELECT listadecampos FROM nombredetablas WHERE condicionesdebúsqueda;

GUÍA DE TRABAJO N 7 GRADO 11. Ing. Néstor Raúl Suarez Perpiñan Página 1 de 6 GUIA N 7 COMANDOS MYSQL II. CREAR UNA TABLA

Insertar Datos en Tablas

SQL. Comandos DDL. Comandos DML

GESTORES GESTORES DE BASES DE DATOS

Tema 4. DML (Parte I)

Arquitectura del SGBD

Oracle Database 12c SQL and PLSQL Fundamentals

Introducción a Bases de Datos. Pablo Zaidenvoren

Tema 7. Elaboración de consultas básicas de selección. Lenguajes de bases de datos. SQL básico 15/12/2011

Bases de Datos 1. Teórico: Structured Query Language

Tema 1. Introducción a MySQL. José Muñoz Jimeno Octubre 2015

Uso de sentencias para el envió y extracción de datos

Modificar estructura Se pueden agregar/quitar campos a una tabla, modificar el tipo de un campo, agregar/quitar índices a una tabla, etc.

SQL (Structured Query Language)

Introducción 1 Recuperación de Datos mediante la Sentencia SQL SELECT

Consultas SQL II. Diego Egüez. Universidad San Francisco de Quito (USFQ)

MANUAL BÁSICO DEL LENGUAJE SQL

RESUMEN SQL. Tipo de coincidencia Modelo Planteado Coincide No coincide. Varios caracteres 'ab*' 'abcdefg', 'abc' 'cab', 'aab'

Vistas en InformiX Sistemas de Bases de Datos II EMT CETP A/S Leonardo Carámbula

SELECT SELECT WHERE WHERE GROUP BY

SQL. Amparo López Gaona. México, D.F. Noviembre 2003

Sistemas de Bases de Datos II ITS / ITSB EMT CETP

1. DML. Las consultas de resumen

Modelamiento y Gestión de Base de Datos

Bases de Datos Relacionales y SQL: Una Introducción

SQL, Consultas. Son Importantes las Consultas? Cuál es el Resultado de SELECT? Andrés Moreno S.

Vistas en MS SQL Server. Bases de Datos I Universidad Católica II Cuatrimestre

FUNDAMENTOS ORACLE 12C

6.1. Introducción. Guía 5. SQL.

Taller de Herramientas de Software : ST 213 Secc: V y W

LENGUAJE DE MANIPULACIÓN DE DATOS

Access SQL: DDL y DML. Una empresa de Ingeniería precisa una base de datos para la gestión de sus proyectos.

SQL Structured Query Language

Laboratorio de Programación III

ÍNDICE. Introducción... Capítulo 1. Características, instalación, inicio y entorno de trabajo... 1

Bases de datos: Lenguaje de consultas SQL

Clase 4: SQL DDL DML Consultas Simples y Multitablas. BASE DE DATOS FAC.DE INGENIERIA - UNJu

Laboratorios de BASES DE DATOS. (I.T. Informática)

Bienvenidos a la segunda parte del taller de seguridad web, sería recomendable que leer el primero, al que pueden acceder desde aquí.

SQL SERVER SQL Server 2005 permite tres tipos de operaciones con conjuntos: UNION, disponible en todas las versiones de SQL Server.

Lenguaje de Consulta Estructurado S Q. Lenguaje de Consulta Estructurado. Wael Najjar /

Diseña y Administra Bases de Datos Guía de Estudio

Objetivos del curso sobre fundamentos de bases de datos - Examen Oracle Database Foundations

SQL SERVER Para ingresar a la ventana de administración del SQL Server, proceda a realizar los siguientes pasos:

A.1. Definiciones de datos en SQL

BASES DE DATOS ESPACIALES II:

SQL (Structured query language)

INTRODUCCIÓN CAPÍTULO 1. ENTORNO DE TRABAJO...

Oracle Fundamentos. Programa de Estudio.

Oracle Fundamentos. Programa de Estudio.

SQL SERVER Curso Teórico-Práctico

SQL El lenguaje de consulta estructurado MsC (c) Esp. Alexis Ovany Torres Ch. Orientador Fundamentos y Diseño de Base de Datos

LENGUAJE DE MANIPULACIÓN DE DATOS (DML) CONSULTA DE DATOS

Conceptos Avanzados de Programación en Internet

Está basado en el álgebra y en el cálculo relacional.

Programación de Base de Datos con SQL Duración: 25 Horas Código Sence:

UNIDAD4. 1. Procedimentales 2. No Procedimentales

Consultas. Comparación Filtros vs Consultas Tipos de Consultas Crear, reutilizar y Ejecutar Consultas. Consultas Diapositiva 1.

Modelamiento y Diseño de Base de Datos

APÉNDICE SQL (Structures Query Language)

EJERCICIOS DE CONSULTAS SQL

SÍLABO POR COMPETENCIAS

Unidad III. Bases de Datos

SQL: Lenguaje de Consulta Estructurado Prof. Jeand Duno

SQL Server FEMEPA SQL Server 2000

SQLModificaciones a la BD

Manual Práctico de SQL. ORIENTADO A SQL 7.0 Preparado por: Alvaro E. García

CC BASES DE DATOS OTOÑO 2018

Tema 4: Dinámica del Modelo Relacional. El lenguaje SQL

- 1 - Mg. Abril Saire Peralta

SERVICIO NACIONAL DE APRENDIZAJE SENASOFT CAUCA 2013 CATEGORIA: BASES DE DATOS. Diseño y Desarrollo de Bases de Datos

SQL JULIO CESAR CANO R

ÍNDICE INTRODUCCIÓN...17

CONOCIMIENTOS DE CONCEPTOS BASES DE DATOS

Bases de Datos y Consultas en SQL

TEMA 5: MODIFICACIÓN DE LA BASE DE DATOS EN SQL

Transcripción:

Qué es una base de datos? Una base de datos (cuya abreviatura es BD) es una entidad en la cual se pueden almacenar datos de manera estructurada, con la menor redundancia posible. Diferentes programas y diferentes usuarios deben poder utilizar estos datos. Por lo tanto, el concepto de base de datos generalmente está relacionado con el de red ya que se debe poder compartir esta información. De allí el término base. "Sistema de información" es el término general utilizado para la estructura global que incluye todos los mecanismos para compartir datos que se han instalado. Por qué utilizar una base de datos? Una base de datos proporciona a los usuarios el acceso a datos, que pueden visualizar, ingresar o actualizar, en concordancia con los derechos de acceso que se les hayan otorgado. Se convierte más útil a medida que la cantidad de datos almacenados crece. Una base de datos puede ser local, es decir que puede utilizarla sólo un usuario en un equipo, o puede ser distribuida, es decir que la información se almacena en equipos remotos y se puede acceder a ella a través de una red. La principal ventaja de utilizar bases de datos es que múltiples usuarios pueden acceder a ellas al mismo tiempo. LENGUAJE DE CONSULTA ESTRUCTURADO (SQL) El SQL es un lenguaje universal que se emplea en cualquier sistema gestor de bases de datos relacional. Tiene un estándar definido, a partir del cual cada sistema gestor ha desarrollado su versión propia. EL SQL en principio es un lenguaje orientado únicamente a la definición y al acceso a los datos por lo que no se puede considerar como un lenguaje de programación como tal ya que no incluye funcionalidades como son estructuras condicionales, bucles, formateo de la salida, etc. (aunque veremos que esto está evolucionando). Se puede ejecutar directamente en modo interactivo, pero también se suele emplear embebido en programas escritos en lenguajes de programación convencionales. En estos programas se mezclan las instrucciones del propio lenguaje (denominado anfitrión) con llamadas a procedimientos de acceso a la base de datos que utilizan el SQL como lenguaje de acceso. Las instrucciones SQL se clasifican según su propósito en tres grupos: El DDL (Data Description Language) Lenguaje de de Datos. El DDL, es la parte del SQL dedicada a la definición de la base de datos, consta de sentencias para definir la

estructura de la base de datos, permiten crear la base de datos, crear, modificar o eliminar la estructura de las tablas, crear índices, definir reglas de validación de datos, relaciones entre las tablas, etc. Permite definir gran parte del nivel interno de la base de datos. Por este motivo estas sentencias serán utilizadas normalmente por el administrador de la base de datos El DCL (Data Control Language) Lenguaje de Control de Datos. El DML (Data Manipulation Language) Lenguaje de Manipulación de Datos. El DML se compone de las instrucciones para el manejo de los datos, para insertar nuevos datos, modificar datos existentes, para eliminar datos y la más utilizada, para recuperar datos de la base de datos. Veremos que una sola instrucción de recuperación de datos es tan potente que permite recuperar datos de varias tablas a la vez, realizar cálculos sobre estos datos y obtener resúmenes. El DML interactúa con el nivel externo de la base de datos por lo que sus instrucciones son muy parecidas, por no decir casi idénticas, de un sistema a otro, el usuario sólo indica lo que quiere recuperar no cómo se tiene que recuperar, no influye el cómo están almacenados los datos. I. Componentes del SQL El lenguaje SQL está compuesto por comandos, cláusulas, operadores y funciones de agregado. Estos elementos se combinan en las instrucciones para crear, actualizar y manipular las bases de datos. a. Comandos Existen dos tipos de comandos SQL: DLL que permiten crear y definir nuevas bases de datos, campos e índices. DML que permiten generar consultas para ordenar, filtrar y extraer datos de la base de datos. Comandos DLL Comando CREATE DROP ALTER Comando SELECT INSERT UPDATE DELETE Utilizado para crear nuevas tablas, campos e índices Empleado para eliminar tablas e índices Utilizado para modificar las tablas agregando campos o cambiando la definición de los campos. Comandos DML Utilizado para consultar registros de la base de datos que satisfagan un criterio determinado Utilizado para cargar lotes de datos en la base de datos en una única operación. Utilizado para modificar los valores de los campos y registros especificados Utilizado para eliminar registros de una tabla de una base de datos

b. Cláusulas Las cláusulas son condiciones de modificación utilizadas para definir los datos que desea seleccionar o manipular. Cláusula FROM WHERE GROUP BY HAVING ORDER BY Utilizada para especificar la tabla de la cual se van a seleccionar los registros Utilizada para especificar las condiciones que deben reunir los registros que se van a seleccionar Utilizada para separar los registros seleccionados en grupos específicos Utilizada para expresar la condición que debe satisfacer cada grupo Utilizada para ordenar los registros seleccionados de acuerdo con un orden específico c. Operadores Lógicos Operador Uso AND OR NOT Es el "y" lógico. Evalúa dos condiciones y devuelve un valor de verdad sólo si ambas son ciertas. Es el "o" lógico. Evalúa dos condiciones y devuelve un valor de verdad si alguna de las dos es cierta. Negación lógica. Devuelve el valor contrario de la expresión. d. Operadores de Comparación Operador Uso < Menor que > Mayor que <> Distinto de <= Menor o igual que >= Mayor o 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

e. Funciones de Agregado Las funciones de agregado se usan dentro de una cláusula SELECT en grupos de registros para devolver un único valor que se aplica a un grupo de registros. Función AVG COUNT SUM MAX MIN Utilizada para calcular el promedio de los valores de un campo determinado Utilizada para devolver el número de registros de la selección Utilizada para devolver la suma de todos los valores de un campo determinado Utilizada para devolver el valor más alto de un campo especificado Utilizada para devolver el valor más bajo de un campo especificado II. Orden de ejecución de los comandos Dada una sentencia SQL de selección que incluye todas las posibles cláusulas, el orden de ejecución de las mismas es el siguiente: 1. Cláusula FROM 2. Cláusula WHERE 3. Cláusula GROUP BY 4. Cláusula HAVING 5. Cláusula SELECT 6. Cláusula ORDER BY III. Características del lenguaje Una sentencia SQL es como una frase (escrita en inglés ) con la que decimos lo que queremos obtener y de donde obtenerlo. Todas las sentencias empiezan con un verbo (palabra reservada que indica la acción a realizar), seguido del resto de cláusulas, algunas obligatorias y otras opcionales que completan la frase. Todas las sentencias siguen una sintaxis para que se puedan ejecutar correctamente. IV. Cómo se interpretaría el diagrama sintáctico de la figura? Hay que empezar por la palabra SELECT, después puedes poner ALL o bien DISTINCT o nada, a continuación un nombre de columna, o varios separados por comas, a continuación la palabra FROM y una expresión tabla, y por último de forma opcional puedes incluir la cláusula WHERE con una condición de búsqueda. Por ejemplo: SELECT ALL col1,col2,col3 FROM mitabla SELECT col1,col2,col3 FROM mitabla SELECT DISTINCT col1 FROM mitabla SELECT col1,col2 FROM mitabla WHERE col2 = 0 V. Consultas de Selección

Las consultas de selección se utilizan para indicar al motor de datos que devuelva información de las bases de datos, esta información es devuelta en forma de conjunto de registros que se pueden almacenar en un objeto recordset. Este conjunto de registros es modificable. 5.1 Consultas básicas: La sintaxis básica de una consulta de selección es la siguiente: SELECT Campos FROM Tabla; En donde campos es la lista de campos que se deseen recuperar y tabla es el origen de los mismos, por ejemplo: SELECT Nombre, Telefono FROM Clientes; Esta consulta devuelve un recordset con el campo nombre y teléfono de la tabla clientes. Ordenar los registros Adicionalmente se puede especificar el orden en que se desean recuperar los registros de las tablas mediante la claúsula ORDER BY Lista de Campos. En donde Lista de campos representa los campos a ordenar. Ejemplo: SELECT CodigoPostal, Nombre, Telefono FROM Clientes ORDER BY Nombre; Esta consulta devuelve los campos CodigoPostal, Nombre, Teléfono de la tabla Clientes ordenados por el campo Nombre. Se pueden ordenar los registros por más de un campo, como por ejemplo: SELECT CodigoPostal, Nombre, Telefono FROM Clientes ORDER BY CodigoPostal, Nombre; Incluso se puede especificar el orden de los registros: ascendente mediante la claúsula (ASC se toma este valor por defecto) ó descendente (DESC) SELECT CodigoPostal, Nombre, Telefono FROM Clientes ORDER BY CodigoPostal DESC, Nombre ASC; La cláusula WHERE La cláusula WHERE puede usarse para determinar qué registros de las tablas enumeradas en la cláusula FROM aparecerán en los resultados de la instrucción SELECT. Si no se emplea esta cláusula, la consulta devolverá todas las filas de la tabla. WHERE es opcional, pero cuando aparece debe ir a continuación de FROM. SELECT Apellidos, Salario FROM Empleados WHERE Salario > 21000; SELECT Id_Producto, Existencias FROM Productos WHERE Existencias <= Nuevo_Pedido; 5.2 Criterios de Selección SELECT * FROM Empleados WHERE Edad > 25 AND Edad < 50; SELECT * FROM Empleados WHERE (Edad > 25 AND Edad < 50) OR Sueldo = 100; SELECT * FROM Empleados WHERE NOT Estado = 'Soltero';

SELECT * FROM Empleados WHERE (Sueldo > 100 AND Sueldo < 500) OR (Provincia = 'Madrid' AND Estado = 'Casado'); VI. Consultas de Acción Las consultas de acción son aquellas que no devuelven ningún registro, son las encargadas de acciones como añadir y borrar y modificar registros. 6.1 DELETE Crea una consulta de eliminación que elimina los registros de una o más de las tablas listadas en la cláusula FROM que satisfagan la cláusula WHERE. Esta consulta elimina los registros completos, no es posible eliminar el contenido de algún campo en concreto. Su sintaxis es: DELETE Tabla.* FROM Tabla WHERE criterio DELETE es especialmente útil cuando se desea eliminar varios registros. En una instrucción DELETE con múltiples tablas, debe incluir el nombre de tabla (Tabla.*). Si especifica más de una tabla desde la que eliminar registros, todas deben ser tablas de muchos a uno. Si desea eliminar todos los registros de una tabla, eliminar la propia tabla es más eficiente que ejecutar una consulta de borrado. DELETE * FROM Empleados WHERE Cargo = 'Vendedor'; 6.2 INSERT INTO Agrega un registro en una tabla. Se la conoce como una consulta de datos añadidos. Esta consulta puede ser de dos tipos: Insertar un único registro ó Insertar en una tabla los registros contenidos en otra tabla. Para insertar un único Registro: En este caso la sintaxis es la siguiente: INSERT INTO Tabla (campo1, campo2,.., campon) VALUES (valor1, valor2,..., valorn) Esta consulta graba en el campo1 el valor1, en el campo2 y valor2 y así sucesivamente. 6.3. UPDATE Crea una consulta de actualización que cambia los valores de los campos de una tabla especificada basándose en un criterio específico. Su sintaxis es: UPDATE Tabla SET Campo1=Valor1, Campo2=Valor2,... CampoN=ValorN WHERE Criterio; UPDATE es especialmente útil cuando se desea cambiar un gran número de registros o cuando éstos se encuentran en múltiples tablas. Puede cambiar varios campos a la vez. El ejemplo siguiente incrementa los valores Cantidad pedidos en un 10 por ciento y los valores Transporte en un 3 por ciento para aquellos que se hayan enviado al Reino Unido.: UPDATE Pedidos SET Pedido = Pedidos * 1.1, Transporte = Transporte * 1.03 WHERE PaisEnvío = 'ES';

Ejercicios 1. Mostrar los nombres de los empleados ordenados alfabéticamente (Z...A) 2. Listar los nombres de los empleados cuyo nombre termine con la letra o. 3. Listar todos los empleados que viven en la dirección León 4. Mostrar todos los empleados que tengan un salario mayor o igual a 13400 5. Mostrar todos los empleados que no tengan comisión 6. Mostrar todos los empleados cuya edad este entre 25 y 30 años 7. Mostrar todos los empleados cuyo oficio sea Analista Fuente: http://personal.lobocom.es/claudio/sql001.htm http://www.aulaclic.es/sql/t_1_1.htm http://wiki.elhacker.net/bases de datos/introduccion http://proton.ucting.udg.mx/tutorial/sqltut/sql0.html