Blogia

MeSeminary

Escritura de Sentencias SQL SELECT Básicas

Escritura de Sentencias SQL SELECT Básicas

 

 

 

 

CAPITULO I

En este capitulo se tratara todo lo relacionado a las sentencias SQL, sus funciones y ejemplos, los temas a tratar son:

 

Sentencias BasicasSELECT *|{[DISTINCT] column|expression [alias],...}
FROM table
Seleccion columnas EspecificasSELECT department_id, location_id
FROM departments;
Operadores AritmeticosSELECT last_name, salary, salary + 300
FROM employees;
Definición de Valor NuloSELECT last_name, job_id, salary, commission_pct
FROM employees;
Uso de Alias en ColumnaSELECT last_name AS name, commission_pct comm
FROM employees;
Operador de ConcatenaciónSELECT last_name||job_id AS "Employees"
FROM employees;
Eliminación de Filas DuplicadasSELECT DISTINCT department_id
FROM employees;

 

 

 

 

 

 

Sentencias de ejemplo

**********************************************

 

          EJERCICIOS PRACTICOS



 

Apellidos de los empleados que ganan mas de 12000.

select last_name, salary
from employees
where salary > 12000;

Muestra apellidos y departamentos de los empleados que sean con codigo igual a 176.

select last_name, department_id
from employees
where employee_id = 176;


select last_name, salary
from employees
 
where salary <= 5000 or salary >= 12000;
where salary not between 5000 and 12000;

select last_name, job_id, hire_date
from employees
where hire_date between ’20/02/98’ and ’01/03/98’
order by hire_date;

Fecha actual

select sysdate from dual;

select last_name as nombre , department_id as plata
from employees
where department_id in (20,50)
order by first_name;


select last_name as nombre , salary as plata
from employees
where (salary <= 5000 or salary >= 12000)  and (department_id in (20,50));

select last_name, hire_date
from employees
where hire_date LIKE ’%94’;

select last_name, job_id
from employees
where manager_id is null;


select last_name, salary , commission_pct
from employees
where commission_pct is not null
order by salary desc , commission_pct desc;


select first_name, last_name, salary , commission_pct
from employees
where last_name like ’__a%’;


select last_name, salary , commission_pct
from employees
where last_name like ’%a%’ and last_name like ’__e%’;


select last_name, job_id, salary
from employees
where job_id IN (’ST_CLERK’,’SA_REP’) and salary not in (2500, 3500, 7000) ;

select commission_pct, last_name as nombre , salary as plata
from employees
where commission_pct = 0.2;


Funciones de una Sola Fila

Los temas vistos en este capitulo, se podran visualizar en el siguiente link.

 

"Funciones de una Sola Fila"

 

 


 

A continuación se muestran los ejercicios resueltos, con los temas explicados anteriormente.

 

EJERCICIOS PRACTICA 3

 

 

1. Muestra la fecha actual con un alias fecha
RTA:

SELECT sysdate AS "Fecha" FROM employees;

2. Para cada empleado, muestre el  numero de identificacion del empleado, apellido, salario y salario incrementado en 15% expresado en numeros redondeados. Nombre la columna SALARIO NUEVO. Coloque la frase de SQL en un archivo de texto llamado lab3_2.sql

RTA:

NUEVO. Coloque la frase de SQL en un archivo de texto.
SELECT employee_id,
      last_name,
      salary,
      ROUND (salary*0.15) AS "Salario Nuevo"
FROM employees;

3. Ejecute la query  en el archivo lab3_2.sql
4. Modifique su consulta lab3_2.sql para adicionar una columna que sustrae el salario viejo del nuevo. nombre la columna Incremento. Guarde el contenido como lab3_4.sql. Ejecute la consulta revisada.

RTA:

SELECT employee_id,
       last_name,
       salary,
       salary  *0.15 "incremento",
  ROUND (salary + (salary*0.15)) AS "Salario Nuevo"
FROM employees;

5. Escriba una consulta q muestre los apellidos de  empleado con la primera letra en mayuscula y el resto en minuscula Y el largo de los nombres para los empleados q empiezan con J.A o M. De a cada columna un nombre apropiado. Organice los resultados de acuerdo a los apellindos de los empleados.

RTA:
select initcap (last_name) "Nombre", length (last_name) as "Tamaño"
from employees
where last_name like ’J%’ or last_name like ’A%’ or last_name like ’M%’
order by last_name;


