BASE DE    DATOSSQL Y OTROS LENGUAJES
Lenguajes de bases de datoss   Lenguaje de definición de datos DDL, es    una serie de definiciones que especifican el    ...
SQLs SQL se ha establecido claramente en el lenguaje estándar de  bases de datos relacionales.s Es un lenguaje LDD o de de...
SQL                      SELECTs   Permite recuperar información de la base de datos.s   Junto con insert, update y delete...
SQL   SELECT - SELECCIÓNpréstamo     (nom_suc   nro_pres   importe)             CAÑOTO     144        1500             BOL...
SQLSELECT - SELECCIÓNresp_presta   (nom_clien   nom_emple nro_pres)              SUCHA        RAMONA     134              ...
SQL  SELECT - PROYECCIÓNpréstamo   (nom_suc   nro_pres   importe)           CAÑOTO     144        1500           BOLIVAR  ...
SQLSELECT - PROYECCIÓNresp_presta   (nom_clien   nom_emple nro_pres)              SUCHA        RAMONA     134             ...
SQL    SELECT - PRODUCTOcliente                         resp_presta(nom_clien    calle     ciudad) (nom_clien nom_emple nr...
SQL    SELECT - PRODUCTOSelect * from cliente, resp_presta :cliente.                        resp_presta.nom_clien   calle ...
SQL         SELECT - PRODUCTO  Select * from cliente, resp_présta    where resp_presta.nom_clien, cliente.nom_clien       ...
SQL   SELECT - RENOMBRARs Permite cambiar el nombre de la relación,  para diferenciar atributos del mismo nombre. cliente ...
SQL      SELECT - UNION       prestatario   (nro_pres   nom_clien)                      144         MARCO                 ...
SQLSELECT - DIFERENCIA       prestatario   (nro_pres   nom_clien)                      144         MARCO                  ...
SQLSELECT - INTERSECCIÓN        prestatario   (nro_pres   nom_clien)                       144         MARCO              ...
SQL    SELECT - OUTER JOINs Reunión externa.- Cuando hacemos  producto natural, las tuplas de una tabla que  no se combina...
SQL   SELECT - OUTER JOIN2 Select * from tabla1, tabla2     where tabla1.columna = tabla2.columna  (+)  en el producto nat...
SQLSELECT - FUNCIONES AGREGADAS s Funciones agregadas.- se puede usar las   funciones agregadas: sum, avg, max, min,   cou...
SQL                  DELETEs Hasta ahora todos los programas se han  centrado en extraer información. Es  necesario además...
SQL         INSERT, UPDATEs Inserción.- Permite aumentar una o varias  tuplas en la base de datos. Se usa:  insert into r ...
SQL               VISTASs create view v as E; donde E es una  consulta “select” del SQL, y v es el nombre  de la vista.
QBEs Query by example QBE es un lenguaje para  bases de datos relacionales, basado en el  cálculo relacional de dominios.s...
QBE            SELECTs Permite recuperar información de la  base de datos. QBE elimina los  resultados duplicados por defa...
QBE   SELECT - SELECCIÓNresp_préstamo        (nom_clien        nom_emple nro_pres)                     SUCHA         RAMON...
SQL                   DELETEs Hasta ahora todos los programas se han  centrado en extraer información. Es  necesario ademá...
QBE         INSERT, UPDATEs Inserción.- Permite aumentar una o varias  tuplas en la base de datos. Por ejemplo para  inser...
Upcoming SlideShare
Loading in …5
×

Inicio Base de Datos( Lenguajes)

1,359 views

Published on

Lenguajes de Base de Datos

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,359
On SlideShare
0
From Embeds
0
Number of Embeds
192
Actions
Shares
0
Downloads
27
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Inicio Base de Datos( Lenguajes)

  1. 1. BASE DE DATOSSQL Y OTROS LENGUAJES
  2. 2. Lenguajes de bases de datoss Lenguaje de definición de datos DDL, es una serie de definiciones que especifican el esquema de la base de datoss Lenguaje de manejo de datos DML, permite manipular la base de datos, utilizando las operaciones de recuperar, insertar, actualizar y borrar. Hay 2 tipos: - DML procedimental, se especifica qué datos se necesitan y cómo obtenerlos. - DML no procedimentales, solo se indica qué datos se necesitan, no cómo obtenerlos.
  3. 3. SQLs SQL se ha establecido claramente en el lenguaje estándar de bases de datos relacionales.s Es un lenguaje LDD o de definición de datos, LMD de manipulación de datos, y LCD o de control de datos. Todo esto en un solo lenguaje SQL.s Los comandos más importante son:s LDD, definición de datos: CREATE TABLE, CREATE INDEX, CREATE VIEW, DROP TABLE, DROP INDEX, DROP VIEW, ALTER TABLE, COMMENT.s LMD, manipulación de datos: SELECT, INSERT, UPDATE, DELETE.s LCD, control de datos: GRANT, REVOKE, COMMIT, ROOLBACK.
  4. 4. SQL SELECTs Permite recuperar información de la base de datos.s Junto con insert, update y delete permiten manipular los datos de cualquier forma. SELECT - SELECCIÓN préstamo (nom_suc nro_pres importe) CAÑOTO 144 1500 BOLIVAR 122 1200 JUNIN 125 1800 BOQUERON 188 1500 JUNIN 132 1600 BOLIVAR 177 1550 Ej.1.- “Los préstamos de la sucursal JUNIN” : select * from prestamo where nom_suc=‘JUNIN’ JUNIN 125 1800 JUNIN 132 1600
  5. 5. SQL SELECT - SELECCIÓNpréstamo (nom_suc nro_pres importe) CAÑOTO 144 1500 BOLIVAR 122 1200 JUNIN 125 1800 BOQUERON 188 1500 JUNIN 132 1600 BOLIVAR 177 1550 Ej.2.- “Los préstamos de la sucursal JUNIN, con importe mayor a 1650” : select * from prestamo where nom_suc=‘JUNIN’ and importe>1650 JUNIN 125 1800
  6. 6. SQLSELECT - SELECCIÓNresp_presta (nom_clien nom_emple nro_pres) SUCHA RAMONA 134 MARCO JAIME 122 RUBÉN RUBÉN 178Ej.3.- “Los clientes que tienen el mismo nombre quesu oficial de créditos” :select * from resp_presta where nom_clien=nom_emple RUBÉN RUBÉN 178
  7. 7. SQL SELECT - PROYECCIÓNpréstamo (nom_suc nro_pres importe) CAÑOTO 144 1500 BOLIVAR 122 1200 JUNIN 125 1800 BOQUERON 188 1500 JUNIN 132 1600 BOLIVAR 177 1550 Ej.4.- “Número de préstamo e importe de los préstamos con importe mayor a 1500” : select nro_pres, importe from préstamo where importe = 1500 125 1800 132 1600 177 1550
  8. 8. SQLSELECT - PROYECCIÓNresp_presta (nom_clien nom_emple nro_pres) SUCHA RAMONA 134 MARCO JAIME 122 RUBÉN RUBÉN 178 Ej.5.- “Los clientes que tienen el mismo nombre que su oficial de créditos, sin repetir el nombre” : select nom_clien from resp_presta where nom_clien=nom_emple RUBÉN
  9. 9. SQL SELECT - PRODUCTOcliente resp_presta(nom_clien calle ciudad) (nom_clien nom_emple nro_pres)MARCO calle5 La Paz SUCHA RAMONA 134RUBÉN calle12 Potosí MARCO JAIME 122 RUBÉN RUBÉN 178Ej.6.- “Los clientes que tienen oficial y la ciudaddonde radican”. Select * from cliente, resp_presta: cliente. resp_presta. nom_clien calle ciudad nom_clien nom_emple MARCO calle5 La Paz SUCHA RAMONA 134 MARCO calle5 La Paz MARCO JAIME 122 MARCO calle5 La Paz RUBÉN RUBÉN 178 RUBÉN calle12 Potosí SUCHA RAMONA 134 RUBÉN calle12 Potosí MARCO JAIME 122 RUBÉN calle12 Potosí RUBÉN RUBÉN 178
  10. 10. SQL SELECT - PRODUCTOSelect * from cliente, resp_presta :cliente. resp_presta.nom_clien calle ciudad nom_clien nom_emple nro_presMARCO calle5 La Paz SUCHA RAMONA 134MARCO calle5 La Paz MARCO JAIME 122MARCO calle5 La Paz RUBÉN RUBÉN 178RUBÉN calle12 Potosí SUCHA RAMONA 134RUBÉN calle12 Potosí MARCO JAIME 122RUBÉN calle12 Potosí RUBÉN RUBÉN 178Select * from cliente, resp_presta where resp_presta.nom_clien, cliente.nom_cliencliente. atiende.nom_clien calle ciudad nom_clien nom_emple nro_pres MARCO calle5 La Paz MARCO JAIME 122 RUBÉN calle12 Potosí RUBÉN RUBÉN 178
  11. 11. SQL SELECT - PRODUCTO Select * from cliente, resp_présta where resp_presta.nom_clien, cliente.nom_clien cliente. resp_préstamo. nom_clien calle ciudad nom_clien nom_emple nro_pres MARCO calle5 La Paz MARCO JAIME 122 RUBÉN calle12 Potosí RUBÉN RUBÉN 178Select cliente.nom_clien, ciudad from cliente, resp_présta where resp_presta.nom_clien, cliente.nom_clien cliente. nom_clien ciudad MARCO La Paz RUBÉN Potosí
  12. 12. SQL SELECT - RENOMBRARs Permite cambiar el nombre de la relación, para diferenciar atributos del mismo nombre. cliente resp_presta (nom_clien calle ciudad) (nom_clien nom_emple nro_pres) SUCHA calle5 Sta. Cruz SUCHA RAMONA 134 RUBÉN calle12 Potosí MARCO JAIME 122 RAMONA calle8 Tarija RUBÉN RUBÉN 178 RENATO calle1 Potosí Select * from cliente, resp_presta, cliente as cl
  13. 13. SQL SELECT - UNION prestatario (nro_pres nom_clien) 144 MARCO 125 SUCHA impositor (nro_cuen nom_clien) 174 MARCO 182 RUBENEj.7.- “Los clientes que tienen préstamo o depósito”(select nom_clien from prestatario) union(select nom_clien from impositor) nom_suc MARCO SUCHA RUBEN
  14. 14. SQLSELECT - DIFERENCIA prestatario (nro_pres nom_clien) 144 MARCO 125 SUCHA impositor (nro_cuen nom_clien) 174 MARCO 182 RUBENEj.7.- “Los clientes que tienen préstamo pero notienen depósito”(select nom_clien from prestatario) except(select nom_clien from impositor) nom_suc SUCHA
  15. 15. SQLSELECT - INTERSECCIÓN prestatario (nro_pres nom_clien) 144 MARCO 125 SUCHA impositor (nro_cuen nom_clien) 174 MARCO 182 RUBEN Ej.7.- “Los clientes que tienen préstamo y depósito” (select nom_clien from prestatario) intersect (select nom_clien from impositor) nom_suc MARCO
  16. 16. SQL SELECT - OUTER JOINs Reunión externa.- Cuando hacemos producto natural, las tuplas de una tabla que no se combinan con tuplas de la otra tabla no aparecen en la relación resultante.1 Select * from tabla1, tabla2 where tabla1.columna (+) = tabla2.columna en el producto natural mantiene las tuplas de r que no se combinan.
  17. 17. SQL SELECT - OUTER JOIN2 Select * from tabla1, tabla2 where tabla1.columna = tabla2.columna (+) en el producto natural mantiene las tuplas de s que no se combinan.3 Select * from tabla1, tabla2 where tabla1.columna (+) = tabla2.columna (+) en el producto natural mantiene las tuplas de r y s que no se combinan.
  18. 18. SQLSELECT - FUNCIONES AGREGADAS s Funciones agregadas.- se puede usar las funciones agregadas: sum, avg, max, min, count, count_distinct, etc. Se usan así: select sum(importe) from préstamo suma todos los importes de la relación préstamo. s Agrupación.- Saca los resultados agrupando por los atributos indicados. La forma es: select sum(importe) from préstamo group by nom_suc suma los préstamos de cada sucursal.
  19. 19. SQL DELETEs Hasta ahora todos los programas se han centrado en extraer información. Es necesario además, insertar, borrar y modificar información en la base de datos.s Borrado.- Permite eliminar tuplas de la base de datos. Se expresa así: delete from r where <condición> donde r es una relación y es una condición where de SQL, que obtiene las tuplas de r que se eliminarán.
  20. 20. SQL INSERT, UPDATEs Inserción.- Permite aumentar una o varias tuplas en la base de datos. Se usa: insert into r E donde r es una relación y E es un consulta “select” o “values(...)” donde se indican los datos de la tupla a insertar.s Actualización.- Permite modificar uno o varios valores de la base de datos. Se puede usar la proyección extendida: update set <asigna> where <condición>
  21. 21. SQL VISTASs create view v as E; donde E es una consulta “select” del SQL, y v es el nombre de la vista.
  22. 22. QBEs Query by example QBE es un lenguaje para bases de datos relacionales, basado en el cálculo relacional de dominios.s Por tanto es lo más próximo a un lenguaje no procedural, en la práctica no existe como lenguaje, está inmerso en los lenguajes comerciales, con excelentes resultados.s También se conoce el QUEL basado en el cálculo relacional de tuplas, el cual no los trataremos.
  23. 23. QBE SELECTs Permite recuperar información de la base de datos. QBE elimina los resultados duplicados por default.s Junto con insert, update y delete permiten manipular los datos de cualquier forma.
  24. 24. QBE SELECT - SELECCIÓNresp_préstamo (nom_clien nom_emple nro_pres) SUCHA RAMONA 134 MARCO JAIME 122 RUBÉN RUBÉN 178 Ej.3.- “Los clientes que tienen el mismo nombre que su oficial de créditos” : resp_préstamo nom_clien nom_emple nro_pres P. _x _x RUBÉN RUBÉN 178
  25. 25. SQL DELETEs Hasta ahora todos los programas se han centrado en extraer información. Es necesario además, insertar, borrar y modificar información en la base de datos.s Borrado.- Permite eliminar tuplas de la base de datos. Por ejemplo para eliminar los préstamos de la sucursal JUNIN: préstamo nom_suc nro_pres importe D. BOLIVAR
  26. 26. QBE INSERT, UPDATEs Inserción.- Permite aumentar una o varias tuplas en la base de datos. Por ejemplo para insertar un cliente: cliente nom_clien calle ciudad I. JOSELITO ca3 SCZs Actualización.- Permite modificar uno o varios valores de la base de datos. Por ejemplo para incrementar el 5% a todos los saldos de las cuentas: cuenta nom_suc nro_cuen saldo U. _x * 1.05 _x

×