tipos de sentencias sql y sus componentes sintácticos.doc

26
7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 1/26 Tipos de sentencias SQL y sus componentes sintácticos  Lenguaje SQL Pasamosa describir lostipos de sentencias sql que podemosencontrarnos y sus componentessintácticos . En SQL tenemos bastantes sentencias quese puedenutilizar para realizar diversas tareas. Dependiendo de las tareas, estas sentencias sepueden clasificar entres grupos principales (DML, DDL,DCL), aunquenos quedaría otro grupo que a mi entender noestá dentro del lenguaje SQL sinodel PLSQL. SENTENCIA DESCRIPCIÓN DML Manipulación de datos SELECT INSERT DELETE UPDATE Recupera datos de la base de datos. Añade nuevas filas de datos a la base de datos. Suprie filas de datos de la base de datos. !odifica datos e"istentes en la base de datos. DDL Definición de datos CREATE TA#LE DR$P TA#LE ALTER TA#LE CREATE %IE& DR$P %IE& CREATE INDE' DR$P INDE' CREATE S(N$(! DR$P S(N$N(! Añade una nueva tabla a la base de datos. Suprie una tabla de la base de datos. !odifica la estructura de una tabla e"istente. Añade una nueva vista a la base de datos. Suprie una vista de la base de datos. Constru)e un *ndice para una coluna. Suprie el *ndice para una coluna. Define un alias para un nobre de tabla. Suprie un alias para un nobre de tabla. DCL Control de acceso +RANT RE%$,E Control de transacciones C$!!IT R$LL#AC, Concede privile-ios de acceso a usuarios. Suprie privile-ios de acceso a usuarios inali/a la transacci0n actual. Aborata la transacci0n actual. PLSQL SQL Progra!tico DECLARE $PEN ETC1 CL$SE Define un cursor para una consulta. Abre un cursor para recuperar resultados de consulta. Recupera una fila de resultados de consulta. Cierra un cursor. Componentes sintácticos

Upload: ramada

Post on 13-Apr-2018

267 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 1/26

Tipos de sentencias SQL y sus componentes sintácticos Lenguaje SQL

Pasamos a describir los tipos de sentencias sql que podemos encontrarnos y sus

componentes sintácticos.

En SQL tenemos bastantes sentencias que se pueden utilizar para realizar

diversas tareas.

Dependiendo de las tareas, estas sentencias se pueden clasificar en tres grupos

principales (DML, DDL,DCL), aunque nos quedaría otro grupo que a mi entender

no está dentro del lenguaje SQL sino del PLSQL.

SENTENCIA DESCRIPCIÓN

DML

Manipulación de datos

SELECTINSERT

DELETE

UPDATE

Recupera datos de la base de datos.Añade nuevas filas de datos a la base de datos.

Suprie filas de datos de la base de datos.

!odifica datos e"istentes en la base de datos.

DDL

Definición de datosCREATE TA#LE

DR$P TA#LE

ALTER TA#LE

CREATE %IE&DR$P %IE&

