Twitter
RSS

Curso Práctico de SQL para principiantes (Parte 1)

2

Vamos a comenzar desde cero con un pequeño curso de SQL. La idea del curso es dejar un poco de lado la teoría para acercarnos al uso del lenguaje, que es lo que realmente nos interesa.

Requerimientos:

 

Mozilla Firefox 3.5

Plugin SQLite Manager

Base de Datos de Ejemplo

El DBMS a utilizar será SQLite. Esta elección se debe a que es un motor relacional muy completo y funcional,  el uso de recursos es mínimo y la velocidad es de las mejores(aparte de otras características que podremos ver en este link)

 

Pasos de la Instalación

 

Ejecutar el Firefox 3.5, si no lo tenemos, podemos bajarlo de aquí

Bajar el Complemento SQLite Manager de esta dirección: https://addons.mozilla.org/es-ES/firefox/addon/5817

Primero presionamos el Botón Añadir a Firefox

Pantalla01

Se abrirá una nueva Ventana Solicitando la Confirmación, en esta pantalla Presionamos el botón Instalar ahora

Pantalla02 

Una vez instalado el complemento, debemos proceder al reinicio de Firefox para que tome los cambios.

Con el Firefox reiniciado, nos dirigimos al menú Herramientas->SQLite Manager

Pantalla03

Bajamos la Base de Datos que vamos a utilizar como ejemplo

http://clonefiles.com/files/xZH0Gyot45IJPY7U6Sje

Descomprimimos el archivo en alguna Carpeta Ej: C:\CursoSQL

El password del archivo .zip es www.softwareutil.com

En el Menú del SQLManager Seleccionamos la Opción Database->Connect Database y buscamos la carpeta en donde descomprimimos la Base de datos (Aclaración, en la ventana de Abrir Archivo deberemos seleccionar la opción Todos los Archivos en Tipo)

Pantalla05

Seleccionamos el Archivo y presionamos el Botón Abrir

 

Una vez hechos estos pasos, tenemos la Base de Datos con el Siguiente Esquema:

Pantalla04

Con esto ya podemos comenzar a ejecutar Consultas contra la Base

Nuestra Primer Consulta

 

Nos Dirigimos a la pestaña Execute SQL

Pantalla06

   1: SELECT * FROM Cliente




y presionamos el Botón Run SQL, con esto le estamos pidiendo a la base de datos que nos traiga todos los registros de la tabla Cliente



Una Consulta SQL está Compuesta por:




SELECT listaDeCampos



FROM Tabla(s)



WHERE Condicion(es)



GROUP BY Campo(s)Agrupados



HAVING Condicion(es)




SELECT: Lista los datos a recuperar por la sentencia



FROM: lista las tablas que contienen los datos a recuperar por la consulta.



WHERE: Permite incluir solo algunas filas del resultado de una consulta mediante una condición de búsqueda.



GROUP BY: Especifica una consulta resumen, agrupando las filas similares para cada grupo (se utiliza cuando hay una función en el select).



HAVING: Deja incluir solo ciertos grupos producidos por group by en la consulta a través de una condición de búsqueda. (Condición de búsqueda de grupos).



· Es aplicable a constante, función columna, columna de agrupación o una expresión que afecta a las anteriores.



· Se puede utilizar sin group by pero en ese caso la condicion se aplica a un grupo formado por todas las filas de la consulta.





ORDER BY: Ordena los resultados de la consulta en relación a una o mas columnas.Se puede usar el nombre o el orden (numero) de la columna.Puede ser ascendente (asc) o descendente (desc).



 



CONDICIONES DE BÚSQUEDA PARA CONSULTAS SIMPLES



 




  • Test de comparación: Compara el valor de una expresión con el valor de otra.



En este SQL calcula y compara los valores por cada fila de datos. Las expresiones pueden ser simples o complejas.



Expresión 1 = , <> , < , <= , > , >= Expresión 2



Ejemplo:





   1: SELECT Nombre 



   2: FROM Cliente 



   3: WHERE idCliente < 10






   1: SELECT descripcion, precioCompra, precioVenta



   2: FROM Articulo



   3: WHERE stockActual > 500






   1: SELECT *



   2: FROM Cliente



   3: WHERE idCliente=22




 




  • Test de rango: Examina si el valor de una expresión cae dentro de un rango especificado de valores.



 Expresión de test (Not) BETWEEN expresión-inf and expresión-sup



