CÓMO MEJORAR EL DESARROLLO SOFTWARE CON EL USO DE BASE DE DATOS CRISTIAN CAMILO RAMIREZ RUBIO COD:

Tamaño: px
Comenzar la demostración a partir de la página:

Download "CÓMO MEJORAR EL DESARROLLO SOFTWARE CON EL USO DE BASE DE DATOS CRISTIAN CAMILO RAMIREZ RUBIO COD:"

Transcripción

1 CÓMO MEJORAR EL DESARROLLO SOFTWARE CON EL USO DE BASE DE DATOS CRISTIAN CAMILO RAMIREZ RUBIO COD: MONOGRAFÍA PARA OPTAR EL TÍTULO DE INGENIERO DE SISTEMAS UNIVERSIDAD LIBRE FACULTAD DE INGENIERÍA INGENIERÍA DE SISTEMAS BOGOTÁ D.C. 2017

2 RESUMEN En este documento se explicarán las herramientas de desarrollo sql que se encuentran en oracle como funciones, operadores, sentencias, entre otras para el desarrollo de base datos, haciendo el correcto uso de estas se podrá mejorar el desarrollo software, se explicara cada una de la manera más comprensible posible dando ejemplos que ayuden a entender mejor su funcionamiento y su utilidad. 1. INTRODUCCIÓN La programación es una de las principales actividades en el mundo ya que la mayoría de las empresas usan software para manejar sus procesos y optimizar los

3 tiempos en dichos procesos, pero no solo las empresas hacen uso del software ya que este se puede encontrar en todos los ámbitos sociales, educativos y de entretenimiento con esto la demanda del desarrollo de software es bastante alta y requiere que los desarrollos sean eficientes, fáciles de manejar y rápidos. De esta manera el desarrollo de software se ha vuelto sumamente importante en estos tiempos ya que cada vez las personas que lo consumen son más exigentes, estos desarrollos deben estar a la altura de sus expectativas de las personas que lo consumen por lo tanto cada vez debe ser mejor y más óptimo para lograr una satisfacción. Se sabe que un software cuenta con un Front-end, Back-end y una base de datos entonces cómo se puede mejorar el desarrollo de software?. Esta es una pregunta un poco difícil de responder ya que cada componente de un desarrollo es un tema bastante amplio, pero se sabe que la lógica de negocio del software siempre está en la base de datos, ya que en ella se encuentra la información que se manipulara. Con lo anterior este documento se enfocará determinar cómo se puede mejorar la programación de base de datos, se analizará cómo usando las herramientas que ofrece SQL y PL/SQL que usa Oracle, se podrá mejorar el desarrollo de software. 2. DESARROLLO Las bases de datos son usadas para el almacenamiento de datos y la manipulación de los mismos como lo puede ser agregar, actualizar, mostrar y eliminar la información que contenga, pero la realidad es que las bases de datos permiten hacer mucho más con dicha información, para poder llegar a esto primero se

4 recordará cómo se puede manipular la información en una base de datos de la manera más básica. En Oracle existen dos perfiles de base de datos que son: los usuarios y los esquemas. Los Usuarios son aquellos que solo tienen acceso a la información pero autoridad sobre esta es decir no pueden manipularla. Los Esquemas son aquellos que tiene autoridad sobre la información es decir que pueden manipularla. Estas son a lo que mi parecer es la manera más adecuada y sencilla de definir estos perfiles de base de datos queda aclarar que esta es una definición corta pero será suficiente para el propósito de este documento. SELECT Lo primero que se hará es un SELECT sencillo que es lo más básico de la programación de base de datos. Es una sentencia para obtener la información de una tabla, se hace de la siguiente manera SELECT * FROM nombre_tabla esta consulta traerá toda la información de la tabla. SELECT campo1,campo2 FROM nombre_tabla está solo los datos que estén en las columnas campo1 y campo2. SELECT campo1,campo2 FROM nombre_tabla WHERE campo3=condición esta consulta traerá los campos 1 y 2 en donde se cumpla la condición establecida. Estos son algunos ejemplos de un select más adelante se mostrará como se puede usar de una mejorar manera explotando todo su potencial. INSERT INTO El INSERT es la sentencia para agregar datos a una tabla, su sintaxis es la siguiente. INSERT INTO nombre_tabla (campo1,campo2,campo3) VALUES (valor1,valor2,valor3) esta sentencia guardara los valores correspondientes en el orden en que se encuentran con los campos

5 INSERT INTO nombre_tabla VALUES (valor1,valor2,valor3) en esta sentencia se muestra que no es necesario especificar los campos si se va a agregar todos los campos de la tabla UPDATE El UPDATE es la sentencia para actualizar uno o varios datos de una tabla y su sintaxis es la siguiente. UPDATE nombre_tabla set campo1=valor1 esta sentencia actualizará todos los campos1 con el valor1. UPDATE nombre_tabla set campo1=valor1 WHERE campo2=condicion esta sentencia actualiza los campos1 con el valor1 que cumplan con la condición del campo2 DELETE El DELETE es la sentencia que permite eliminar los registros en la tabla, se hace de la siguiente forma. DELETE FROM nombre_tabla esta instrucción eliminara todos los datos de la tabla. DELETE FROM nombre_tabla WHERE campo1=condicion esta instrucción eliminar solo los datos que cumplan con la condición. Haciendo un pequeño repaso de las sentencias más comunes que son el SELECT, INSERT INTO, UPDATE y el DELETE se puede comenzar a observar todas las herramientas que nos ofrece el lenguaje SQL y PL/SQL para lograr un programación que ayude al desarrollo software. 3. OPERADORES ARITMÉTICOS Para determinar cómo el uso de SQL Y PL/SQL puede mejorar el desarrollo software se iniciará explicando los operadores aritméticos. Estos operadores son +, -, /, * y aunque parezca que no son de gran utilidad la verdad es que pueden ayudar mucho, son bastante útiles ya que con estos se pueden realizar varias operaciones dentro la mismas consultas como los siguientes ejemplos.

6 Se cuenta con una tabla llamada productos que tiene las siguiente columnas nombre_producto y valor_producto se mostrará un precio diferente del producto sin alterarlo en la tabla se puede hacer de la siguiente manera. SELECT nombre_producto, valor_producto*2 FROM productos esta consulta traerá todos nuestro productos con el precio multiplicado por 2, sólo será visualmente aunque la información será la misma, si se cambiara el * por otro operador realizará la operación correspondiente y esto es lo que mostrará en la consulta. Estos operadores no solo se pueden usar en un SELECT se pueden usar en cualquier consulta a continuación algunos ejemplos: UPDATE productos set valor_prodcuto=(valor_producto+1000) SELECT nombre_producto, (valor_producto*100)/2 from products UPDATE productos set valor_prodcuto=(valor_producto-1000)/4 Estos ejemplos fueron sencillos pero dan una idea de útiles que pueden ser los operadores aritméticos y que en ocasiones solo con conocer las bases se puede mejorar las prácticas de desarrollo. Ahora se verán otros aspectos básicos pero a su vez importantes. 4. ALIAS, CONCATENACIÓN Y CADENAS DE CARACTERES EN CONSULTAS Estas funciones se usan en su mayoría para ayudar en la visualización de los datos como se mostrará a continuación: ALIAS Un alias es la manera de sobrenombrar a los elementos en una sentencia, estos pueden ayudar a identificar más rápidamente los elementos que se están manipulando en la consulta un ejemplo sería: SELECT nombre_producto AS Producto, valor_producto AS Valor FROM productos P En este ejemplo se puede observar cómo las columnas ahora serán identificadas por el nombre que se les asignó después del AS, y para las tablas solo será necesario darle un valor después de su nombre esta última es bastante útil ya que si

7 existieran dos tablas con una columna que se llame igual se identificará por el alias haciendo referencia a la tabla de donde proviene, un ejemplo sería el siguiente: SELECT P1.valor_producto, P2.valor_producto FROM productos1 P1, Productos2 P2 o bien SELECT productos1.valor_producto, Productos2.valor_producto FROM productos1, Productos2 Los Alias también pueden ser usados de esta manera AS nuevo nombre. Aunque en lo personal prefiero darles un alias ya que de esta manera se es más fácil y rápido leer la consultas. CONCATENACIÓN Y CADENAS DE CARACTERES La concatenación es la manera de unir los resultados de los campos facilitando la visualización de los datos sin la necesidad de crear campos adicionales con la misma información, para hacer esto en oracle se usa el carácter de la siguiente manera: SELECT nombre_producto valor_producto AS nombre valor FROM productos El resultado que arrojara sera la union de los dos campos sin necesidad de crear uno nuevo. También se pueden usar cadenas de caracteres solas sin necesidad de que haya un campo en la tabla, por ejemplo: SELECT nombre_producto su valor es valor_producto FROM producto De esta manera ya se incluirá las cadenas de caracteres sin que estén en una tabla de, igualmente estas son tratadas como un campo más en el momento de realizar las consultas SELECT CAMPO 1, CAMPO 2,nombre_producto FROM productos. 4. RESTRICCIONES Las restricciones son las sentencias que utilizaremos para delimitar la información que se mostrará de una consulta, ya se ha observado la manera de filtrar la información y haciendo uso de la sentencia WHERE ya que esta es la que indica cuales son las condiciones para filtrar la información en la consulta, ahora se explica a mayor detalle esta sentencia y de algunas posibles restricciones que se puede usar con esta. Hay dos tipos de condiciones o restricciones son las comparativas y las lógicas.