CREATE INDE'DR$P INDE'CREATE S(N$(!

DR$P S(N$N(!

Añade una nueva tabla a la base de datos.

Suprie una tabla de la base de datos.

!odifica la estructura de una tabla e"istente.Añade una nueva vista a la base de datos.

Suprie una vista de la base de datos.

Constru)e un *ndice para una coluna.Suprie el *ndice para una coluna.

Define un alias para un nobre de tabla.

Suprie un alias para un nobre de tabla.

DCL

Control de acceso 

+RANTRE%$,E

Control de transacciones 

C$!!IT

R$LL#AC, 

Concede privile-ios de acceso a usuarios.Suprie privile-ios de acceso a usuarios

inali/a la transacci0n actual.

Aborata la transacci0n actual.

PLSQL

SQL Progra!ticoDECLARE

$PEN

ETC1

CL$SE

Define un cursor para una consulta.

Abre un cursor para recuperar resultados de consulta.

Recupera una fila de resultados de consulta.Cierra un cursor.

Componentes sintácticos

Page 2: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 2/26

La mayoría de sentencias SQL tienen la misma estructura.

Todas comienzan por un verbo (select, insert, update, create), a continuación le

sigue una o más clausulas que nos dicen los datos con los que vamos a operar

(from, where), algunas de estas son opcionales y otras obligatorias como es el

caso del from.

Pildoritas de Bases de Datos: SQL. Tipos de

Comandos

category: bases de datos, informática y tecnología, pildoritas de bases de datos, sqlnocomments

pildoras bbdd

A petición popular (si entendemos como popular más de una persona) sigo con lasPildoritas de Bases de Datos

Despu!s de e"plicar el dise#o de modelos relacionales $amos a pasar a la c%ic%a, esdecir, a crear modelos de datos relacionales y manipularlos Para reali&ar esta tareatodos los motores de bases de datos relacional usan un lengua'e de datos normali&ado(aunque con le$es diferencias entre tecnologías) llamado *

* (tructured uery *anguage) es un lengua'e declarati$o de acceso a bases dedatos que aplica álgebra relacional para obtener y manipular con'untos de datos desdeun modelo relacional (a%ora seguramente entendáis por qu! empec! con los dosanteriores posts) * tambi!n permite e'ecutar otra serie de comandos enfocados enla de+nición de modelos de datos relacionales

* está compuesto de dos tipos de comandos:

D** (Data De+nition *anguage): Permite crear y de+nir bases de datos, tablas, campos,índices

D* (Data anipulation *anguage): -iltra y ordena los datos que queremos manipular

 

Page 3: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 3/26

Comandos DDL

CREATE

ir$e para crear un nue$o ob'eto dentro del gestor de bases de datos *os ob'etos deuna bases de datos son tablas, índices, procedimientos almacenados y $istas

.reación de una base de datos:

/

.01A21 DA2ABA1 34B015BA15D15DA24

.reación de un índice:

/

.01A21 63D17 34B01583D6.1 43 934B0152AB*A9 (34B015.4*3A)

.reación de un procedimiento almacenado:

/

.01A21 .01A21 P04.1D01 34B015P04.1D661324

;PA0A1204<

AS

(entencias *)

;01203 ;=A*40<<>*a de+nición de los procedimientos almacenados suele cambiar dependiendo delmotor de bases de datos utili&ado 1n este caso %e utili&ado * er$er, no obstante, laestructura es muy similar en el resto de motores, por lo que para de+nir unprocedimiento almacenado en otra bases de datos con mirar la documentación osbastará

.reación de una $ista:

/

.01A21 =61? 34B015=62A A

B.43*2A@

A*210

1l comando A*210 permite reali&ar modi+caciones en un ob'eto de la base de datos yae"istente

1l uso más comn del comando A*210 es el enfocado en la edición de una tabla, A*210 2AB*1

Page 4: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 4/26

Por e'emplo, para agregar una nue$a columna a una tabla ya e"istente e'ecutaríamosel siguiente comando:

/

A*210 2AB*1 34B0152AB*A ADD 31=45.AP4 26P4@

3o obstante, el comando A*210, como todos los comandos D**, es aplicable acualquier ob'eto de la base de datos

DROP

ir$e para eliminar ob'etos de la base de datos Por e'emplo, podríamos borrar unatabla con la siguiente sentencia:

/

D04P 2AB*1 34B0152AB*A

 

Comandos DML

SELECT

1ste comando sir$e para recuperar un con'unto de datos siguiendo unos criterios de+ltrado

1l comando 1*1.2, así como los comandos PDA21 y D1*121, necesitan su $e& deuna serie de clausulas, en las cuales entrar! en el pró"imo post, que indicaran dedonde obtener la información y que condiciones deben cumplir dic%os datos

3o obstante, con indicar la procedencia de los datos ya podríamos crear nuestraprimera consulta:

/

1*1.2 .AP4 -04 2AB*A

1sta sentencia recuperaría todos los datos de la tabla, pero como pod!is imaginarpodemos querer +ltrar estos campos para obtener sólo un subcon'unto (utili&ando lasclausulas ?C101 y CA=63) o agruparlos y ordenarlos de una determinada forma (pormedio de las clausulas 04P BE y 40D10 BE)

ISERT

la sentencia 63102 agrega registros a la base de datos *a forma básica de estecomando es el siguiente:

/

63102 6324 34B0152AB*A (.4*3AF,;.4*3AG, <)

Page 5: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 5/26

=A*1 (=A*40F, ;=A*40G,<)

3o obstante, y dependiendo del motor de bases de datos, se pueden insertar en unasentencia $arios registros indicados de forma literal o incluso por medio de unaconsulta

!PDATE " DELETE

*a sentencia PDA21 sir$e para modi+car los $alores de un con'unto de registrose"istentes en una tabla

/

PDA21 34B0152AB*A 12 .AP4 H =A*40 ?C101 .AP4 H =A*40@

1l comando D1*121 elimina uno o $arios registros de una tabla:

/

D1*121 -04 34B0152AB*A ?C101 .AP4 H =A*40@

 E %asta aquí %a llegado la primera pildorita de * e que %a sido un pe#a&o terrible,pero %ay que empe&ar con un poco de teoría inicial para poder enterarnos de lasinta"is básica del lengua'e 1n las siguientes entregas intentar! que la lectura seamás práctica y amena

1n el pró"imo post %ablar! de las clausulas, los operadores lógicos y las funciones deagregado

8ndice de Pildoritas

Dise#o de Bases de Datos

Dise#o de Bases de Datos 66

* 2ipos de .omandos

* .lausulas 6

* .lausulas 66

* Ioin

* Predicados

4ptimi&ación De+nición de las selects

4ptimi&ación .onsideraciones de rendimiento de los operadores

4ptimi&ación .ondiciones A0AB*1

4ptimi&ación 4ptimi&ación 1"plain Plan

Page 6: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 6/26

Page 7: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 7/26

 

Page 8: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 8/26

Page 9: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 9/26

Page 10: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 10/26

 

Page 11: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 11/26

Page 12: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 12/26

Page 13: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 13/26

Page 14: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 14/26

Page 15: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 15/26

Page 16: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 16/26

Page 17: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 17/26

Page 18: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 18/26

Page 19: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 19/26

Page 20: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 20/26

Page 21: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 21/26

Page 22: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 22/26

Video Tutorial 4 SQL. DDL y DML. Sentencias SELECTFROM WHERE y ORDER B con Mys!l Wor"#enc$.

DDL y DML

Las sentencias SQL se di%iden en dos cate&or'as( Lenguaje dedefinición de datos( data de)inition lan&ua&e (DDL) yLenguaje demanipulación de datos (data *ani+ulation lan&ua&e (DML).

Lenguaje de definición de datos (DDL)

Las sentencias DDL se utili,an +ara crear y *odi)icar la estructura de lasta#las as' co*o otros o#-etos de la #ase de datos.

• CRETE / +ara crear o#-etos en la #ase de datos.

• LTER / *odi)ica la estructura de la #ase de datos.

• DRO0 / #orra o#-etos de la #ase de datos.

• TR12CTE / eli*ina todos los re&istros de la ta#la3 incluyendo todos los

es+acios asi&nados a los re&istros.

Lenguaje de manipulación de datos (DML)

Las sentencias de len&ua-e de *ani+ulacin de datos 5DML6 sonutili,adas +ara &estionar datos dentro de los sc$e*as. l&unose-e*+los7

• SELECT / +ara o#tener datos de una #ase de datos.

• 82SERT / +ara insertar datos a una ta#la.

• 10DTE / +ara *odi)icar datos e9istentes dentro de una ta#la.