Ejemplos:





   1: SELECT *



   2: FROM Articulo



   3: WHERE stockActual BETWEEN 100 and 500








   1: SELECT Nombre, Direccion



   2: FROM Cliente



   3: WHERE fechaAlta BETWEEN '01/01/2009' and '31/01/2009'





Las expresiones de cadena o de fechas deben ir entre comillas simples ‘’





  • Test de pertenencia a un conjunto: Examina si un valor de dato coincide con uno de una lista de valores objetivo.



expresión (Not) IN (constante,constante,.....)



Ejemplos:





   1: SELECT * 



   2: FROM Articulo



   3: WHERE idArticulo IN (1,22,19)




Artículos cuyo idArticulo se encuentra en el conjunto de valores 1,22 y 19





   1: SELECT * 



   2: FROM Articulo



   3: WHERE idArticulo NOT  IN (21,25,19,15)




Artículo cuto idArticulo no se encuentra enel conjunto de valores 21,25,19 y 15




  • Test de correspondencia a un patrón: Comprueba si el valor de datos de una columna se ajusta a un patron especificado. El patrón es una cadena que puede incluir uno o mas caracteres comodines (%).



nombre_de_columna (Not) LIKE patrón



Ejemplos:





   1: SELECT * 



   2: FROM Articulo



   3: WHERE descripcion LIKE 'S%'




Todos los artículo que comienzan con S





   1: SELECT * 



   2: FROM Articulo



   3: WHERE descripcion LIKE '_ILLA'




Todos Los Artículos que comienzan con cualquier letra y terminan en ILLA



Para este tipo de comparaciones, el signo de porcentaje sirve como un comodín que representa una cadena de caracteres de cualquier tamaño, mientras que que el guión bajo _ sirve como reemplazo a un único caracter de la cadena.



 




  • Test de valor nulo : Comprueba si una columna tiene un valor NULL.



nombre_de_columna IS (Not) NULL



Ejemplos:





   1: SELECT * 



   2: FROM Articulo



   3: WHERE stockActual IS NULL




 





   1: SELECT nombre, fechaAlta



   2: FROM Cliente



   3: WHERE fechaAlta IS NOT NULL






En la base de datos de ejemplo ningún campo tiene un valor NULL



En la segunda parte veremos como hacer consultas a más de una tabla.



Espero sus comentarios


Recursos Gratuitos para programación en Plataformas .NET

0

Herramientas

 

Familia Visual Studio 2008 Express

Incluye las versiones Express de Visual Basic, C#, C++, Visual Web Developer y SQL Server.

Más info y descarga

En este link podremos bajar un documento detallando las características de cada una de las versiones de Visual Studio.

 

SharpDevelop

Una excelente opción si queremos “curiosear” con .NET y no queremos descargar cientos de megas. Incluye un IDE muy similar al Visual Studio.

Más info y descarga

 

Proyecto Mono

Proyecto Open Source de Herramientas compatibles con .NET para el desarrollo multiplataforma. Se pueden conseguir también IDEs para el mismo.

Más info y descarga

IDE

 

Páginas Útiles

 

El Guille

Uno de los sitios de referencia por excelencia para VB. Incluye tutoriales desde las versiones más antiguas hasta las más modernas del lenguaje.

link

Calling Dr. Marteens

Sitio de Ian Marteens (creador de la cara oculta de delphi y otros) donde se tratan temas de programación en diversos lenguajes. Incluye la descarga gratuita de un manual de más de 100 páginas para los que quieran comenzar a dar programar en C#.

link

Codeplex

Es la versión Microsoft de SourceForge, es decir un sitio donde se pueden alojar programas de código abierto (creados con tecnologías de microsoft).

link

CodeProject

Artículos, tutoriales, foros y blogs donde se tratan los últimos temas referentes a tecnologías .NET. Una página de referencia obligada para quienes quieran mantenerse actualizados.

link


Herramientas gratuitas para trabajar con Bases de datos

0

Toad for SQL Server 

