Republica Bolivariana de Venezuela

Universidad Virtual Yacambu

Programa de Doctorado en Gerencia

 

 

 

 

 

 

 

 

 

 

 

Seminario Avanzado

"Herramientas Web para la Ciencia y Tecnología"

"APLICACIONES DE LA HERRAMIENTA SQL"

 

 

 

 

 

 

 

 

 

 

 

 

Preparado por Holanda G. de Quijada

CI. 10.572.372

 

 

 

 

 

 

 

 

 

 

 

 

 

SQL

Las aplicaciones en red son cada día más numerosas y versátiles. En muchos casos, el esquema básico de operación es una serie de scripts que rigen el comportamiento de una base de datos.


Debido a la diversidad de lenguajes y de bases de datos existentes, la manera de comunicar entre unos y otras sería realmente complicada a gestionar de no ser por la existencia de estándares que nos permiten el realizar las operaciones básicas de una forma universal.


Es de eso de lo que trata el Structured Query Language (SQL) que no es más que un lenguaje estándar de comunicación con bases de datos. Hablamos por tanto de un lenguaje normalizado que nos permite trabajar con cualquier tipo de lenguaje (ASP o PHP) en combinación con cualquier tipo de base de datos (MS Access, SQL Server, MySQL...).


El hecho de que sea estándar no quiere decir que sea idéntico para cada base de datos. En efecto, determinadas bases de datos implementan funciones específicas que no tienen necesariamente que funcionar en otras.


Aparte de esta universalidad, el SQL posee otras dos características muy apreciadas. Por una parte, presenta una potencia y versatilidad notables que contrasta, por otra, con su accesibilidad de aprendizaje.

 

sabemos una base de datos esta compuesta de tablas donde almacenamos registros catalogados en función de distintos campos (características).

Cada base de datos introduce tipos de valores de campo que no necesariamente están presentes en otras. Sin embargo, existe un conjunto de tipos que están representados en la totalidad de estas bases.

Añadir un nuevo registro

Los registros pueden ser introducidos a partir de sentencias que emplean la instrucción Insert.
La sintaxis utilizada es la siguiente:

Insert Into nombre_tabla (nombre_campo1, nombre_campo2,...) Values (valor_campo1, valor_campo2...)

Como puede verse, los campos no numéricos o booleanos van delimitados por apostrofes: '. También resulta interesante ver que el código postal lo hemos guardado como un campo no numérico. Esto es debido a que en determinados paises (Inglaterra,como no) los codigos postales contienen también letras.

Borrar un registro

Para borrar un registro nos servimos de la instrucción Delete. En este caso debemos especificar cual o cuales son los registros que queremos borrar. Es por ello necesario establecer una selección que se llevara a cabo mediante la cláusula Where.

Delete From nombre_tabla Where condiciones_de_selección

Hay que tener cuidado con esta instrucción ya que si no especificamos una condición con Where, lo que estamos haciendo es borrar toda la tabla:


Actualizar un registro

Update es la instrucción que nos sirve para modificar nuestros registros. Como para el caso de Delete, necesitamos especificar por medio de Where cuáles son los registros en los que queremos hacer efectivas nuestras modificaciones. Además, obviamente, tendremos que especificar cuáles son los nuevos valores de los campos que deseamos actualizar. La sintaxis es de este tipo:


Update nombre_tabla Set nombre_campo1 = valor_campo1, nombre_campo2 =

valor_campo2,... Where condiciones_de_selección



Aquí también hay que ser cuidadoso de no olvidarse de usar Where, de lo contrario, modificaríamos todos los registros de la tabla.

Selección de tablas I

La selección total o parcial de una tabla se lleva a cabo mediante la instrucción Select. En dicha selección hay que especificar:

Si quisiésemos seleccionar todos los campos, es decir, toda la tabla, podríamos utilizar el comodín * del siguiente modo:


Select * From clientes


Resulta también muy útil el filtrar los registros mediante condiciones que vienen expresadas después de la cláusula Where. Si quisiésemos mostrar los clientes de una determinada ciudad usaríamos una expresión como esta:


Select * From clientes Where poblacion Like 'Madrid'



Además, podríamos ordenar los resultados en función de uno o varios de sus campos. Para este ultimo ejemplo los podríamos ordenar por nombre así:


Select * From clientes Where poblacion Like 'Madrid' Order By nombre


Teniendo en cuenta que puede haber más de un cliente con el mismo nombre, podríamos dar un segundo criterio que podría ser el apellido:


Select * From clientes Where poblacion Like 'Madrid' Order By nombre, apellido


 Optimizar prestaciones I

