View
265
Download
0
Category
Preview:
Citation preview
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
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
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
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, <)
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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.
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.
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(
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:(
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
Recommended