8 RESTRICCIONES COMPARATIVAS En las comparativas se encuentran las siguientes: =, >,=>,<, <=, <>, IN, BETWEEN, LIKE Y NULL estas restricciones comparan un campo con las condición establecida por ejemplo: SELECT * FROM productos WHERE valor_producto = 1000 esta consulta traera los productos que tengan un valor igual a 1000, SELECT * FROM productos WHERE valor_producto > 1000 aquí que sean mayores a 1000, SELECT * FROM productos WHERE valor_producto < 1000 que sean menores a 1000, SELECT * FROM productos WHERE valor_producto >= 1000 mayor e igual a 1000, SELECT * FROM productos WHERE valor_producto <= 1000 menor e igual a 1000, SELECT * FROM productos WHERE valor_producto <> 1000 diferente a 1000, SELECT * FROM productos WHERE valor_producto IN (1000,900) los productos que contengan los valores de 1000 y 900, SELECT * FROM productos WHERE valor_producto BETWEEN 1000 AND 2000 traerá los productos que cuyo valor esté entre 1000 y 2000, SELECT * FROM productos WHERE nombre_producto LIKE producto1 traera los productos cuyo nombre sea producto1 sin importar las mayúsculas ni minúsculas, esta condición es bastante particular ya que ya que se puede usar con un carácter especial que es el % y significa que ignora lo que está antes o después de este por ejemplo %1 si se colocara de esta manera traerá los productos en los que el nombre termine en 1 porque antes de el uno todo será ignorado, si se colocara de la siguiente manera 1% traera los productos en los que el nombre comience en uno y si se usara de esta manera %1% traera los productos que contengan 1 en su nombre, ya no le importaran los caracteres ni antes ni después del 1, esta es una condición bastante usada ya que sirve para filtrar algo sin saber su valor exacto, SELECT * FROM productos WHERE valor_producto IS NULL y finalmente esta condición es que traerá los productos con un valor de NULL. RESTRICCIONES LÓGICAS Estas restricciones son AND, OR, NOT estas restricciones se usan en conjunto con otra condición, esto quiere decir que se necesitan dos o más condiciones para hacer uso de ellas los ejemplos serían los siguientes:

9 SELECT * FROM productos WHERE valor_prodcuto < 1000 AND nombre_producto LIKE %prod% esta consulta traerá los productos si solo las 2 condiciones se cumplen, SELECT * FROM productos WHERE valor_prodcuto < 1000 OR nombre_producto LIKE %prod% esta consulta traerá los productos si una u otra condición se cumple y SELECT * FROM productos WHERE valor_prodcuto NOT IN ( 1000,900) él NOT niega una condición comparativa y se usa con IN, LIKE, BETWEEN Y NULL. Saber los tipos de restricciones ayuda a que las consultas sean más precisas y eficientes porque no trae informacion innecesaria, también es importante saber cuales son para usar las que más convengan, por ejemplo si se quisiera que la consulta filtre por un campo con tres datos distintos usamos el IN si fuera solo uno se usa el = y de esta manera con las demás restricciones. 5. FUNCIONES Hay varias maneras de restringir la información, operaciones básicas con los campos y formas de de visualizar mejor la información.hay algo muy importante en la programación de base de datos y son sus funciones que muchas veces por el desconocimiento de las mismas son poco usadas y pueden ser muy útiles al momento del desarrollo del software. Pero que es una funcion, basicamente es la manera de modificar un dato o en este caso un campo ya sea cambiando el tipo de dato al que está asociado el campo ó haciendo una operación en concreto con ese campo. Una función recibe un argumento y devuelve otro valor. FUNCIONES PARA CARACTERES Las funciones para caracteres se dividen en dos: los casos de conversión y la manipulación de los caracteres. En los casos de conversión se encuentran las siguientes funciones UPPER, LOWER e INITCAP. UPPER: Esta función convierte todo el carácter que se pase como argumento en mayúsculas su sintaxis es la siguiente UPPER( el producto es ) y el resultado sería EL PRODUCTO ES, también su argumento puede ser un campo claro mientras este sea de tipo de carácter un ejemplo practico seria SELECT

10 UPPER(nombre_producto) FROM productos el resultado es que todos los nombres de los productos estarán en mayúsculas. LOWER: Esta función es similar a UPPER, lo que cambia es que al usar esta el resultado es que el carácter que se pasa como argumento será convertido todo en minúsculas ejemplo LOWER( EL PRODUCTO ES ) el resultado sería el producto es al igual que con UPPER esta función también se puede usar con campos de una tabla. INITCAP: Está función es como las anteriores recibe un carácter como argumento que también puede ser un campo de una tabla pero lo que devuelve el el carácter con las primeras letra en mayúscula INITCAP( el producto es ) el resultado sería El Producto Es. Las funciones de manipulación de caracteres que son CONCAT, SUBSTR, LENGTH, INSTR, LPAD, RPAD, REPLACE y TRIM. CONCAT: Esta función permite unir dos argumentos es como el carácter, pero su sintaxis es la siguiente CONCAT( producto, valor ) el resultado es productovalor si se quisiera unir más de un argumento la manera para hacerlo es la siguiente CONCAT(CONCAT( producto, : ), valor ) el resultado sería producto : valor. SUBSTR: Esta función permite sacar una parte de argumento con una determinada longitud, su sintaxis es SUBSTR( producto,1,3 ) donde producto es la palabra de la cual obtendremos un fragmento del argumento, 1 es la posición desde donde comenzará y 3 donde terminará, el resultado es pro esta función es bastante útil ya que permite manipular en gran medida un campo, también se puede usar con campos de tabla SELECT SUBSTR(nombre_producto,1,3 ) FROM productos esto mostrará los tres primeros caracteres del nombre de los productos. LENGTH: Esta función devolverá el tamaño en números del argumento que se envíe, su sintaxis es LENGTH( producto ) lo que devolverá es 8 ya que esta es la cantidad de letras o caracteres que tiene la palabra producto de igual manera esta también se puede usar con campos de tablas.

11 INSTR: Esta función requiere dos argumentos y devolverá el número de la posición donde se encuentra segundo argumento en el primer argumento, su sintaxis es INSTR( producto, u ) donde buscará en producto la posición de u la cual es 5. LPAD Y RPAD: Estas funciones son bastante similares y requieren 3 argumentos y nos una nuevo carácter su sintaxis es LPAD( producto,10, - ) devolverá lo siguiente --producto y RPAD( producto,10, - ) producto--, lo que hacen estas funciones es completar los espacios que falten con el carácter especificado, esto quiere decir que si el primer argumento es menor al segundo lo que sobre lo completara con el tercer argumento. TRIM: Esta función recibe 2 argumentos y devolverá un nuevo carácter su sintaxis es TRIM( p FROM producto ) devolverá producto, lo que hace esta función es buscar el primer argumento en el segundo, quitarlo y devolver el segundo argumento sin el primero. 6. FUNCIONES PARA NÚMEROS Las funciones para números son más reducidas, pero son bastante útiles, son las siguientes: ROUND(),TRUNC() y MOD(). ROUND: Esta función recibe un parámetro decimal y un entero que devolverá el parámetro inicial redondeado hasta la posición del segundo parámetro, su sintaxis es; ROUND(25.237,2) el resultado de esto sería lo que es es que redondeará segun la posicion del segundo parametro después del punto decimal, si se observa después del punto hay tres posiciones el valor del parámetro es 2 eso quiere decir que redondeará el decimal en la posición 2 que en este caso es 7 y al redondear 7 da 10 ya que si es mayor a 5 redondea hacia arriba si no, lo hará hacia abajo y ya que el primer redondeo es 10 este se encarga de hacer la operación nuevamente obteniendo como resultado TRUNC: Esta función recibe un parámetro decimal y otro entero devolviendo un decimal o entero la sintaxis es TRUNC(25.237,2) El resultado de esta función es como se puede observar el TRUNC no aproxima simplemente omite el decimal en la posición que se indique como segundo parámetro.