• DELETE / eli*ina todos los re&istros de la ta#la( no #orra los es+acios

asi&nados a los re&istros.

Sentencia SELECT

La sentencia SELECT se utili,a +ara seleccionar datos de una #ase dedatos.

Page 23: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 23/26

Se &uarda el resultado en una ta#la lla*ada :result/set:.

Sintaxis de la Sentencia SELECT 1 SELECT column_name,column_name

FROM table_name;

 

Ejemplo de la sentencia SELECT

En el si&uiente e-e*+lo +edi*os el :titulo:3 :autor: y :is#n: de todos losre&istros de la ta#la :#oo"s:. Co*o %en SQL no $ace distincin entre*ay;sculas y *in;sculas. 0ode*os escri#ir SQL tanto en *in;sculasco*o *ay;sculas.

y

Sintaxis de la Sentencia SELECT SELECT * FROM table_name;

EL asterisco < si&ni)ica !ue !uere*os todas las colu*nas de la ta#la.

Page 24: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 24/26

Ejemplo de la sentencia SELECT ! "#$M

continuacin +ode*os %er el resultado de la +eticin( SELECT < FROMeli.+u#lis$er( toda la in)or*acin de la ta#la :+u#lis$er:(

Co*o %en3 esta*os utili,ando indistinta*ente la consola y el=or"#enc$. Es i*+ortante !ue la consola les sea )a*iliar3 ya !ue as' la+ueden utili,ar cuando no ten&an una inter)ace &r>)ica.

Sentencia S%L &'E#E

La sentencia WHERE se usa +ara e9traer slo los re&istros !ue cu*+lancon una condicin. Funciona co*o un )iltro.

Sintaxis de la sentencia S%L &'E#E  SELECT column_name,column_name

FROM table_name

WHERE column_name operator value;

Ejemplo de la sentencia S%L &'E#EEn este e-e*+lo3 esta*os +idiendo todos los re&istros de la ta#la:#oo"s: !ue ten&an :id+u#lis$er:?@. Conse&uire*os los resultados !uecu*+lan esa condicin(

Page 25: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 25/26

Clasula $#DE# *

La cla;sula ORDER B se utili,a +ara ordenar los resultados a tra%As deuna o *>s colu*nas.

La cla;sula ORDER B ordena los re&istros de *anera ascendente +orde)ecto. 0ara $acerlo de *anera descendente3 se +uede utili,ar lacla;sula DESC.

Sintaxis de la clasula S%L $#DE# *  SELECT column_name,column_name

FROM table_name

ORDER B column_name,column_name !SC"DESC;

 

Ejemplo de la clasula $#DE# *

En este e-e*+lo ordena*os la ta#la :#oo"s: en orden al)a#Aticoutili,ando el :t'tulo:(

Page 26: Tipos de sentencias SQL y sus componentes sintácticos.doc

7/23/2019 Tipos de sentencias SQL y sus componentes sintácticos.doc

http://slidepdf.com/reader/full/tipos-de-sentencias-sql-y-sus-componentes-sintacticosdoc 26/26