Vous êtes sur la page 1sur 29

Unidad 3

Contenidos
Que es SQL ?
Estructura de SQL Instrucciones DML Instrucciones DDL

Lenguaje SQL

Funciones
Diccionario de Datos Procedimientos Almacenados Ejercicio de Aplicacion

Lenguaje SQL
Que es SQL ??? Es un Lenguaje estandard de alto nivel con el cual los DBMS interactuan con las aplicaciones del usuario.

Su nombre es la cicla de Structured Query Language, que traducido al espaol significa : Lenguaje de Consultas Estructurado.

Lenguaje SQL
Estructura de SQL

SQL clasifica sus instrucciones en de 2 tipos, de acuerdo al impacto de de de ellas sobre la Base de Datos :
De Definicion : DDL (Data Definition Language) De Manipulacion :DML (Data Manipulation Language)

Lenguaje SQL
Instrucciones DML

Estas instrucciones actuaran sobre las tablas de la Base de Datos que administra el DBMS. Entre estas instrucciones se encuentran:

INSERT: Agrega tuplas en una tabla SELECT: Consulta tuplas de una tabal

UPDATE: Actualiza tuplas de una tabla


DELETE: Borra tuplas de una tabla

Lenguaje SQL
Instrucciones DML
Select

Instruccion que se define como la estrella por su versatilidad y mayor uso en las funciones de extraccion de datos de las BD

Lenguaje SQL
Instrucciones DML
Sintaxis y opciones

SELECT [DISTINCT ] lista_elementos_seleccin FROM lista_referencias_tabla [ WHERE expresin_condicional ] [ GROUP BY lista_columnas ] [ HAVING expresin_condicional ] [ ORDER BY lista_columnas ]

Lenguaje SQL
Instrucciones DML
Select distinct

SELECT [DISTINCT ] lista_elementos_seleccin


Se eliminan las lneas que resultan duplicadas.

Lenguaje SQL
Instrucciones DML
Select Group by

[ GROUP BY lista_columnas ]
Las lneas resultantes se reagrupan segn los valores presentes en las columnas especificadas en la clusula GROUP BY. Lneas con valores iguales se unen en una nica lnea. Las columnas no comprendidas en la clusula tienen que comprender expresiones con funciones de agregacin (como por ejemplo AVG, que calcula la media) que, por tanto, se calculan produciendo un nico valor para cada grupo.

Lenguaje SQL
Instrucciones DML
Select Having

[ HAVING expresin_condicional ] Del resultado se eliminan las lneas que no satisfacen la expresin condicional de la clusula HAVING. Order by

ORDER BY nombre_columna [ ASC | DESC ] [ , nombre_columna [ ASC | DESC ] ... ]


Las lneas del resultado se ordenan segn los valores presentes en las columnas especificadas en la clusula.

Lenguaje SQL
Instrucciones DML
Select Into

Permite insertar los resultados de un Query (Select) en una

tabla de destino. La tabla de destino debe existir y tener la estructura apropiada para recibir los datos. Sintaxis:

Select <lista de campos> Into <tabla_destino> From <lista de tablas> Where <condicin>

Lenguaje SQL
Instrucciones DML
Like
Permite realizar comparaciones parciales entre strings. Utiliza un carcter de comodn, el cual le indica al DBMS que seccin del string es irrelevante en la comparacin. El carcter de comodn puede ser utilizado en cualquier posicin del string.

Util para la bsqueda incompleta de nombres.


Se utiliza en la clusula WHERE.

Sintaxis:

Where <campo> LIKE %JUAN%


Efecto: compara positivamente todo string que incluya en alguna posicin JUAN

Lenguaje SQL
Instrucciones DML

INSERT

INSERT INTO nombre_tabla (campo1, campo2 ...) VALUES (valor1, valor2, ...)

Lenguaje SQL
Instrucciones DML
DELETE

Sintaxis DELETE nombre_tabla WHERE expresin_condicional

Si no se especifica clusula WHERE, borra toda la tabla.

Lenguaje SQL
Instrucciones DML
UPDATE Actualiza las tupla de una tabla Sintaxis UPDATE nombre_tabla SET campo1 = valor1, campo2 = valor2, ... WHERE expresin_condicional

Lenguaje SQL
Instrucciones DDL

Estas instrucciones actuaran sobre de las tablas del sistema del DBMS, en relacin con los objetos de la Base de Datos. Entre estas instrucciones se encuentran:

CREATE : Crea Objetos en la Base de datos DROP : Borra Objetos en la Base de Datos

ALTER

: Modifica la definicion de objetos

Lenguaje SQL
Instrucciones DDL

CREATE TABLE

creacin de tabla Sintaxis