12 MOD: Esta función recibe dos parámetros enteros o decimales que devolverá otro parámetro entero o decimal su sintaxis es MOD(1600,300) el resultado al ejecutar esta funcion sera 100, y este es el residuo que se obtiene al realizar la división entre el primer parámetro y el segundo. 7. FUNCIONES PARA FECHAS Las funciones para fechas son verdaderamente útiles ya que las fechas suelen ser un tipo de dato difícil de manejar lógicamente, pero haciendo uso de estas funciones facilitara su manejo. Estas funciones son MONTHS_BETWEEN, ADD_MONTHS, NEXT_DAY y LAST_DAY. MONTHS_BETWEEN: Esta función recibe dos parámetros de fecha y devolverá un número entero o decimal, su sintaxis es la siguiente MONTHS_BETWEEN('01-SEP- 95','11-JAN-94') El resultado es la cantidad de meses que hay entre estas 2 fechas que es y el resultado será positivo si la primera fecha es mayor en caso contrario el resultado es negativo. ADD_MONTHS: Esta función recibe dos parámetros una fecha y un entero y devolverá una fecha, esta es sintaxis ADD_MONTHS( 31-JAN-96',1) el resultado es una fecha con un mes más al del primer parámetro el cual es 29-FEB-96 y de esta manera seguirá aumentado meses haciendo el cálculo correspondiente al de la fecha. NEXT_DAY: Esta función recibe una fecha y un palabra que es el dia y devolverá una fecha, esta es su sintaxis NEXT_DAY ('01-SEP-95','FRIDAY') el resultado es la fecha del día siguiente de la fecha que se coloco que en este es '08-SEP-95'. LAST_DAY: Esta función recibe un único parámetro que es la fecha y devolverá otra fecha, la sintaxis es LAST_DAY ('01-FEB-95') El resultado es el último día del mes de la fecha que se pasó y es 29-FEB FUNCIONES DE CONVERSIÓN Y GENERALES Las funciones de conversión y generales se caracterizan por no esperar un tipo de dato específico también por no devolver un tipo específico, ya que estas funciones

13 están elaboradas para funcionar con cualquiera dato. Las funciones de conversión son TO_CHAR, TO_DATE y TO_NUMBER de estas funciones solo se mostrará su funcionamiento básico pero si quieren usar todo su potencial les recomiendo revisar la documentación de oracle ya que aquí se encuentran todos sus diferentes usos. Todas estas funciones tiene una misma finalidad como su nombre lo indica que es convertir un dato en otro y también funciona de la misma manera reciben dos argumentos y devuelven un tipo de dato, los parámetros son el dato que quiere convertir y el formato al que se convertirá, estos formatos son varios se usan dependiendo del dato a convertir por ejemplo TO_CHAR convierte el dato que se pase a un carácter, TO_DATE a una fecha y TO_NUMBER a un número, está su funcionalidad básica pero como se mencionó anteriormente es recomendable revisar la documentación de oracle para profundizar más en el tema y todas las posibilidades de estas funciones. Las funciones generales comparten una su principal característica que es verificar que hacer cuando un dato es nulo, estas funciones son: NVL, NVL2, NULLIF Y COALESCE. NVL: Esta función recibe dos parámetros y devuelve uno, su sintaxis es NVL(columna, valor ) lo que hará esta función es que si el valor de la columna es igual a NULL en vez de mostrar NULL mostrará HOLA. Esta función es bastante útil si se quiere operar entre campos y por alguna razón alguno de estos llegara a tener un valor nulo lo podemos reemplazar para que no haya error al momento de hacer la operación. NVL2: Esta función recibe 3 parámetros y devuelve uno, su sintaxis es NVL2(columna, valor1, valor2 ) Lo que hace esta función es si su primer parámetro es diferente de nulo mostrará el valor1 y si por el contrario el primer valor es igual a nulo mostrará valor2. NULLIF: Esta función recibe dos parámetros y devuelve uno, su sintaxis es NULLIF(columna1,columna2) Lo que hace esta función es comparar ambos parámetros y ambos resultan ser iguales el resultado que mostrará es NULL. COALESCE: Esta función recibe n parámetros es decir la cantidad que se desee y devolverá uno, su sintaxis es COALESCE(columna1, columna2,, columnan)

14 Lo que hace esta función es retornar el primer valor no nulo que se encuentra dentro de ella por ejemplo si la columan1 fuera igual a nulo y la columna2 fuera diferente de nulo devolverá la columna2. 9. FUNCIONES DE GRUPOS Se ha hablado ya de funciones pero estas eran funciones de una fila lo que significa que mostraban un resultado por cada fila que se obtenía de la consulta realizada pero también hay funciones de múltiples filas y esto significa que mostraran un resultado sin importar la cantidad de filas que hayan. Estas funciones son AVG, COUNT, MAX, MIN, STDDEV, SUM, VARIANCE. Todas estas funciones comparten algo y es que solo necesitan un argumento y es el campo de la tabla a la que se le quiera hacer una función de grupo y también devolverán sólo un valor, otra cosa que tiene en común es que casi siempre se usan con número ya que la mayoría de estas funciones lo que realiza son operación matemáticas, su sintaxis es de esta manera FUNCIÓN DE GRUPO(COLUMNA) con esto en cuenta se porcede a explicar cada una. AVG: Esta función obtiene un promedio de todos los valores de la columna que se paso como parametro. COUNT: Esta función realiza un conteo de cuántos resultados hay de esa columna después de hacer la consulta. MAX: Esta función obtiene el máximo valor de todos los resultados de la consulta. MIN: Esta función obtiene el mínimo valor de todos los resultados de la columna de la consulta. STDDEV: Esta función obtiene la desviación estándar de todos los resultados de la columna de la consulta que se realizó. SUM: Esta función realiza la suma de todos los valores de la columna que se obtuvieron de la consulta.

15 VARIANCE: Esta función encuentra la diferencia o variante de los resultados de la columna de la consulta. 10. AGRUPACIÓN Y ORDENAMIENTO DE FILAS Se han mostrado las diferentes funciones que hay tanto para una fila como para varias pero estas funciones se usan para manipular los valor de las columnas y sus resultados. Ahora se analizará cómo se pueden manipular las filas obtenidas al hacer la consulta, estas estas son ORDER BY, GROUP BY Y HAVING. ORDER BY: Esta sentencia se encarga de ordenar los resultados obtenidos por medio de una consulta de la siguiente manera SELECT * FROM productos ORDER BY column1 ASC Lo que quiere decir esta esta consulta es que va a traer todos los datos de la tabla productos ordenados por los valores de la column1 de manera ASC(ascendente) también en vez de usar column1 se puede utilizar la posición de la columna 1, 2, 3, etc de igual manera en vez de usar ASC se puede usar DESC(descendente) también se incluirá más de una columna, claro mientras estas estén contenidas en el SELECT. GROUP BY: Esta sentencia agrupara las filas de acuerdo a la columna que se desee y si sus valores son iguales de la siguiente forma SELECT producto_id FROM productos GROUP BY producto_id lo que se interpreta de esta consulta es que agrupara todos los resultados que sean iguales de la columna producto_id algo a tener en cuenta es que al hacer un GROUP BY la información que trae esta agrupada por lo tanto no se puede incluir dentro de la consulta columnas que no se pueden agrupar o que causen conflictos al momento de agrupar la información deseada. HAVING: Esta sentencia lo que hace es un filtro por agrupaciones de una consulta de la siguiente manera SELECT producto_id FROM productos GROUP BY producto_id HAVING producto_id > 20 Al interpretar esta consulta lo que quiere decir es que traerá las agrupaciones de los productos_id y además de estas agrupaciones sólo traerá aquellos que sean mayores a 20, el HAVING siempre se una con el GROUP BY ya que el HAVING se encarga es de filtrar lo que esté agrupado.

16 Esta fue una explicación rápida de estas sentencias pero como con las funciones estas sentencias pueden ser usadas de muchas maneras y lo más recomendable es revisar la documentación de oracle. 11. OBTENER DATOS DE VARIAS TABLAS Se ha hablado de varias formas de manipular los datos en las consultas, ahora se explicará como utilizar información de 2 tablas de manera adecuada ya que si bien se puede usar algo como esto SELECT * FROM tabla1, tabla2 WHERE tabla1.id=tabla2.id donde traera toda la informacion de ambas tablas, donde sus respectivos id sean iguales no es la manera más adecuada de hacerlo porque se está obteniendo toda la información de la dos tablas y comparando cuales tiene los id iguales, lo ideal es traer los datos que comparten esos id o la condición deseada de las tablas para eso utilizaremos las sentencias JOIN que como su nombre indica son sentencias para agrupar datos, estos son INNER JOIN, LEFT OUTER JOIN, RIGHT OUTER JOIN Y FULL OUTER JOIN. INNER JOIN: Esta sentencia de agrupación de datos es usada para traer los datos que tienen que están relacionados en las tablas de la siguiente manera SELECT * FROM tabla1 INNER JOIN tabla2 ON tabla1.id=tabla2.id lo que hace esta sentencia es selecciona todos los datos de la tabla1 y de la tabla2 que están relacionados por el id, la diferencia de hacerlo de esta manera en vez de usar el where es que no se esta llamando la tabla 2 completa si no solo las filas que se relacionan por el id o la condición establecida. También se puede hacer inner join de más tablas y relacionarlas con las que se estén usando en la consulta un ejemplo es SELECT * FROM tabla1 INNER JOIN tabla2 ON tabla1.id=tabla2.id INNER JOIN tabla3.id ON tabla1.id=tabla3.id INNER JOIN tabla4 ON tabla4.id=tabla2.id como se observo podemos traer cuantos inner join se requieran y relacionarlos con la distintas tablas que se vaya a usar para traer la información que se desea. LEFT OUTER JOIN: Esta sentencia tiene las mismas características que un INNER JOIN y se maneja de la misma manera SELECT * FROM tabla1 LEFT OUTER JOIN tabla2 ON tabla1.id=tabla2.id lo que hace esta consulta es traer todos los

17 datos de la tabla1 incluyendo los que tenga relación con la tabla2, esto quiere decir que traera todos los datos de la tabla1 aun si estos no están relacionados con la tabla2. RIGHT OUTER JOIN: Esta sentencia es muy similar a LEFT OUTER JOIN lo único que cambia es que traerá todos los datos de la tabla2, pero se maneja de la misma manera que las sentencias anteriores. FULL OUTER JOIN: Esta sentencia es como las demás que se han visto anteriormente, haciendo uso de esta traerá todos los datos de ambas tablas tanto los que están relacionados como los que no. El uso de los JOIN es muy importante ya que primero mejoran bastante las consultas, segundo se entiende de mejor manera como se están obteniendo los datos y en caso de que una unión no de el resultado esperado se pueden combinar hasta obtener el resultado que se necesite. 12. SUBCONSULTAS Las subconsultas son una de manera de traer información de una consulta dentro de otra, también se podría ver como consultas anidadas una dentro de otra, las subconsultas son como consultas normales pero pueden recibir argumentos de otra en la que se encuentra incluida en la consulta principal. Las subconsultas se pueden usar en cualquier parte de la consulta principal ya que el objetivo de estas es traer datos los ejemplos son SELECT id_producto,(select nombre_producto2 FROM productos2 WHERE id_producto2=id_producto1) FROM productos SELECT * FROM productos WHERE precio_producto < (SELECT MIN(precio_producto) FROM producto) En estos ejemplos podemos ver cómo usamos las subconsultas tanto en la obtención de datos como en las condiciones. Las subconsultas pueden ser muy útiles si se necesita algún dato que es difícil de obtener en la consulta que se este utilizando. Si se usara una subconsulta como condición y esta devolviera más de un dato se tendrían que usar sentencias para usar grupos de datos como son IN, ALL, ANY

18 IN: Se encarga de hacer un lista para filtrar por los diferentes datos que se obtienen de una subconsulta, un ejemplo es SELECT * FROM productos WHERE id_producto IN (SELECT id_producto FROM porductos WHERE precio_producto < 200). ALL: Se usa con los operadores <ALL el mayor valor de todos y >ALL el menor valor de todos retorne la subconsulta como por ejemplo SELECT * FROM productos WHERE precio_producto < ALL (SELECT precio_producto WHERE id_producto >100). ANY: Se usa con <ANY todos los valores menos el máximo de ellos y >ANY todos los valores menos el menor de ellos y se de la misma manera que con ALL. 13. OPERADORES DE CONJUNTOS. Los operadores de conjuntos permiten usar varias consultas y tratarlas como conjuntos, estas son UNION, UNION ALL, INTERSECT Y MINUS, para usar los operadores de conjuntos debemos tener en cuenta lo siguiente que la consultas usadas retornen la misma cantidad de valores y según su orden el mismo tipo de dato. UNION: Une los resultados de las consultas excluyendo los que tenga en común el ejemplo sería SELECT id_producto, nombre_producto FROM productos UNION SELECT id_producto2, nombre_producto2 FROM productos2. UNION ALL: Unirá los resultados de ambas consultas incluyendo los datos que tengan en común o repetidos el ejemplo es SELECT id_producto, nombre_producto FROM productos UNION ALL SELECT id_producto2, nombre_producto2 FROM productos2. INTERSECT: Une los datos que tiene en común ambas consultas el ejemplo es SELECT id_producto, nombre_producto FROM productos INTERSECT SELECT id_producto2, nombre_producto2 FROM productos2. MINUS: Trae los datos que solo estén en la primera consulta y excluye los de la segunda consulta incluso aquellos que tienen en común las dos tablas el ejemplo es

19 SELECT id_producto, nombre_producto FROM productos MINUS SELECT id_producto2, nombre_producto2 FROM productos FUNCIONES Y TRIGGERS FUNCIONES: También se pueden crear funciones, para que se encargan de manipular un dato o varios y darme otro ó otros como resultado, para crear una función se realiza de la siguiente manera.. CREATE OR REPLACE FUNCTION nombre función (parámetro <tipo parámetro>) RETURN tipo de parámetro BEGIN sentencia o consulta que se vaya a realizar con el dato y su respectivo retorno. END; TRIGGERS: Los triggers es la manera de realizar una determinada acción cuando se realiza otra esto quiere decir que cuando se indique que se haga una acción sobre una tabla como un UPDATE, INSERT O DELETE se ejecuta otra acción UPDATE, DELETE O INSERT sobre otra tabla o la misma la creación de un trigger es la siguiente: CREATE OR REPLACE TRIGGER nombre trigger BEFORE INSERT OR UPDATE OF salary, department_id OR DELETE ON employees BEGIN CASE WHEN INSERTING THEN DBMS_OUTPUT.PUT_LINE('Inserting'); WHEN UPDATING('salary') THEN DBMS_OUTPUT.PUT_LINE('Updating salary'); WHEN UPDATING('department_id') THEN DBMS_OUTPUT.PUT_LINE('Updating department ID'); WHEN DELETING THEN DBMS_OUTPUT.PUT_LINE('Deleting');

20 END END CASE; 15. COMO MEJORAR CON LO APRENDIDO El tema de esta monografía es cómo mejorar el desarrollo de software con la programación de base de datos entonces cómo se puede mejorar con lo que se ha mostrado muy simple al haber conocido muchas de las funciones y sentencias del lenguaje sql y pl/sql se ha logrado un gran avance ya que si no se conoce a fondo en lo que se va a trabajar cómo hacer que esto sea mejor. Desde mi punto de vista no hay manera de determinar cuál es la mejor manera de hacer las cosas ya que en cada problema que se presente se pueden usar y emplear varias soluciones dependiendo del contexto en el que nos encontremos y de la manera que se nos haga más fácil resolver dicho problema, siendo este el caso el mejor punto de partida para mejorar es saber que puede usar y como lo puede usar y esto fue lo que quise transmitir en este documento, aqui no se encuentre todo acerca de sql y pl/sql pero si se aplica lo que se ha visto,desde lo más básico poco a poco se puede encontrar una manera de realizar los desarrollos un poco mejor y con ello mejorar cada vez más ya que cada persona piensa de manera diferente por lo tanto programa de manera diferente y con ello mejora a su propia manera. CONCLUSIONES Se ha observado como solo conociendo lo básico se puede mejorar la programación de base de datos y con ello el desarrollo software. Conocer la diversidad de funciones, sentencias y herramientas que existen se puede determinar cuál usar para que sea mejor.

21 Mostrar las diferentes herramientas de las que disponemos y dar una explicación corta pero entendible de cada una. BIBLIOGRAFÍA

Introducción 1 Recuperación de Datos mediante la Sentencia SQL SELECT

Introducción 1 Recuperación de Datos mediante la Sentencia SQL SELECT Introducción Objetivos I-2 Objetivos del Curso I-3 Oracle11g - 12cI-5 Oracle Database 11g - 12cI-6 Oracle Application Server 11g - 12cI-7 Oracle Enterprise Manager 11g - 12cGrid Control I-8 Sistema de

Más detalles

Manual Aprendiendo Practicando Oracle SQL (Spanish Edition) Click here if your download doesn"t start automatically

Manual Aprendiendo Practicando Oracle SQL (Spanish Edition) Click here if your download doesnt start automatically Manual Aprendiendo Practicando Oracle SQL (Spanish Edition) Click here if your download doesn"t start automatically Manual Aprendiendo Practicando Oracle SQL (Spanish Edition) Manual Aprendiendo Practicando

Más detalles

Oracle Database 12c SQL and PLSQL Fundamentals

Oracle Database 12c SQL and PLSQL Fundamentals Oracle Database 12c SQL and PLSQL Fundamentals DESCRIPCION MODULOS DE CAPACITACION Introducción Información general sobre 12c de base de datos Oracle y productos afines Descripción de los conceptos y la

Más detalles

FUNDAMENTOS ORACLE 12C

FUNDAMENTOS ORACLE 12C FUNDAMENTOS ORACLE 12C Introducción a Oracle Fundamentos 12c Aprende a programar en SQL con la base de datos más poderosa del mercado. Diseña y modela bases de datos corporativas utilizando las herramientas

Más detalles

Oracle Fundamentos. Programa de Estudio.

Oracle Fundamentos. Programa de Estudio. Oracle Fundamentos Programa de Estudio Oracle Fundamentos Aprende a programar en SQL con la base de datos más poderosa del mercado. Diseña y modela bases de datos corporativas utilizando las herramientas

Más detalles

Oracle Fundamentos. Programa de Estudio.

Oracle Fundamentos. Programa de Estudio. Oracle Fundamentos Programa de Estudio Oracle Fundamentos Aprende a programar en SQL con la base de datos más poderosa del mercado. Diseña y modela bases de datos corporativas utilizando las herramientas

Más detalles

RESUMEN SQL. Tipo de coincidencia Modelo Planteado Coincide No coincide. Varios caracteres 'ab*' 'abcdefg', 'abc' 'cab', 'aab'

RESUMEN SQL. Tipo de coincidencia Modelo Planteado Coincide No coincide. Varios caracteres 'ab*' 'abcdefg', 'abc' 'cab', 'aab' RESUMEN SQL Agustina Botas May COMO SE ESCRIBE UNA CONSULTA SELECT : campos WHERE : criterios que se aplican directamente a los datos (aplica a TODOS los registros) GROUP BY: agrupación de los datos seleccionados

Más detalles

SQL Oracle 12c. Este curso le permitira saber y conocer:

SQL Oracle 12c. Este curso le permitira saber y conocer: SQL Oracle 12c Las habilidades de lenguaje SQL son una necesidad para cualquier trabajo de Tecnología de la información en la actualidad. Además, debido a la naturaleza estándar de la sintaxis del lenguaje

Más detalles

SQL SERVER SQL Server 2005 permite tres tipos de operaciones con conjuntos: UNION, disponible en todas las versiones de SQL Server.

SQL SERVER SQL Server 2005 permite tres tipos de operaciones con conjuntos: UNION, disponible en todas las versiones de SQL Server. SQL SERVER 2005 Operaciones con Conjuntos SQL Server 2005 permite tres tipos de operaciones con conjuntos: UNION, disponible en todas las versiones de SQL Server. EXCEPT, nuevo en SQL Server 2005. INTERSECT,

Más detalles

El SQL es un lenguaje estándar de programación para el acceso a bases de datos.

El SQL es un lenguaje estándar de programación para el acceso a bases de datos. El SQL es un lenguaje estándar de programación para el acceso a bases de datos. El lenguaje SQL se utiliza para acceder y manipular datos en cualquier base de datos del mercado, como por ejemplo, para

Más detalles

SQL Los fundamentos del lenguaje (con ejercicios corregidos) (2ª edición)

SQL Los fundamentos del lenguaje (con ejercicios corregidos) (2ª edición) Introducción 1. Un poco de historia 2. Las normas SQL 3. Descripción rápida del modelo relacional 3.1 Principales conceptos del modelo relacional 3.2 Principales reglas 4. El álgebra relacional 4.1 Aspectos

Más detalles

Lenguaje de manipulación de datos

Lenguaje de manipulación de datos 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 de la BD. El más popular es SQL. Tablas de ejemplo

Más detalles

Bases de Datos 1. Teórico: Structured Query Language

Bases de Datos 1. Teórico: Structured Query Language Bases de Datos 1 Teórico: Structured Query Language Historia Los orígenes del SQL están ligados a los orígenes de las bases de datos relacionales Estandarizado por ANSI en 1986 (SQL-86) Hubieron varias

Más detalles

Insertar Datos en Tablas

Insertar Datos en Tablas Insertar Datos en Tablas La instrucción básica para insertar valores a los atributos (columnas) de una tabla es la instrucción INSERT INTO Insertar una sola tupla Para insertar una tupla en la tabla, se

Más detalles

El Lenguaje SQL. Funciones en SQL

El Lenguaje SQL. Funciones en SQL El Lenguaje SQL Funciones en SQL Funciones en SQL Las funciones realizan una acción tomando argumentos de entrada y retornando un valor como resultado. Son utilizados para: Realizar cálculos sobre datos.

Más detalles

Manual de Sentencias Básicas en SQL

Manual de Sentencias Básicas en SQL Manual de Sentencias Básicas en SQL Pues hoy que he estado enredando un rato con MySQl, y me he acordado de aquellos comienzos en los que tenía que volver a mis antiguos apuntes para lograr entender las

Más detalles

LENGUAJE DE CONSULTA ESTRUCTURADO (SQL)

LENGUAJE DE CONSULTA ESTRUCTURADO (SQL) Qué es una base de datos? Una base de datos (cuya abreviatura es BD) es una entidad en la cual se pueden almacenar datos de manera estructurada, con la menor redundancia posible. Diferentes programas y

Más detalles

Tema 4. DML (Parte I)

Tema 4. DML (Parte I) Tema 4 DML (Parte I) IES Francisco Romero Vargas Departamento de Informática Tema 4. DML (I). Página 1 de 9 1. Introducción Un Lenguaje de Manipulación de Datos (Data Manipulation Language, DML) es un

Más detalles

Operadores. Además se pueden emplear en sentencias SET.

Operadores. Además se pueden emplear en sentencias SET. Operadores MySQL dispone de multitud de operadores diferentes para cada uno de los tipos de columna. Esos operadores se utilizan para construir expresiones que se usan en cláusulas ORDER BY y HAVING de

Más detalles

SQL SERVER Curso Teórico-Práctico

SQL SERVER Curso Teórico-Práctico SQL SERVER 2008-2012 Curso Teórico-Práctico IMPLEMENTACION DE LA BASE DE DATOS Nomenclatura Todas las tablas tendrán: - Un identificador de tipo entero auto numérico. Ésta será la clave primaria. La denominamos

Más detalles

Anexo 3 COMPONENTES DE SQL SERVER. Los DDL (Data Definition Languaje) que permiten crear y definir nuevas

Anexo 3 COMPONENTES DE SQL SERVER. Los DDL (Data Definition Languaje) que permiten crear y definir nuevas Anexo 3 COMPONENTES DE SQL SERVER COMANDOS Existen tres tipos de comandos SQL [5]: Los DDL (Data Definition Languaje) que permiten crear y definir nuevas bases de datos, campos e índices. En la tabla se

Más detalles

Capítulo 4. Realización de consultas

Capítulo 4. Realización de consultas Capítulo 4 Realización de consultas ÍNDICE CAPÍTULO 4 Introducción sentencia SELECT Base de datos de ejemplo Consultas básicas Cláusula ORDER BY Cláusula DISTINCT Cláusula LIMIT Expresiones Funciones propias

Más detalles

Tema 7. Elaboración de consultas básicas de selección. Lenguajes de bases de datos. SQL básico 15/12/2011

Tema 7. Elaboración de consultas básicas de selección. Lenguajes de bases de datos. SQL básico 15/12/2011 Lenguajes de bases de datos Tema 7 Elaboración de consultas básicas de selección En esta unidad se abordan cuestiones que, aunque están definidas por el estándar ANSI/ISO SQL, no están asumidas al 100%

Más detalles

Un proyecto de IBM llamado Sistem/R construye un prototipo simple llamado SQUARE que después se transformó en SQL.

Un proyecto de IBM llamado Sistem/R construye un prototipo simple llamado SQUARE que después se transformó en SQL. CONTENIDO: 1. Lenguaje SQL 1. Componentes 2. Comandos 3. Clausulas 4. Operadores lógicos 5. Operadores de comparación 6. Funciones de agregado 2. MYSQL 1. Como entrar a MySQL 2. Comandos generales 3. Sintaxis

Más detalles

ÍNDICE. Introducción... Capítulo 1. Características, instalación, inicio y entorno de trabajo... 1

ÍNDICE. Introducción... Capítulo 1. Características, instalación, inicio y entorno de trabajo... 1 ÍNDICE Introducción... XI Capítulo 1. Características, instalación, inicio y entorno de trabajo... 1 Características y novedades de Access 2010... 1 Comienzo rápido del trabajo y seguimiento de la información...

Más detalles

MATERIAL INTRODUCTORIO ORACLE 11G

MATERIAL INTRODUCTORIO ORACLE 11G MATERIAL INTRODUCTORIO ORACLE 11G Esp. JONATHAN GUERRERO ASTAIZA Capacidades de una sentencia SELECT La sentencia SELECT recibe información a partir de una base de datos. Con la sentencia SELECT usted

Más detalles

Agrupamiento de registros. Elaboración de claúsulas avanzadas de selección. 31/12/2011. Unidad 9

Agrupamiento de registros. Elaboración de claúsulas avanzadas de selección. 31/12/2011. Unidad 9 Agrupamiento de registros Unidad 9 Elaboración de claúsulas avanzadas de selección. Un agrupamiento es el tratamiento único de varios registros que poseen un mismo valor de campo. Al realizar un agrupamiento,

Más detalles

Uso de sentencias avanzadas

Uso de sentencias avanzadas Base de datos I Uso de sentencias avanzadas Objetivos: Elaborar sentencias de manejo de datos. Introducción: Después de trabajar con las sentencias de agregar, modificar, editar y visualizar datos, debemos

Más detalles

Curso de SQL. Pág 1 de 11 1.INTRODUCCION 1.1 CICLO DE DESARROLLO

Curso de SQL. Pág 1 de 11 1.INTRODUCCION 1.1 CICLO DE DESARROLLO 1.INTRODUCCION 1.1 CICLO DE DESARROLLO Cuando abordamos la creación de una base de datos, solemos ponernos a crear tablas sin más, a medida que vamos necesitándolas. Esto puede ser válido para pequeños

Más detalles

GUÍA DE TRABAJO N 5 GRADO 11 Programación y Diseño de Articulación SENA Software Ing. Néstor Raúl Suarez Perpiñan Página 1 de 6

GUÍA DE TRABAJO N 5 GRADO 11 Programación y Diseño de Articulación SENA Software Ing. Néstor Raúl Suarez Perpiñan Página 1 de 6 Página 1 de 6 GUIA N 5 LINEA DE COMANDOS MYSQL I. CREAR, SELECCIONAR, VISUALIZAR 1. CREAR BASE DE DATOS CREATE DATABASE Nombre_Base_Datos; 2. VER LISTADO DE BASES DE DATOS SHOW DATABASES; 3. USAR UNA BASE

Más detalles

INTRODUCCIÓN A PL/SQL

INTRODUCCIÓN A PL/SQL PRÁCTICA: 8. INTRODUCCIÓN A PLSQL OBJETIVOS: Conocer los fundamentos básicos de PLSQL y aprender los componentes principales de un bloque PLSQL. MATERIAL: ORACLE 9i versión para WINDOWS XP BIBLIOGRAFIA:

Más detalles

GUÍA DE TRABAJO N 7 GRADO 11. Ing. Néstor Raúl Suarez Perpiñan Página 1 de 6 GUIA N 7 COMANDOS MYSQL II. CREAR UNA TABLA

GUÍA DE TRABAJO N 7 GRADO 11. Ing. Néstor Raúl Suarez Perpiñan Página 1 de 6 GUIA N 7 COMANDOS MYSQL II. CREAR UNA TABLA Página 1 de 6 GUIA N 7 COMANDOS MYSQL I. CREAR, SELECCIONAR, VISUALIZAR 1. CREAR BASE DE DATOS CREATE DATABASE Nombre_Base_Datos; 2. VER LISTADO DE BASES DE DATOS SHOW DATABASES; 3. USAR UNA BASE DE DATOS

Más detalles

SQL Básico. José Muñoz Jimeno Febrero 2015

SQL Básico. José Muñoz Jimeno Febrero 2015 SQL Básico José Muñoz Jimeno Febrero 2015 Control de cambios Version Fecha Comentarios 1.0 13/02/2015 Primera versión para el curso Introducción a las bases de datos con MySQL en el COITCV La última versión

Más detalles

Oracle Database 11g: Conceptos Fundamentales de SQL y PL/SQL Nuevo

Oracle Database 11g: Conceptos Fundamentales de SQL y PL/SQL Nuevo Oracle University Contacte con nosotros: 902 302 302 Oracle Database 11g: Conceptos Fundamentales de SQL y PL/SQL Nuevo Duración: 5 Días Lo que aprenderá En este curso, los estudiantes aprenderán los conceptos

Más detalles

INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO IBEROTEC SEMESTRE ACADÉMICO: 2014-II SÍLABO

INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO IBEROTEC SEMESTRE ACADÉMICO: 2014-II SÍLABO INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO IBEROTEC SEMESTRE ACADÉMICO: 201-II SÍLABO 1. DATOS GENERALES UNIDAD DIDÁCTICA : DESARROLLO DE APLICACIONES CON BASE DE DATOS MÓDULO : DESARROLLO DE SOFTWARE

Más detalles

SUBCONSULTAS SQL. Cuando se ejecuta una consulta que contiene una subconsulta, la subconsulta se ejecuta por cada fila de la consulta principal.

SUBCONSULTAS SQL. Cuando se ejecuta una consulta que contiene una subconsulta, la subconsulta se ejecuta por cada fila de la consulta principal. SUBCONSULTAS SQL DEFINICION. Una subconsulta es una sentencia SELECT que aparece dentro de otra sentencia SELECT que llamaremos consulta principal. Se puede encontrar en la lista de selección, en la cláusula

Más detalles

Ejemplo de gestión de datos con SQL

Ejemplo de gestión de datos con SQL Ejemplo de gestión de datos con SQL 1. Crear la tabla FINCA: 2302010 0010 24 3931411 543 COMERÇ 3456912 0023 12 39411312 120 VIVENDES 1230101 00011 45 39328234 213 INDUSTRIA CREATE TABLE `finca` ( `refcad`

Más detalles

Funciones a Nivel de Fila. Copyright Oracle Corporation, All rights reserved.

Funciones a Nivel de Fila. Copyright Oracle Corporation, All rights reserved. 3 Funciones a Nivel de Fila Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al completar esta lección, debería ser capaz de hacer lo siguiente: Explicar los diversos tipos de funciones

Más detalles

: COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería de Redes y Comunicaciones : Administración de Bases de Datos I : T-INF127

: COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería de Redes y Comunicaciones : Administración de Bases de Datos I : T-INF127 I. DATOS INFORMATIVOS Carrera Especialidad Curso Código Ciclo : Tercero Requisitos Duración Horas Semana : 06 horas Versión : v.0110 II. SUMILLA : COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería

Más detalles

Usando los operadores SET (Conjunto)

Usando los operadores SET (Conjunto) Usando los operadores SET (Conjunto) Objetivos del capítulo Describir los operadores SET (Conjunto) Usar un operador SET (Conjunto) para combinar múltiples consultas en una consulta simple Controlar el

Más detalles

ÍNDICE INTRODUCCIÓN...17

ÍNDICE INTRODUCCIÓN...17 ÍNDICE INTRODUCCIÓN...17 CAPÍTULO 1. ORACLE 11g Y EL GRID COMPUTING...19 1.1 CONCEPTO DE GRID COMPUTING...19 1.2 ORACLE GRID COMPUTING...20 1.2.1 Almacenamiento eficiente de la información...21 1.2.2 Utilización

Más detalles

1. DML. Las consultas de resumen

1. DML. Las consultas de resumen 1.1 Introducción 1. DML. Las consultas de resumen Una de las funcionalidades de la sentencia SELECT es el permitir obtener resúmenes de los datos contenidos en las columnas de las tablas. Para poder llevarlo

Más detalles

NORMAS DE DESARROLLO DE APLICACIONES PARA LA

NORMAS DE DESARROLLO DE APLICACIONES PARA LA DIRECCIÓN GENERAL MINISTERIO DE HACIENDA Y ADMINISTRACIONES PUBLICAS DE ORDENACIÓN DEL JUEGO S U B D NORMAS DE DESARROLLO DE APLICACIONES PARA LA DIRECCIÓN GENERAL DE ORDENACIÓN DEL JUEGO: BASES DE DATOS

Más detalles

Tema 4. TEMA 4. El lenguaje de consulta SQL

Tema 4. TEMA 4. El lenguaje de consulta SQL Tema 4 TEMA 4. El lenguaje de consulta SQL Juan M Camarillo. Dpto. de Geografía Física y AGR Juan A. Ortega. Dpto. de Lenguajes y Sistemas Informáticos Jesús Torres. Dpto. de Lenguajes y Sistemas Informáticos

Más detalles

TEMA 4.. CONSULTA DE DATOS I.

TEMA 4.. CONSULTA DE DATOS I. TEMA 4.. CONSULTA DE DATOS I. 4.1 El lenguaje DML (Lenguaje de manipulación de datos) Las sentencias DML(Data Manipulation Language) del lenguaje SQL (Structured Query Language o Lenguaje de peticiones

Más detalles

ORACLE 10g. Descripción A QUIEN VA DIRIGIDO?

ORACLE 10g. Descripción A QUIEN VA DIRIGIDO? ORACLE 10g Descripción A QUIEN VA DIRIGIDO? Está dirigido a estudiantes y profesionista que desee conocer la tecnología Oracle, así como realizar extracción de datos, creación de objetos y administración

Más detalles

SQL, Consultas. Son Importantes las Consultas? Cuál es el Resultado de SELECT? Andrés Moreno S.

SQL, Consultas. Son Importantes las Consultas? Cuál es el Resultado de SELECT? Andrés Moreno S. SQL, Consultas Andrés Moreno S. 1 Son Importantes las Consultas? Una cosa es guardar la información en forma estructurada y ordenada. Pero el utilizar la información y entender su relevancia son la clave

Más detalles

Consulta de datos. FROM, obligatoria, se especifican las tablas donde está la información necesaria. Se puede poner alias a las tablas

Consulta de datos. FROM, obligatoria, se especifican las tablas donde está la información necesaria. Se puede poner alias a las tablas Consulta de datos SELECT [ALL DISTINCT] [colum1,..column *] FROM tabla1,.., tablan [WHERE condicion] [ORDER BY colum1 [DESC ASC], colum1 [DESC ASC], ] ; Consulta de datos FROM, obligatoria, se especifican

Más detalles

Bases de Datos 2: Procedimientos Almacenados, Funciones y Triggers. Tecnólogo en Informática, sede Paysandú Bases de Datos 2

Bases de Datos 2: Procedimientos Almacenados, Funciones y Triggers. Tecnólogo en Informática, sede Paysandú Bases de Datos 2 Bases de Datos 2: Procedimientos Almacenados, Funciones y Triggers Tecnólogo en Informática, sede Paysandú Bases de Datos 2 Funciones Variables Declarar: DECLARE @ Asignar valor:

Más detalles

Modulo I: Introducción Gestores de Bases De Datos

Modulo I: Introducción Gestores de Bases De Datos Modulo I: Introducción Gestores de Bases De Datos El SQL El SQL (Lenguaje de Consulta Estructurado Structure Query Language), es un lenguaje de consulta estructurado establecido claramente como el lenguaje

Más detalles

DISPARADORES EN SQL DISPARADORES EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999

DISPARADORES EN SQL DISPARADORES EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999 DISPARADORES EN SQL:1999 DISPARADORES EN SQL Modelos Avanzados de Bases de Datos Un (trigger) es un procedimiento especial que se ejecuta en respuesta a un evento específico. Ej. Al aumentar el sueldo

Más detalles

Create Database ClaseAutos. Use ClaseAutos

Create Database ClaseAutos. Use ClaseAutos Vamos a Crear el siguiente modelo, en una base de Datos llamada ClaseAutos. Comando para Crear la Base de Datos Create Database ClaseAutos Comando para utilizar la Base de Datos Use ClaseAutos vehiculo

Más detalles

Uso de sentencias para el envió y extracción de datos

Uso de sentencias para el envió y extracción de datos Base de datos I Uso de sentencias para el envió y extracción de datos Objetivos: Identificar la sintaxis de las consultas de datos Elaborar sentencias de manejo de datos. INTRODUCCION: Las sentencias más

Más detalles

Laboratorio de Bases de Datos (EBB)

Laboratorio de Bases de Datos (EBB) Laboratorio de Bases de Datos (EBB) Unidad III Consultas Departamento de Electricidad, Electrónica y Computación Facultad de Ciencias Exactas y Tecnología Universidad Nacional de Tucumán Primer Cuatrimestre

Más detalles

SQL: Lenguaje de Interrogación Estructurado

SQL: Lenguaje de Interrogación Estructurado SQL: Lenguaje de Interrogación Estructurado SQL Es el lenguaje para Bases de Datos Relacionales más usado Es un lenguaje declarativo: QUÉ no CÓMO El núcleo fundamental se basa en el Algebra Relacional,

Más detalles

ÍNDICE. Introducción... XVII. Capítulo 1. Oracle 10g y el Grid Computing... 1

ÍNDICE. Introducción... XVII. Capítulo 1. Oracle 10g y el Grid Computing... 1 ÍNDICE Introducción... XVII Capítulo 1. Oracle 10g y el Grid Computing... 1 Necesidad del Grid Computing... 1 Concepto de Grid Computing... 4 Oracle Grid Computing... 5 Almacenamiento eficiente de información...

Más detalles

Funciones aritméticas.

Funciones aritméticas. FUNCIONES Para utilizar alguna de las funciones que a continuación vamos a describir, Oracle proporciona una tabla de trabajo que se denomina DUAL. La sintaxis de una función es: Funciones aritméticas.

Más detalles

SQL (DML) Carlos A. Olarte (carlosolarte@puj.edu.co) Gestión y Modelación de SQL Datos (DML)

SQL (DML) Carlos A. Olarte (carlosolarte@puj.edu.co) Gestión y Modelación de SQL Datos (DML) SQL (DML) Carlos A. Olarte (carlosolarte@puj.edu.co) Gestión y Modelación de Datos Outline 1 Actualización, Inserción y Modificación 2 Consultas (Queries) 3 Renombramiento 4 Ordenamiento 5 Reuniones 6

Más detalles

Utilizar la cláusula RETURNS es obligatorio al momento de definir una función y sirve para especificar el tipo de dato que será devuelto.

Utilizar la cláusula RETURNS es obligatorio al momento de definir una función y sirve para especificar el tipo de dato que será devuelto. Funciones MySQL La diferencia entre una función y un procedimiento es que la función devuelve valores. Estos valores pueden ser utilizados como argumentos para instrucciones SQL. Utilizar la cláusula RETURNS

Más detalles

Consultas. Consultas Diapositiva 1

Consultas. Consultas Diapositiva 1 Consultas Comparación Filtros vs Consultas Tipos de Consultas Criterios, Parámetros, Campos Calculados, Funciones de agregado Crear, reutilizar y ejecutar consultas Consultas Diapositiva 1 Consultas Cuando

Más detalles

Consultas SQL II. Diego Egüez. Universidad San Francisco de Quito (USFQ)

Consultas SQL II. Diego Egüez. Universidad San Francisco de Quito (USFQ) Consultas SQL II Diego Egüez Universidad San Francisco de Quito (USFQ) Abstract En este trabajo se exploran las consultas o queries en SQL. Se hace enfoque en consultas complejas y subconsultas. Los comandos

Más detalles

Guía práctica SQL. (c) Francisco Charte Ojeda

Guía práctica SQL. (c) Francisco Charte Ojeda Guía práctica SQL Introducción Qué es SQL? Aplicaciones de SQL Intérpretes de SQL Tipos de RDBMS (c) Francisco Charte Ojeda Cómo usar este libro Convenciones tipográficas 1. El modelo relacional 1.1. Introducción

Más detalles

SQL. Carlos A. Olarte BDI

SQL. Carlos A. Olarte BDI Carlos A. Olarte (carlosolarte@puj.edu.co) BDI Outline 1 Introducción 2 Select... from... where 3 Renombramiento 4 Ordenamiento 5 Reuniones 6 Operaciones sobre conjuntos 7 Funciones de Agregación 8 Subconsultas

Más detalles

Sql Basico. Seminar Introduction

Sql Basico. Seminar Introduction Sql Basico Seminar Introduction SQL Basico Sobre el modelo anterior de datos haremos un repaso de las consultas sql mas comunes. Devolver todos los datos de una tabla sin filtrar. Select campo_1, campo_2,

Más detalles

A. Introducción. B. Los DATABASES TRIGGERS. PL/SQL en objetos de la base de datos. Oracle 11g - SQL, PL/SQL, SQL*Plus 271

A. Introducción. B. Los DATABASES TRIGGERS. PL/SQL en objetos de la base de datos. Oracle 11g - SQL, PL/SQL, SQL*Plus 271 PL/SQL en objetos de la base de datos A. Introducción Además de los bloques PL/SQL anónimos utilizados por SQL*PLus o por las herramientas de desarrollo (Oracle*FORMS, Oracle*Reports), se puede emplear

Más detalles

Concepto de vista. (con ciertas limitaciones). nivel físico) Una vista es una tabla virtual (no tiene una correspondencia a

Concepto de vista. (con ciertas limitaciones). nivel físico) Una vista es una tabla virtual (no tiene una correspondencia a 2.6.1.- Concepto de vista. Una vista es una tabla derivada de otras tablas (básicas o virtuales). Una vista se caracteriza porque: Se considera que forma parte del esquema externo. Una vista es una tabla

Más detalles

CC BASES DE DATOS PRIMAVERA Clase 7: SQL (II) Aidan Hogan

CC BASES DE DATOS PRIMAVERA Clase 7: SQL (II) Aidan Hogan CC3201-1 BASES DE DATOS PRIMAVERA 2016 Clase 7: SQL (II) Aidan Hogan aidhog@gmail.com El Cálculo Relacional (de tuplas) Fórmulas atómicas: Una fórmula puede ser Una fórmula atómica o Sean (recursivamente)

Más detalles

Oracle 11g SQL. Curso práctico de formación. Antolín Muñoz Chaparro

Oracle 11g SQL. Curso práctico de formación. Antolín Muñoz Chaparro Oracle 11g SQL Curso práctico de formación Antolín Muñoz Chaparro Oracle 11g SQL. Curso práctico de formación Antolín Muñoz Chaparro ISBN: 978-84-938312-4-0 EAN: 9788493831240 Copyright 2011 RC Libros

Más detalles

PL/SQL avanzado: Secuencias, triggers, cursores y subprogramas

PL/SQL avanzado: Secuencias, triggers, cursores y subprogramas avanzado 22/11/2016 avanzado: Secuencias, triggers, cursores y subprogramas Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla Noviembre

Más detalles

SUBPROGRAMAS PL/SQL César Martínez C. Profesor Instructor de Base de Datos Sede Puente Alto DUOC

SUBPROGRAMAS PL/SQL César Martínez C. Profesor Instructor de Base de Datos Sede Puente Alto DUOC SUBPROGRAMAS PL/SQL César Martínez C. Profesor Instructor de Base de Datos Sede Puente Alto DUOC INTRODUCCIÓN Los subprogramas son otro tipo de bloques PL/SQL Se diferencian de los bloques anónimos porque

Más detalles

Los DLL que permiten crear y definir nuevas bases de datos, campos e índices.

Los DLL que permiten crear y definir nuevas bases de datos, campos e índices. Componentes del SQL El lenguaje SQL está compuesto por comandos, cláusulas, operadores y funciones agregadas. Estos elementos se combinan en las instrucciones para crear, actualizar y manipular las bases

Más detalles

Modelamiento y Gestión de Base de Datos

Modelamiento y Gestión de Base de Datos Modelamiento y Gestión de Base de Datos Uso de sentencias para el envió y extracción de datos Objetivos: Identificar la sintaxis de las consultas de datos Elaborar sentencias de manejo de datos. INTRODUCCION:

Más detalles

Sub consultas Objetivos Utilizando una sub consulta para resolver un problema

Sub consultas Objetivos Utilizando una sub consulta para resolver un problema Juanjo Dai Sub consultas Objetivos En este texto se aprenderá más acerca de las características avanzadas de las sentencias SELECT Describirán los tipos de problemas que una sub consulta puede resolver

Más detalles

Máster en Data Analytics SQL

Máster en Data Analytics SQL Máster en Data Analytics SQL SQL Structured Query Language = Lenguaje de consulta estructurada Lenguaje que permite: - Definición - Manipulación Datos - Control Hoy vamos a trabajar con MySQL Toda la

Más detalles

Objetivos: Descripción del curso. Curso: Dirigido a: INTRODUCCIÓN A SQL - ORACLE UNIVERSIDAD NACIONAL DE INGENIERÍA

Objetivos: Descripción del curso. Curso: Dirigido a: INTRODUCCIÓN A SQL - ORACLE UNIVERSIDAD NACIONAL DE INGENIERÍA INTRODUCCIÓN A SQL - ORACLE Duración: 24 hrs. Código: INSQL Curso: Descripción del curso El curso se desarrollará bajo la modalidad de un taller, desarrollando casos prácticos con los conocimientos obtenidos.

Más detalles

Taller de Herramientas de Software : ST 213 Secc: V y W

Taller de Herramientas de Software : ST 213 Secc: V y W Universidad Nacional De Ingeniería Facultad Ingeniería Industrial y de Sistemas Taller de Herramientas de Software : ST 213 Secc: V y W SESION Nro. 9 CONSULTAS MULTITABLAS FUNCIONES RESUMEN Docente: Ing.

Más detalles

SQL Avanzado. José Muñoz Jimeno Febrero 2015

SQL Avanzado. José Muñoz Jimeno Febrero 2015 SQL Avanzado José Muñoz Jimeno Febrero 2015 Control de cambios Versión Fecha Comentarios 1.0 13/02/2015 Primera versión para el curso Introducción a las bases de datos con MySQL en el COITCV La última

Más detalles

Funciones de una sola fila

Funciones de una sola fila Funciones de una sola fila 1 Qué son las funciones? 2 Idea de función 3 Invocar a una función nombrefunción(parámetro1,parámetro2, ) 4 Invocar a una función. Ejemplos SYSDATE TO_DATE( 12/3/2017, dd/mm/yyyy

Más detalles

Unidad 6. Procedimientos Almacenados y Disparadores

Unidad 6. Procedimientos Almacenados y Disparadores Unidad 6 Procedimientos Almacenados y Disparadores Disparadores (Triggers) Características Los disparadores solo ocurren cuando se presentan determinados eventos Los tipos de eventos permitidos suelen

Más detalles

Oracle Database: Introducción a SQL

Oracle Database: Introducción a SQL Oracle University Contact Us: 001-855-844-3881 Oracle Database: Introducción a SQL Duration: 5 Days What you will learn La comprensión de los conceptos básicos de las bases de datos relacionales garantiza

Más detalles

CC BASES DE DATOS OTOÑO 2018

CC BASES DE DATOS OTOÑO 2018 CC3201-1 BASES DE DATOS OTOÑO 2018 Clase 6: SQL (II) Aidan Hogan aidhog@gmail.com Forma básica de una consulta de SQL Los planetas EL TEMA DE HOY MÁS SQL! Capítulo 5.4-5.6 Ramakrishnan / Gehrke El Álgebra

Más detalles

SQL Los fundamentos del lenguaje

SQL Los fundamentos del lenguaje Introducción 1. Un poco de historia 11 2. Las normas SQL 12 3. Descripción rápida del modelo relacional 14 3.1 Principales conceptos del modelo relacional 15 3.2 Principales reglas 16 4. Los operadores

Más detalles

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros La sentencia INSERT permite agregar nuevas filas de datos a las tablas existentes. Está sentencia

Más detalles

PRESENTACION SQL SENTENCIAS SQL 5TO SEMESTRE DE INGENIERIA PROFESOR INGENIERO EDGAR SANDOVAL

PRESENTACION SQL SENTENCIAS SQL 5TO SEMESTRE DE INGENIERIA PROFESOR INGENIERO EDGAR SANDOVAL PRESENTACION SQL SENTENCIAS SQL 5TO SEMESTRE DE INGENIERIA PROFESOR INGENIERO EDGAR SANDOVAL CLAUSULA SELECT La recuperación de los datos en el lenguaje SQL se realiza mediante la sentencia SELECT, seleccionar.

Más detalles

CUBE, ROLLUP, GROUPING del SQL

CUBE, ROLLUP, GROUPING del SQL CUBE, ROLLUP, GROUPING del SQL Qué preguntas solucionamos con CUBE y ROLLUP? Vamos a trabajar con la siguiente tabla por no complicar los ejemplos ni el código SQL. Además una tabla como esta aunque no

Más detalles

CONOCIMIENTOS DE CONCEPTOS BASES DE DATOS

CONOCIMIENTOS DE CONCEPTOS BASES DE DATOS CONOCIMIENTOS DE CONCEPTOS BASES DE DATOS Los temas que se presentan a continuación son una referencia para el trabajo en base de datos tomando con referencia en la ultima parte, el SGBD MySQL. Sin embargo,

Más detalles

Práctica 7. Ejercicios:

Práctica 7. Ejercicios: Práctica 7 Objetivos de aprendizaje: Unión, intersección y diferencia de sentencias de selección. Presentación ordenada de los resultados de una consulta. Aplicaciones y utilización de la operación de

Más detalles

CC BASES DE DATOS OTOÑO Clase 5: SQL (II) Aidan Hogan

CC BASES DE DATOS OTOÑO Clase 5: SQL (II) Aidan Hogan CC3201-1 BASES DE DATOS OTOÑO 2017 Clase 5: SQL (II) Aidan Hogan aidhog@gmail.com El Cálculo Relacional (de tuplas) Fórmulas atómicas: Una fórmula puede ser Una fórmula atómica o Sean (recursivamente)

Más detalles

Consultas SQL INNER JOIN

Consultas SQL INNER JOIN Consultas SQL INNER JOIN Inner join sólo produce los registros que coinciden en las dos tablas A y B. 2. INNER JOIN TablaB Full outer join produce el conjunto de todos los registros en las tablas A y B,

Más detalles

SELECT listadecampos FROM nombredetablas WHERE condicionesdebúsqueda;

SELECT listadecampos FROM nombredetablas WHERE condicionesdebúsqueda; SQL El Lenguaje de Consulta Estructurado (SQL) se usa para consultar, actualizar y administrar bases de datos relacionales, tales como las de Microsoft Access. Al crear una consulta en la ventana Consulta,

Más detalles

Modelamiento y Diseño de Base de Datos

Modelamiento y Diseño de Base de Datos Modelamiento y Diseño de Base de Datos Sub consultas y vistas Objetivos: Elaborar sub consultas, a partir de una consulta. Generar diferentes vistas a partir de las tablas de una base de datos. Introducción

Más detalles

ADMINISTRACION DE ORACLE 9i Guía de estudio (OCA) TEMA 1

ADMINISTRACION DE ORACLE 9i Guía de estudio (OCA) TEMA 1 ADMINISTRACION DE ORACLE 9i Guía de estudio (OCA) TEMA 1 TEMA 1. CONSULTAS BÁSICAS Fundamentos de SQL Tipos de datos, operadores y literales Sentencia SELECT Limitación de filas y operadores Ordenación

Más detalles

Maestría en Bioinformática. Bases de Datos y Sistemas de Información SQL: SELECT. Ing. Alfonso Vicente, PMP

Maestría en Bioinformática. Bases de Datos y Sistemas de Información SQL: SELECT. Ing. Alfonso Vicente, PMP Maestría en Bioinformática Bases de Datos y Sistemas de Información SQL: SELECT Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.uy Agenda SELECT en una tabla Joins Proyección y selección DISTINCT Funciones

Más detalles

1. Lenguaje de Definición de Datos. 2. Lenguaje de Manipulación de. Datos. M. C. Gustavo Alfonso Gutiérrez Carreón

1. Lenguaje de Definición de Datos. 2. Lenguaje de Manipulación de. Datos. M. C. Gustavo Alfonso Gutiérrez Carreón 1. Lenguaje de Definición de Datos 2. Lenguaje de Manipulación de Datos M. C. Gustavo Alfonso Gutiérrez Carreón Los 'sistemas de gestión de bases de datos (en inglés database management system, abreviado

Más detalles

Bienvenidos a la segunda parte del taller de seguridad web, sería recomendable que leer el primero, al que pueden acceder desde aquí.

Bienvenidos a la segunda parte del taller de seguridad web, sería recomendable que leer el primero, al que pueden acceder desde aquí. Introducción: Bienvenidos a la segunda parte del taller de seguridad web, sería recomendable que leer el primero, al que pueden acceder desde aquí. En este segundo taller, trataremos la vulnerabilidad

Más detalles

Uso de Disparadores. Miguel Angel Garduño Cordova Isaac Méndez Hernández

Uso de Disparadores. Miguel Angel Garduño Cordova Isaac Méndez Hernández Reporte Uso de Disparadores Catedrático: Alumnos: Ing. María Elena Reyes Castellanos Miguel Angel Garduño Cordova Isaac Méndez Hernández Índice General Índice de tablas 2 Introducción 4 Objetivo 4 Desarrollo

Más detalles

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACIÓN

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACIÓN CICLO 3-2016 UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACIÓN GUÍA DE LABORATORIO Nº 8 Nombre de la práctica: Consultas a múltiples tablas. Uso de JOIN y SUBCONSULTAS. Lugar

Más detalles

Triggers 24/12/2016. Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos. Triggers en Oracle

Triggers 24/12/2016. Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos. Triggers en Oracle Triggers en Oracle Grupo de Ingeniería del Software y Bases de Datos Universidad de Sevilla Diciembre 2016 Introducción Objetivos de la práctica Conocer qué son los y para qué se utilizan Aprender a construir

Más detalles