Las bases de datos (BD) cuanto más extensas requieren una mayor atención a la hora de organizar sus contenidos. Cuando se trabaja con tablas de miles o decenas de miles de registros la búsqueda de un determinado dato puede resultar un proceso largo que ralentiza enormemente la creación de nuestra página.


Es por ello importante tener en cuenta una serie de aspectos indispensables para el mejor funcionanmiento de la base.


Gestión y elección de los índices


Los índices son campos elegidos arbitrariamente por el constructor de la BD que permiten la búsqueda a partir de dicho campo a una velocidad notablemente superior. Sin embargo, esta ventaja se ve contrarrestada por el hecho de ocupar mucha más memoria (el doble más o menos) y de requerir para su inserción y actualización un tiempo de proceso superior.


Evidentemente, no podemos indexar todos los campos de una tabla extensa ya que doblamos el tamaño de la BD. Igualmente, tampoco sirve de mucho el indexar todos los campos en una tabla pequeña ya que las selecciones pueden efectuarse rápidamente de todos modos.


Los índices pueden resultar contraproducentes si los introducimos sobre campos triviales a partir de los cuales no se realiza ningún tipo de petición ya que, además del problema de memoria ya mencionado, estamos ralentizando otras tareas de la base de datos como son la edición, inserción y borrado.


Gestión de los nexos entre tablas


El enlace entre tablas es uno de los puntos más peliagudos y que puede llevar a la absoluta ralentización de la base de datos a causa "pequeños" detalles que resultan ser fatales.

Para evitar situaciones de colapso, es necesario indexar cada uno de los campos que sirven de enlace entre esas tablas.

 

 

INFOGRAFIA

 

SQL111. Pagina donde se presenta una miniguia detallada del lenguaje de programación SQL es de fácil comprensión para el usuario que se inicia en programas relacionados con base de datos.

http://www.controltotal.org/empezamos/html/16.htm

 

SQL112 Seminario avanzado y completo cuyo contenido es el siguiente: El lenguaje SQL | Sentencias de selección o consultas | Cláusula SELECT | Funciones de agrupamiento | Cláusula FROM |Cláusula WHERE | Cláusula GROUP BY | Cláusula HAVING | Operador UNION | Cláusula ORDER BY | Enlace de varias Tablas |Expresiones SQL | Nombres de campos | Constantes | Operadores Numéricos | Operadores de caracteres | Operadores de relación |Operadores Lógicos | Prioridad de los operadores |Funciones | Creación de una tabla | Destrucción de una tabla | Sentencia INSERT |Sentencia UPDATE | Sentencia DELETE | Llave primaria | Llave Foranea | Sentencias para crear o destruir índices |http://www.lania.mx/biblioteca/seminarios/basedatos/sql.html

SQL113  Curso Gratis de SQL para Access 2000 con ejercicios de fácil aplicación el contenido que relacionas esta vinculado   Consultas simples, Consultas multitabla, Consultas de resumen, Subconsultas, Actualización de datos, Tablas de referencias cruzadas,  Lenguaje de Definición de Datos.
http://www.aulaclic.es/sql/f_sql.htm

 

SQL114  Articulo donde se introduce al usuario al manejo del lenguaje de programación SQL con ejemplos claros y sencillos creando una base de dato particular  y la relacion de SQL y otras aplicaciones como Access.

http://www.terra.es/tecnologia/articulo/html/tec765.htm

 

SQL115 Esta página es un tutorial creado por  Jim Hoffman   sobre Structured Query Language ("Lenguaje Estructurado de consultas"),(también conocido como SQL) donde se permite a los usuarios el acceso a un sistema de manejo de bases de datos relacional, como son Oracle, Sybase, Informix, Microsoft SQL Server, Access entre otras, permitiendo a los usuarios definir los datos en una base de datos y manipularlos. http://www.publispain.com/supertutoriales/redes/bases_de_datos/cursos/1/sql_castellano.htm

SQL116 Manual de SQL organizado en 11 lecciones. Forma parte del Centro de Tecnología Informática de la Universidad de Navarra. http://www.unav.es/cti/manuales/Intro_SQL/indice.html

SQL117  es un sistema de manejo de bases de datos basado en un mode relacional de datos. Rueda bajo sistema operativo MVS/SP. http://www.lawebdelprogramador.com/cursos/enlace.php?idp=1847&id=10&texto=Bases+de+Datos

SQL118 Este manual, la Guía del Usuario de Transact-SQL , trata sobre
Transact-SQL(R), una versión mejorada del lenguaje de bases de datos relacionales SQL. La Guía del Usuario de Transact-SQL está pensada para los principiantes y aquellos usuarios que ya tienen experiencia con otras implementaciones de SQL.

http://manuals.sybase.com/onlinebooks/group-asarc/svs11001/tsqlsp/@Generic__BookTextView/64;lang=es