CREATE TABLE table_name (column_name datatype [default {constant_expression}] [{identity | null | not null] [check {check_expression}] , next_column, ... , [constraint constraint_name primary key (fields) [clustered | nonclustered] [asc | des )

Lenguaje SQL
Instrucciones DDL

ALTER TABLE Modifica la definicin de una tabla Sintaxis

ALTER TABLE table_name (column_name datatype [default {constant_expression}] [{identity | null | not null] [check {check_expression}] , next_column, ... , [constraint constraint_name primary key (fields) [clustered | nonclustered] [asc desc] )

Lenguaje SQL
Instrucciones DDL

DROP TABLE

Borra la definicion de la tabla


Sintaxis

DROP TABLE table_name

Lenguaje SQL
Instrucciones DDL

Ejemplos
create table CLIENTE
(RutCliente char(12) not null , NombreCliente char(30) not null , FechaNacimiento datetime not null default 01/01/1900 , SaldoCuenta numeric(12,2) not null default 0 check (SaldoCuenta >= 0) , constraint Cliente_ID primary key (RutCliente) clustered asc)

Lenguaje SQL
Funciones
Funciones sobre Numricos Abs(n) Sqt(n) Log(n) Sin(n), Cos(n), Tan(n) Retorna el valor Absoluto de c Retorna la raiz cuadrada de c Retorna el logaritmo de n Retorna Seno, Coseno, Tangente de n

Lenguaje SQL
Funciones
Funciones sobre Strings Ltrim(str) Substring(str, pini, c) Borra todos los espacios a la izquierda Retorna una porcin del string, tomando desde la posicin inicial pini, c caracteres a la derecha. Transforma a Maysculas Transforma a Minsculas

Upper(str) Lower(str)

Lenguaje SQL
Diccionario de Datos
Dada una Entidad y su lista de atributos, el diccionario de datos define el Dominio y reglas bsicas para cada uno de ellos.

Ejemplo:
Empleado
Nombre Rut (PK) Nombre Tipo de Dato Char Char Largo 12 30 Nulidad Not null Not Null Default Regla Validacin Descripcin Rut Primer Nombre

Sueldo

Numeric

(10,2)

Not Null

>=0

Segundo Nombre

Lenguaje SQL
Diccionario de Datos
Formato del diccionario de datos
Nombre Entidad: Descripcin: Atributos
Nombre Tipo de Dato Largo Nulidad Default Regla Validacin Descripcin

Lenguaje SQL
Diccionario de Datos
Ejercicio: desarrolle el diccionario de datos

Cliente RutCliente NombreCliente FechaNacimiento Direccion Telefono CantidadHijos Sex o ClienteVIP

Cuenta Corriente NumCuenta FechaApertura SaldoCuenta RutCliente CodTipoCuenta RutEjecutivo

Tipo Cuenta CodTipoCuenta NombreTipoCuenta Descripcion

Ejecutivo RutEjecutivo NombreEjecutivo

Lenguaje SQL
Procedimientos Almacenados
Definicin

Permiten la creacin de objetos tipo procedimientos o funciones, que son parte de la base de datos, e incluyen cdigo SQL de consulta y/o manipulacin de datos. Estos procedimientos se invocan desde el mismo DBMS o desde aplicaciones clientes y permiten el paso de parmetros.

Lenguaje SQL
Procedimientos Almacenados

Encapsulan la lgica del negocio, minimizando el impacto de cambios en la estructura de la base de datos o lgica de los sistemas. Permiten ocultar las tablas y sus estructuras a los usuarios y aplicaciones que utilizan la base de datos. Provee un mecanismo de seguridad que impide a los usuarios finales tener acceso directo a las tablas.

Lenguaje SQL
Procedimientos Almacenados
Sintaxis: Create Procedure <nombre_procedimiento> ( @param1 <tipo de dato> <nulidad> , @param2 <tipo de dato> <nulidad>, ...) AS <Cdigo SQL> End Ejecucin: EXEC <nombre_procedimiento> param1, param2, ...

Lenguaje SQL
TipoCliente CodTipoCliente NomTipoCliente DescTipoCliente

Ejercicio de Aplicacin

Cliente CodCliente RutCliente NomCliente FechaIngreso CodTipoCliente_FK

Marca CodMarca NomMarca DescMarca

Sucursal CodSucursal NomSucursal DireccionCalle DireccionNum DireccionDpto Contacto Telefono Fax email CodCliente_FK

Usuario CodUsuario Rut Nombres Apellidos FechaNacimiento Sex o Ubicacion Telefono Fax email CodSucursal_FK

Activo CodActiv o NumSerie DescActiv o Caracteristica FechaAdquisicion ValorAdquisicion TipoFinanc MesesFinanc InteresAnualFinanc CodMarca_FK CodUsuario_FK

Lenguaje SQL

1. Cantidad de Usuarios por tipo de Cliente 2. Valor Total de Activos Asignados por Cliente 3. Cantidad y valor total de Activos por Marca 4. Cantidad de Sucursales por Cliente 5. Identificacin del activo de mayor y menor valor registrado en el sistema

Vous aimerez peut-être aussi