6. Para cada empleado, muestre el apellido y calcule el numero de meses entre hoy y la fecha en q fue contratado. Nombre la columna meses_trabajados. organice los resultados por el numero de meses contratado. redondee el numero de meses a numeros enteros. Nota. Sus resulatados variaran.

select last_name, round (months_between (sysdate, hire_date)) as "Meses Trabajados"
from employees
order by months_between (sysdate, hire_date);

Instalación "Oracle Express Edition"

Antes de iniciar la instalación de Oracle Express Edition, debes tener instalado correctamente Java (ultima version) preferiblemente, los pasos son muy sencillos, asi que no necesitaremos asistente adicional para lograrlo.

Les dejo este Video, donde lo explican de la mejor manera...Mucha Suerte!!!!

 

Nota: si requieren de un paso a paso, pueden escribirme a:

jamielectra@gmail.com.

"Implementación SI para controlar los préstamos y consultas del material de una Biblioteca"

MARCO TEORICO

 

Los fundamentos y principios de los seres humanos, se basan en conocimientos adquiridos por sus propias experiencias, la educación es el reflejo de estos conocimientos, la preparación teórica prepara a las personas para el manejo de las situaciones practicas que se presentan a lo largo de su vida diaria, el desarrollo adecuado de una sociedad depende de una educación optima de todos los individuos que en ella se desenvuelven, por tal motivo es importante el poder contar con poderosas fuentes de información que permitan promover a los individuos (Adultos, jóvenes y niños), a profundizar sus conocimientos e intereses dentro de dicha sociedad.

El recinto sagrado que guarda dentro de su seno, los valores textuales de la sabiduría adquirida por los seres humanos durante su evolución, esta casa de enseñanza es la fuente de conocimientos a la que todos los individuos deben tener acceso de forma adecuada esa es la biblioteca, fundamentada en la condición inalterable de su sabiduría, es un órgano vital que alimenta las mentes de todos aquellos interesados en adquirir conocimientos, refrescar sus ideas, aclarar dudas y hasta despejar sus mentas para tomar decisiones seguras que permitan reflejar en sus acciones las bondades sutil mente selladas por una ayuda elemental constituida por este núcleo de certezas bien fundadas, indistinto entre razas, sexo, estatus en la sociedad, lenguaje o inclinación religiosa.

La verdadera importancia que la biblioteca representa, es reflejada por la calidad del material que posee, partiendo de los conocimientos antiguos, sus evoluciones y actualidad, en cada una de las ramas enseñadas en la institución. Cada biblioteca cuenta con una persona encargada de la organización de todo el material bibliográfico que en ella se encuentra, atender al personal interesado en la investigación y agenda de préstamos del material.

Las bibliotecas actualmente, tiene como objetivo básico satisfacer las necesidades de información a sus usuarios profesores y alumnos,  quienes pueden tener acceso a todo el material bibliográfico presente en la biblioteca, teniendo en cuenta que el usuario no podrá extraer fuera del recinto los libros solicitados, todos los estudiantes pertenecientes a la institución deben presentar el carnet vigente para poder acceder al material bibliográfico.

Los préstamos se realizan bajo las políticas establecidas por la  institución, lo cual permite a los usuarios de dicha institución solicitar en calidad de préstamo un máximo de dos libros, los ejemplares únicos o de difícil reposición, sólo se podrán consultar en sala o sacar las copias necesarias.

El sistema de préstamo del material bibliográfico de la biblioteca es efectuado de manera manual y la descripción del proceso es la siguiente:

  • Los textos se encuentran organizados en estantes, divididos por área (sistemas, economía, matemática, etc.), donde solo el bibliotecario puede acceder a ella.
  •  El área de lectura se encuentra aislado de los textos.
  • El usuario consulta a los bibliotecarios el libro de interés y estos determinaran si puede o no acceder a el, ya sea porque se encuentra prestado, ocupado o porque solo podrá consultarlo al momento y no llevarlo.
  • Para acceder a un texto aun siendo únicamente para consulta se debe presentar el carnet vigente de biblioteca, y se diligencia un formato donde indica: nombre usuario, grado o semestre, titulo del libro, autor, fecha, editorial y código del libro.
  • Todos los libros tienen en su parte externa un membrete, donde aparece: titulo del libro, autor, editorial, código del libro, en la parte de la carátula trasera interna, tiene una ficha, la cual se diligencia al momento de prestar el libro, donde se coloca el nombre del usuario y fecha en la que se realizara la entrega; al momento de sacar el libro el carnet queda en manos de ellos junto con la solicitud del préstamo, de manera que hasta que el texto se retorne el carnet será devuelto.
  • Cuando el usuario no retorna el libro en el tiempo estipulado, se le generara una multa por los días de la demora, el valor de la multa será indicado por los administrativos de la institución.

