Structured Query Language

Slides:



Advertisements
Presentaciones similares
SQL CON EJEMPLOS SARI TEMA 4.
Advertisements

Introducción Lenguaje de manipulación de datos (Data Manipulation Language) Permite a los usuarios llevar a cabo las tareas de consulta o manipulación.
SQL Sigla del nombre “Structured Query Language”.
LENGUAJE ESTRUCTURADO DE CONSULTA “SQL”
BASE DE DATOS OBJETO RELACIONAL
Base de Datos Orientada a Objetos (OODBMS)
Introducción a Transact-SQL
UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA
Marzo de 2010Dos Ideas - La visión de Sistemas desde el Desarrollo Introducción a PL/SQL Conceptos básicos.
Fernando Velasco
Unidad IV Objetivo de la Unidad:
Teórico: Structured Query Language
SQL G r u p o
Consultas anidadas.
Estadística Computacional I
Maestría en Bioinformática Bases de Datos y Sistemas de Información SQL: DML Ing. Alfonso Vicente, PMP
Maestría en Bioinformática Bases de Datos y Sistemas de Información Otros objetos de Base de Datos Ing. Alfonso Vicente, PMP
IBD Clase 15.
EL LENGUAJE ESTÁNDAR SQL
PL/SQL Francisco Moreno Universidad Nacional.
Características Objeto Relacionales en Oracle
Características Objeto Relacionales en Oracle Francisco Moreno Universidad Nacional.
Sistema de gestión de las bases de datos (SGBD).
Características Objeto Relacionales en Oracle
Unidad 3 Lenguaje SQL Contenidos Que es SQL ? Estructura de SQL
Lenguaje Estructurado de Consultas (Structured Query Language – SQL)
PL/SQL Francisco Moreno Universidad Nacional.
Contenido de la sesión 1 Bases de Datos Relacionales Lenguaje SQL
Características Objeto Relacionales en Oracle Francisco Moreno Universidad Nacional.
MySQL M.C. Pedro Bello López.
Lenguaje SQL (Structured Query Language)
PL/SQL Francisco Moreno Universidad Nacional. Introducción al PL/SQL ¿Por qué PL/SQL? A pesar de que SQL tiene mecanismos de control condicional (cláusula.
Bases de Datos Relacionales
16/04/ Sesión 11 Funciones y procedimientos Ing. Ricardo Inquilla.
PL/SQL Francisco Moreno Universidad Nacional.
SQL el Structured Query Language no es mas que un lenguaje estándar de comunicación con bases de datos.
Integrantes: Peter velazques Andres heredia Juan Mendez
Facultad de Tecnología Informática
Procedimientos Almacenados Funciones Agregadas
UNITA - IBARRA TRIGGERS
John Freddy Duitama M.U.de.A. Facultad de Ingeniería. Creación del esquema de Una Base de Datos. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A.
Dr. Mario Rossainz López Aplicaciones WEB Primavera 2015.
COMANDOS SQL.
COMANDOS DML DML son las siglas de Data Manipulation Language y se refiere a los comandos que permiten a un usuario manipular los datos en un repositorio,
SQL (Structured Query Language / Lenguaje de consulta estructurado)‏
IBD CLASE 15. SQL Lenguaje de Consultas Estruturado (SQL) ◦Lenguaje de trabajo estándard para modelo relacional ◦Componentes ◦DDL: Data Definition Language.
Programación en Visual Basic Lección #8: SQL Por Antonio F. Huertas.
Consultas SQL (Base de Datos)
INSTRUCCIONES Elaboración de la Presentación:
Introducción a Bases de Datos en Microsoft Access Programación de Computadoras 2 Sección: P.
LENGUAJE SQL.
Structured Query Language (Lenguaje Estructurado de Consultas)
LENGUAJE ESTRUCTURADO DE CONSULTAS
SQL Sigla del nombre “Structured Query Language”.
COMANDOS DML DML son las siglas de Data Manipulation Language y se refiere a los comandos que permiten a un usuario manipular los datos en un repositorio,
INSTRUCCIONES Elaboración de la Presentación:
Prof. De Bases de Datos: Lcdo. Luis Peña. El lenguaje más habitual para construir las consultas a bases de datos relacionales es SQL, Structured Query.
Diseña y administra base de datos avanzadas
Consultas SQL. SQL SQL es un lenguaje de consulta estructurado (Structured Query Languague). Se utiliza para: Eliminar Modificar Consultar La base de.
SQL El lenguaje de consulta estructurado o SQL (por sus siglas en inglés structured query language) es un lenguaje declarativo de acceso a bases de datos.
SQL Lenguaje Estructurado de Consultas. Structured Query Lenguaje (SQL). Lenguaje de acceso a bases de datos. Proyecto de Investigación de IBM. La mayoria.
SQL es el lenguaje de comunicación entre el programa cliente y programa servidor; Oracle es un programa servidor, en el que está la base de datos propiamente.
Unidad 6. Tema 4. Lenguaje de consultas SQL
SQL: DDL.
3 Cursores ORACLE Bases de datos II I-2014 Universidad del Cauca In. Wilson Ortega Bases de datos II I-2014 Universidad del Cauca In. Wilson Ortega.
Mtr. Adrián Monge Monge Educación 2015 Maestría, Mención en Administración de Proyectos ULACITMaestría, Mención en Administración de Proyectos 2012 Licenciatura,
Structure Query Languaje SQL. Introducción a SQL El lenguaje de consulta estructurado (SQL) es un lenguaje de base de datos normalizado, utilizado por.
Querys a bases de datos con MS ACCESS. DEFINAMOS LOS TERMINOS: DML=Lenguaje de manipulación de datos Las sentencias DML permiten generar consultas para.
DML Transact SQL Sesión X Triggers. Duración 2 Horas.
SQL Lenguaje de Consulta estructurado (structured query language) Es un lenguaje declarativo de acceso a bases de datos relacionales que permite especificar.
Transcripción de la presentación:

Structured Query Language SQL Structured Query Language FIEE Postgrado

SQL, SQL *Plus, and PL/SQL Lenguaje en el que un usuario solicita información de la BD SQL A command language for communications with the Oracle8 Server SQL*Plus An Oracle tool that recognizes and executes SQL and PL/SQL statements PL/SQL An Oracle procedural language that extends SQL by adding application logic FIEE Postgrado

SQL and SQL *Plus Interaction FIEE Postgrado

SQL Commands. Componentes. Data retrieval SELECT Data manipulation language (DML). Lenguaje de manipulación de datos (LMD). INSERT, UPDATE, DELETE Data definition language (DDL). Lenguaje de definición de datos (LDD) CREATE, ALTER, DROP, RENAME. Transaction control. Control de transacciones. COMMIT, ROLLBACK, SAVEPOINT. Data control language (DCL). Autorización. Integridad. GRANT, REVOKE El rollback es el espacio de anulación. Todas las bases de datos Oracle necesitan un lugar para almacenar la información para deshacer. Este espacio de tablas, que contiene los segmentos de anulación, se denomina rollback o rbs. Este es util cuando se recupera transacciones incompletas o interrumpidas. FIEE Postgrado

SQL *Plus Commands SQL *Plus main command categories: Environment Format File manipulation Execution Edit Interaction Miscellaneous FIEE Postgrado

PL/SQL Block Structure CREATE OR REPLACE del_inv (p_produc_id NUMBER) IS v_produc_id s_produc.id%TYPE; Header BEGIN SELECT id Declaration INTO v_produc_id FROM s_produc Executable WHERE id = p_produc_id; DELETE FROM s_inventory WHERE produc_id = v_product_id; COMMIT; EXCEPTION WHEN OTHERS THEN Exception ROLLBACK; Handling INSERT INTO exception_table (message) VALUES ('Some error occurred in the database.'); END; FIEE Postgrado

SQL-Structured Query Language Original de IBM Versiones SQL-89, SQL-92 Tiene sentencias que permiten definir, consultar y actualizar datos Es un lenguaje de definición y manipulación de datos usa los términos de tabla, fila, columna en vez de relación, tupla y atributo FIEE Postgrado

p<lista de atributos>(s(<lista de tablas>)) Estructura Básica SQL SELECT <lista de atributos> FROM <lista de tablas> WHERE <condición> p<lista de atributos>(s(<lista de tablas>)) FIEE Postgrado

pA1,A2,...,An(sP(r1 x r2 x ... X rm)) Estructura básica 2 select A1,A2,...,An from r1,r2,...,rm where P pA1,A2,...,An(sP(r1 x r2 x ... X rm)) Ai atributos ri relaciones P predicado FIEE Postgrado

Consultas en SQL SELECT <lista de atributos> FROM <lista de tablas> WHERE <condición> GROUP BY <atributos de grupo> HAVING <condición de grupo> ORDER BY <lista de atributos> FIEE Postgrado

Funciones y Operadores en SQL COUNT contador SUM suma MIN mínimo MAX máximo AVG promedio +, -, *, /, <, >, >=, <=, <> FIEE Postgrado

Sentencias de Actualización SQL INSERT agrega una tupla a una relación DELETE remueve tuplas de una relación UPDATE modifica valores de los atributos de uno o más filas. FIEE Postgrado

Removiendo ambiguedades Atributos con el mismo nombre están en diferentes relaciones Calificar el atributo con el nombre de la relación alumno.nombre facultad.nombre Referencia a la misma relación 2 veces declarar aliases empleado AS E(nom, apell, le, dir) FIEE Postgrado

Diversos Operadores 1 SELECT dni FROM empleado SELECT * WHERE sueldo > 5000 SELECT DISTINCT sueldo FIEE Postgrado

Diversos Operadores 2 IN, ANY, SOME, >, >=, <, <= y <> CONTAINS compara 2 conjuntos de valores y retorna TRUE si uno de los conjuntos contiene todos los valores en el otro FIEE Postgrado

Funciones Agregadas COUNT, SUM, MAX, MIN, AVG SELECT SUM(sueldo), MAX(sueldo), MIN(sueldo), AVG(sueldo) FROM empleado SELECT COUNT(*) FIEE Postgrado

Vistas en SQL - Views Es una tabla virtual CREATE VIEW AS SELECT FROM WHERE FIEE Postgrado

Tipos de datos char(n) Almacena datos de tipo carácter de longitud fija. varchar2(n) Almacena datos de tipo caracter de longitud variable. number(l,d) Almacena datos numéricos, siendo l la longitud y d el número de digitos decimales. blob Es un objeto binario de gran tamaño, siendo el tamaño máximo 4GB. raw (data) datos binarios puros con una longitud máxima de 2,000 bytes. Date Almacena fechas desde el 1 de enero del 4712 a.de C. hasta el 31 de diciembre del 9999d.deC

Definición de Esquemas en SQL CREATE TABLE alumno (codigoA char(10), not null, nombreA char(20), direccionA char(30), telefonoA char(6), PRIMARY KEY (codigoA) FIEE Postgrado

Empresa bancaria SUCURSAL (nombreS, ciudadS, activo) CLIENTE (nombreC, direccionC, ciudadC) PRESTAMO (nombreS, numeroP, importe) PRESTATARIO (nombreC, numeroP) CUENTA (nombreS, numeroC, saldo) IMPOSITOR (nombreC, numeroC) FIEE Postgrado

Esquemas de la Entidad Bancaria CREATE TABLE cliente (nombreC char(20), not null, direccionC char(30), ciudadC char(30), PRIMARY KEY (nombreC)) CREATE TABLE cuenta (numeroC char(10), not null, nombreS char(15), saldo integer, PRIMARY KEY (numeroC), CHECK (saldo>=0)) FIEE Postgrado

Ejemplo 1 Obtener los nombres de todas las sucursales SELECT nombreS FROM prestamo SELECT DISTINCT nombreS FROM prestamo SELECT nombreS, numeroP, importe*100 FIEE Postgrado

Ejemplo 2 Obtener todos los números de préstamo hechos en la sucursal de Lince cuyo importe sea mayor a 2000 SELECT numeroP FROM prestamo WHERE nombreS=“Lince” AND importe>2000 WHERE importe BETWEEN 6000 AND 8000 FIEE Postgrado

Ejemplo 3 Obtener los nombres y números de préstamo de todos los clientes que tienen un préstamo en el banco SELECT DISTINCT nombreC, prestatario.numeroP FROM prestatario, prestamo WHERE prestatario.numeroP=prestamo.numeroP FIEE Postgrado

Ejemplo 4 Obtener los nombres y números de préstamo de todos los clientes que tienen un préstamo en la Sucursal de Lince SELECT DISTINCT nombreC, prestatario.numeroP FROM prestatario, prestamo WHERE prestatario.numeroP=prestamo.numeroP AND nombreS=“Lince” FIEE Postgrado

Ejemplo 5 SELECT DISTINCT nombreC, prestatario.numeroP AS idPrestamo FROM prestatario, prestamo WHERE prestatario.numeroP=prestamo.numeroP AND nombreS=“Lince” FIEE Postgrado

Ejemplo 6 Obtener los nombres y números de préstamo de todos los clientes que tienen un préstamo en el banco SELECT DISTINCT nombreC, T.numeroP FROM prestatario AS T, prestamo AS S WHERE T.numeroP=S.numeroP FIEE Postgrado

Ejemplo 7 Obtener los nombres de todas las sucursales que poseen un activo mayor que la sucursal en Lince SELECT DISTINCT T.nombreS FROM sucursal AS T, sucursal as S WHERE T.activo>S.activo AND S.ciudadS=Lince FIEE Postgrado

Ejemplo 8 Obtener los nombres de todos los clientes cuya dirección contenga las letras “Avenida” SELECT nombreC FROM cliente WHERE direccionC LIKE “%Avenida%” FIEE Postgrado

Ejemplo 9 Obtener el saldo promedio de las cuentas de cada sucursal SELECT nombreS, AVG(saldo) FROM cuenta GROUP BY nombreS HAVING AVG(saldo)>5000 FIEE Postgrado

Ejemplo 10 Encontrar todos los clientes que poseen tanto un préstamo como una cuenta en el banco SELECT DISTINCT nombreC FROM prestatario WHERE nombreC IN (SELECT nombreC FROM impositor) FIEE Postgrado

Ejemplo 11 Encontrar todos los clientes que tienen un préstamo en el banco y cuyos nombres no son ni Carlos ni Susana SELECT DISTINCT nombreC FROM prestatario WHERE nombreC NOT IN (“Carlos”, “Susana”) FIEE Postgrado

Ejemplo 12 Encontrar la sucursal que tiene el mayor saldo promedio SELECT nombreS FROM cuenta GROUP BY nombreS HAVING AVG(saldo)>=ALL(SELECT AVG(saldo) FIEE Postgrado

Ejemplo 13 CREATE VIEW prestamoS AS SELECT nombreS, numeroP FROM prestamo FIEE Postgrado