Completa herramienta para facilitar la gestión y desarrollo de Bases de Datos SQL Server. Incluye algunas facilidades como Intellisense y generación de Scripts

Oracle SQL Developer

Oracle SQL Developer es la herramienta gráfica gratuita que proporciona Oracle para que no sea necesario utilizar herramientas de terceros (como el conocido TOAD, o el PL/SQL Developer) para desarrollar, o simplemente para ejecutar consultas o scripts SQL, tanto DML como DDL, sobre bases de datos Oracle.

SQLite2009Pro Enterprise Manager

Programa para Administrar Bases de datos SQLite muy parecido al Enterprise Manager de Microsoft para SQL Server

phpMyAdmin

phpMyAdmin es una herramienta escrita en PHP con la intención de manejar la administración de MySQL a través de páginas web, utilizando Internet. Actualmente puede crear y eliminar Bases de Datos, crear, eliminar y alterar tablas, borrar, editar y añadir campos, ejecutar cualquier sentencia SQL, administrar claves en campos, administrar privilegios, exportar datos en varios formatos y está disponible en 50 idiomas. Se encuentra disponible bajo la licencia GPL.

IBOConsole

Herramienta para facilitar el manejo de bases de datos Firebird o Interbase


Motores de Bases de Datos Gratis más populares

0

Sql Server 2008 con Advanced Services:

Microsoft SQL Server 2008 Express with Advanced Services es una versión gratuita y fácil de usar de la plataforma de datos SQL Server Express que incluye una herramienta de administración gráfica avanzada, así como eficaces características para la elaboración de informes y la realización de búsquedas avanzadas basadas en texto. Ofrece herramientas de administración de datos eficaces y confiables, así como características completas, protección de datos y un rápido funcionamiento. Es ideal para pequeñas aplicaciones de servidor y almacenes de datos locales.

Más info y descarga

 

Oracle Express Edition:

Oracle Database 10g Express Edition (Oracle Database XE) es una base de datos de entrada de footprint pequeño, creada sobre la base de código Oracle Database 10g Release 2 que puede desarrollarse, implementarse y distribuirse sin cargo; es fácil de descargar y fácil de administrar.

Más info y descarga

 

MySql:

MySQL es un sistema de gestión de base de datos relacional, multihilo y multiusuario con más de seis millones de instalaciones. MySQL AB —desde enero de 2008 una subsidiaria de Sun Microsystems y ésta a su vez de Oracle Corporation desde abril de 2009— desarrolla MySQL como software libre en un esquema de licenciamiento dual.

Más info y descarga

 

PostgreSQL:

PostgreSQL es un sistema de gestión de base de datos relacional orientada a objetos de software libre, publicado bajo la licencia BSD.

Más info y descarga

 

SQLite:

SQLite es un sistema de gestión de bases de datos relacional compatible con ACID, y que está contenida en una relativamente pequeña (~225 kB[1] ) biblioteca en C. SQLite es un proyecto de dominio público creado por D. Richard Hipp.

A diferencia de los sistemas de gestión de base de datos cliente-servidor, el motor de SQLite no es un proceso independiente con el que el programa principal se comunica. En lugar de eso, la biblioteca SQLite se enlaza con el programa pasando a ser parte integral del mismo. El programa utiliza la funcionalidad de SQLite a través de llamadas simples a subrutinas y funciones. Esto reduce la latencia en el acceso a la base de datos, debido a que las llamadas a funciones son más eficientes que la comunicación entre procesos. El conjunto de la base de datos (definiciones, tablas, índices, y los propios datos), son guardados como un sólo fichero estándar en la máquina host. Este diseño simple se logra bloqueando todo el fichero de base de datos al principio de cada transacción.

Más info y descarga

 

Firebird:

Firebird es una base de datos relacional que ofrece muchas características de SQL ANSI estándar y que funciona en Linux, Windows, MacOSX y una variedad de plataformas UNIX. Firebird ofrece una concurrencia excelente, alto rendimiento y un poderoso lenguaje de procedimientos almacenados y disparadores. Ha estado usándose en producción bajo varios nombres desde 1981.

Más info y descarga


Web Browsers

0
Mozilla Firefox
Internet Explorer
Apple Safari
Google Chrome
Opera