De manera que el control llevado con los textos en la institución no es el apropiado, pues el proceso de préstamo se observa en muchos casos lento, puede ocurrir perdida y inseguridad en el manejo de los datos, ineficiencia de la información y exceso de trabajo por parte de los bibliotecarios, en caso de no tomar en cuenta esta problemática la situación podría tornarse critica lo cual traer consecuencias graves como lo seria, perdida de textos por falta de control, incumplimiento de las multas.

La organización de tanta información, requiere estar almacenada de manera segura y de fácil acceso, tal que  tanto los bibliotecarios como los usuarios  puedan determinar si el libro requerido se encuentra o no disponible, tan solo con el ingreso a la Web.

 

FORMULACION

 

Se implementara un sistema de información que permita controlar los préstamos y las consultas del material existente de la biblioteca.

El sistema asignara a cada libro un código que lo hace único mostrando la ubicación de donde se encuentra y si esta o no disponible, el listado de los textos existentes se mostraran organizados alfabéticamente por titulo,

Cuando el usuario localice el texto que necesita y desee reservarlo este deberá marcar la opción “reservar“ para que el sistema identifique que alguien ya lo va a tomar y no se preste a otra persona, cuando el usuario llegue a recogerlo debe diligenciar los datos requeridos en la ficha, tales como nombre del usuario, numero de cedula, dependencia (grado o semestre),código, titulo del libro, autor, código del libro, fecha actual en la que se realizara el préstamo y la firma de la persona que hace el préstamo, es decir, el encargado de la biblioteca, después de realizado este proceso el bibliotecario hace la entrega del texto, dejando consignada la ficha diligenciada por el usuario y la ficha q contiene el libro internamente.

Para controlar a los usuarios y garantizar el retorno seguro, los usuarios de no cumplir con la entrega oportuna del material solicitado, estará sujeto a multas según el número de días de retraso, en cuanto mayor sea el retraso, las multas son monetarias, hasta la suspensión del servicio de biblioteca por una o dos semanas.

 

OBJETIVOS DE LA INVESTIGACION

 

Objetivo General

 

Implementar un sistema de información que permita controlar los préstamos y las consultas del material de la biblioteca.

 

Objetivos Específicos

 

  1. Investigar que procesos se realizan en diferentes instituciones en cuanto a la prestación del material.
  2. Analizar la información recolectada y escoger la que mas se acople al proyecto.
  3. Realizar los respectivos Diagramas  de conceptualización, de clases, entidad Relación y casos de uso, apartar de los estándares de la metodología RUP.
  4. Implementar un sistema de información orientado a la Web, con la herramienta Visual Studio Net 2008 y motor de base de datos Oracle Express Edition.
  5. Optimizar los procesos a los encargados de la biblioteca.
  6. Minimizar tiempos al momento de acceder a la información.
  7. Instruir al personal encargado del manejo de la herramienta.
  8. Aumentar los intereses de los usuarios en cuanto a lo referente a la investigación y lectura.

 

 

JUSTIFICACION

 

 La problemática que se evidencia actualmente en cuanto a la forma como se realiza los prestamos del material en las bibliotecas de forma manual, se torna de manera lenta, insegura, desordenada y con muchos inconvenientes al momento de consultarla, puesto que no genera motivación a los interesados prefiriendo dirigirse a publicaciones de otra clase, la implementación de un sistema que controle dichos prestamos y consultas al material existente, permitiría mejorar en gran forma las actividades vinculadas con el proceso que representa hacer prestamos de libros.

La implementación de dicho sistema representa una evolución notable en el servicio, ya que se cambiara el sistema manual por un sistema integral encargado del almacenamiento y búsqueda de toda la información vinculada en el proceso de prestamos, disminuyendo totalmente la carga que representa para usuarios y personal todo el proceso que se lleva a cabo desde que se busca en el libro hasta que se hace entrega.

 

DELIMITACIÓN

 

Este sistema de información web que permita controlar los préstamos y las consultas del material existente de la biblioteca se realizara bajo los siguientes parámetros:

Los usuarios deben registrarse para acceder al préstamo de los materiales de la biblioteca

El historial o fichas del material de la biblioteca deberán contener como minino un código, título, autor, edición, fecha actual en la que se realizara el préstamo

El sistema permitirá la reservación de artículos atreves de la web a los usuarios

El sistema permitirá multas monetarias por demora en la entrega del material de la biblioteca o mal uso del mismo o se suspenderá el servicio de biblioteca por una o dos semanas.

 

Practica No 1

Practica No 1

--1. apellidos de los empleados que ganan mas de 12000

 

select last_name, salary 

from employees

where salary > 12000;

 

--2. Muestra apellidos y departamentos de los empleados que sean con codigo igual a 176

 

select last_name, department_id 

from employees

where employee_id = 176;

 

--3

 

select last_name, salary 

from employees

where salary <= 5000 or salary >= 12000;

where salary not between 5000 and 12000;

 

-- 4.

select last_name, job_id, hire_date

from employees

where hire_date between ’20/02/98’ and ’01/03/98’

order by hire_date;

 

--Fecha actual

select sysdate from dual;

-- 5.

select last_name as nombre , department_id as plata

from employees

where department_id in (20,50)

order by first_name;

 

-- 6.

select last_name as nombre , salary as plata

from employees

where (salary <= 5000 or salary >= 12000)  and (department_id in (20,50));

 

-- 7.

 

select last_name, hire_date

from employees

where hire_date LIKE ’%94’;

 

-- 8.

 

select last_name, job_id

from employees

where manager_id is null;

 

--- 9.

 

select last_name, salary , commission_pct

from employees

where commission_pct is not null

order by salary desc , commission_pct desc;

 

--1 0.

 

select first_name, last_name, salary , commission_pct

from employees

where last_name like ’__a%’;

 

-- 11.

 

select last_name, salary , commission_pct

from employees

where last_name like ’%a%’ and last_name like ’__e%’;

 

- 12.

select last_name, job_id, salary

from employees

where job_id IN (’ST_CLERK’,’SA_REP’) and salary not in (2500, 3500, 7000) ;

 

-13

 

select commission_pct, last_name as nombre , salary as plata

from employees

where commission_pct = 0.2;

Clases de Diagramas

Clases de Diagramas

En la monografia final, deben estar consignados los siguientes diagramas. Selecciona el tema de intereres y alli aparecera toda la información necesaria.

Modelos de Bases de Datos

Modelos de Bases de Datos

Jerárquicas

Éstas son bases de datos que, como su nombre indica, almacenan su información en una estructura jerárquica. En este modelo los datos se organizan en una forma similar a un árbol (visto al revés), en donde un nodo padre de información puede tener varios hijos. El nodo que no tiene padres es llamado raíz, y a los nodos que no tienen hijos se los conoce como hojas. Las bases de datos jerárquicas son especialmente útiles en el caso de aplicaciones que manejan un gran volumen de información y datos muy compartidos permitiendo crear estructuras estables y de gran rendimiento. Una de las principales limitaciones de este modelo es su incapacidad de representar eficientemente la redundancia de datos.

Red

Éste es un modelo ligeramente distinto del jerárquico; su diferencia fundamental es la modificación del concepto de nodo: se permite que un mismo nodo tenga varios padres (posibilidad no permitida en el modelo jerárquico). Fue una gran mejora con respecto al modelo jerárquico, ya que ofrecía una solución eficiente al problema de redundancia de datos; pero, aun así, la dificultad que significa administrar la información en una base de datos de red ha significado que sea un modelo utilizado en su mayoría por programadores más que por usuarios finales.

Transaccionales

Son bases de datos cuyo único fin es el envío y recepción de datos a grandes velocidades, estas bases son muy poco comunes y están dirigidas por lo general al entorno de análisis de calidad, datos de producción e industrial, es importante entender que su fin único es recolectar y recuperar los datos a la mayor velocidad posible, por lo tanto la redundancia y duplicación de información no es un problema como con las demás bases de datos, por lo general para poderlas aprovechar al máximo permiten algún tipo de conectividad a bases de datos relacionales.

Relacionales

Éste es el modelo utilizado en la actualidad para modelar problemas reales y administrar datos dinámicamente. Tras ser postulados sus fundamentos en 1970 por Edgar Frank Codd, de los laboratorios IBM en San José (California), no tardó en consolidarse como un nuevo paradigma en los modelos de base de datos. Su idea fundamental es el uso de "relaciones". Estas relaciones podrían considerarse en forma lógica como conjuntos de datos llamados "tuplas". Pese a que ésta es la teoría de las bases de datos relacionales creadas por Codd, la mayoría de las veces se conceptualiza de una manera más fácil de imaginar. Esto es pensando en cada relación como si fuese una tabla que está compuesta por registros (las filas de una tabla), que representarían las tuplas, y campos (las columnas de una tabla).

En este modelo, el lugar y la forma en que se almacenen los datos no tienen relevancia (a diferencia de otros modelos como el jerárquico y el de red). Esto tiene la considerable ventaja de que es más fácil de entender y de utilizar para un usuario esporádico de la base de datos. La información puede ser recuperada o almacenada mediante "consultas" que ofrecen una amplia flexibilidad y poder para administrar la información. El lenguaje más habitual para construir las consultas a bases de datos relacionales es SQL, Structured Query Language o Lenguaje Estructurado de Consultas, un estándar implementado por los principales motores o sistemas de gestión de bases de datos relacionales.

Durante su diseño, una base de datos relacional pasa por un proceso al que se le conoce como normalización de una base de datos. Durante los años 80 la aparición de dBASE produjo una revolución en los lenguajes de programación y sistemas de administración de datos. Aunque nunca debe olvidarse que dBase no utilizaba SQL como lenguaje base para su gestión.

Multidimensionales

Son bases de datos ideadas para desarrollar aplicaciones muy concretas, como creación de Cubos OLAP. Básicamente no se diferencian demasiado de las bases de datos relacionales (una tabla en una base de datos relacional podría serlo también en una base de datos multidimensional), la diferencia está más bien a nivel conceptual; en las bases de datos multidimensionales los campos o atributos de una tabla pueden ser de dos tipos, o bien representan dimensiones de la tabla, o bien representan métricas que se desean estudiar.

Orientadas a Objetos

En bases de datos orientadas a objetos, los usuarios pueden definir operaciones sobre los datos como parte de la definición de la base de datos. Una operación (llamada función) se especifica en dos partes. La interfaz (o signatura) de una operación incluye el nombre de la operación y los tipos de datos de sus argumentos (o parámetros). La implementación (o método) de la operación se especifica separadamente y puede modificarse sin afectar la interfaz. Los programas de aplicación de los usuarios pueden operar sobre los datos invocando a dichas operaciones a través de sus nombres y argumentos, sea cual sea la forma en la que se han implementado. Esto podría denominarse independencia entre programas y operaciones.

Documentales

Permiten la indexación a texto completo, y en líneas generales realizar búsquedas más potentes. Tesaurus es un sistema de índices optimizado para este tipo de bases de datos.

Deductivas

Un sistema de base de datos deductiva, es un sistema de base de datos pero con la diferencia de que permite hacer deducciones a través de inferencias. Se basa principalmente en reglas y hechos que son almacenados en la base de datos. Las bases de datos deductivas son también llamadas bases de datos lógicas, a raíz de que se basa en lógica matemática.

Distribuidas

La base de datos está almacenada en varias computadoras conectadas en red. Surgen debido a la existencia física de organismos descentralizados. Esto les da la capacidad de unir las bases de datos de cada localidad y acceder así a distintas universidades, sucursales de tiendas, etcétera.

BiEnVeNiDa SeMiNaRiO

BiEnVeNiDa SeMiNaRiO

"Desarrollo de Administración de Sistemas de Información"

El énfasis aplicado a este seminario será con: Oracle Express Edition, para trabajar todo lo relacionado a la base de datos, teniendo en cuenta que es uno de los sistemas más completos.

Dentro de la metodología para la monografía final, se manejaran los diagramas de clases, diagrama conceptual, casos de uso, etc.

Cada uno de los módulos será evaluado por el tutor asignado, en cada una de las fechas estipuladas a  cada actividad. (No se permitirá notas por debajo de 3.5).

Para la entrega de la monografía final, se podrá  manejar cualquier herramienta escogida por cada estudiante (Java, Visual Basic .Net…), de tal manera que se facilite el desarrollo del aplicativo.

 

 

El éxito se alcanza convirtiendo cada paso en una meta y cada meta en un paso!!!