Investigación de SQL
Investigación de SQL
CURSO
4TO. SEMESTRE PARALELO “A"
ESTUDIANTE RESPONSABLE
DOCENTE RESPONSABLE
PERIODO LECTIVO
Marco Teorico
Conceptos básicos
Definición de SQL
Según [1] es un lenguaje declarativo de acceso a bases de datos relacionales que permite
especificar diversos tipos de operaciones en ellas. Una de sus características es el manejo del
álgebra y el cálculo relacional que permiten efectuar consultas con el fin de recuperar de forma
sencilla información de interés de bases de datos, así como hacer cambios en ella.
En conclusión, SQL es un lenguaje estándar de definición, manipulación y control de base de
datos (BD) relacionales, es muy parecido al lenguaje natural, concretamente se parece al inglés y
es muy expresivo, entonces SQL es un lenguaje con el que se puede acceder a todos los sistemas
de gestión de bases de datos (SGBD) y es usado como interfaz para comunicarse con bases de
datos para realizar operaciones de acceso y manipulación de la información almacenada que
explota la flexibilidad y potencia de los sistemas relacionales y permite así gran variedad de
operaciones.
SQL es un estándar mantenido por ANSI, por lo que las bases del lenguaje son las mismas en la
mayoría de los motores de bases de datos relacionales. Una persona que conozca las bases del
lenguaje, con el acceso a una referencia básica del motor particular con el que esté trabajando será
capaz de escribir consultas para cualquier base de datos. La estructura de las consultas es
prácticamente igual, aunque existen pequeñas diferencias a la hora de organizar los bloques de
las sentencias y especificar operaciones o funciones de administración.
Características de SQL
➢ Se trata de un lenguaje de definición de datos que contienen comando que permite
establecer, modificar o borrar esquemas de relación.
➢ Es un lenguaje interactivo que permite realizar consultas gracias al álgebra y el cálculo
relacional.
➢ Permite establecer restricciones de integridad a la información que se almacena en una
base de datos.
➢ Facilita la creación de bases de datos mediante tablas, las cuáles a su vez están formadas
por registros (filas) y campos (columnas).
➢ El lenguaje SQL es compatible con otros lenguajes de programación como Java, C++ o
PHP.
➢ Se pueden incluir, a través de comandos, los derechos de acceso a relaciones y vistas de
las bases de datos. [2]
¿Qué es una Base de datos?
Una base de datos está constituida por un conjunto de información relevante para una empresa o
entidad y los procedimientos para almacenar, controlar, gestionar y administrar esa información.
Además, la información contenida en una base de datos cumple una serie de requisitos o
características:
➢ Los datos están interrelacionados, sin redundancias innecesarias.
➢ Los datos son independientes de los programas que los usan.
➢ Se emplean métodos determinados para incluir datos nuevos y para borrar, modificar o
recuperar los datos almacenados.
¿Qué es un sistema de gestión de bases de datos?
Un Sistema de Gestión de Bases de Datos (DBMS) es una aplicación comercial que permite
construir y gestionar bases de datos, proporcionando al usuario de la Base de Datos las
herramientas necesarias para realizar, al menos, las siguientes tareas:
➢ Definir las estructuras de los datos.
➢ Manipular los datos. Es decir, insertar nuevos datos, así como modificar, borrar y
consultar los datos existentes.
➢ Mantener la integridad de la información.
➢ Proporcionar control de la privacidad y seguridad de los datos en la Base de Datos,
permitiendo sólo el acceso a los mismos a los usuarios autorizados.
Nota. - La herramienta más difundida para realizar todas estas tareas es el lenguaje
SQL.
Principales sistemas de gestión de bases de datos relacionales
Estos son algunos de los principales y más utilizados sistemas de gestión de bases de datos
relacionales:
• Oracle
Ofrece uno de los sistemas de gestión de bases de datos relacionales más potente del
mercado. Además, fue la primera empresa en comercializar el primer SGBDR, aunque
quien lo desarrolló fué IBM.
• SQL Server
Microsoft SQL Server fue la primera alternativa a Oracle cuando lanzó su producto de
sistema general de bases de datos relacionales allá por el año 2000. Actualmente es uno
de los SGBDR más utilizados en el área del business Intelligence.
• MySQL
Una diferencia del MySQL con SQL Server y Oracle es que MySQL es de código abierto
y lo más importante es que mientras Oracle y SQL Server están diseñadas con el fin de
satisfacer las necesidades de grandes empresas, MySQL está enfocada a satisfacer las
necesidades a nivel usuario en las páginas web.
• PostgreSQL
Es de código abierto y un sistema de gestión de bases de datos orientados a objetos.
Además, su principal característica es que está liderado por la comunidad de
desarrolladores que trabajan de forma desinteresada y con la finalidad de aportar una
herramienta a la comunidad.
Operaciones CRUD:
El acrónimo CRUD hace referencia a las principales operaciones requeridas para crear y gestionar
bases de datos. Estas funciones en una base de datos SQL son las siguientes:
Tipos de SQL
En los DataBase Management System (DBMS) utilizan dos tipos de SQL que son:
➢ SQL Interactivo: es utilizado para realizar acciones directamente en la base de datos en
modo en línea. Entre los mas populares que acompañan al SQL interactivo son Oracle
SQL-Server, MS-SQL Server, Inter Base y algunos otros.
➢ SQL Incorporado: consta de comandos SQL incluidos directamente en programas
escritos en otro lenguaje de programación. Por ejemplo, sistemas como Visual Studio,
C++ builder, Delphi y en varios DBMS como Microsoft -Access.
En SQL tenemos varios comandos que relaciona ciertas acciones realizadas, por la cual se los
divide en subconjuntos específicos, quedando:
➢ DQL - lenguaje de consulta, los comandos están diseñados para extraer datos de tablas.
➢ DML - lenguaje de manipulación de datos, su objetivo es la edición de la información
presente en la base de datos.
➢ TPL - es un lenguaje de procesamiento de transacciones. Los comandos le permiten
combinar equipos de lenguaje HTML en grupos de transacciones. Si uno de los comandos
no se puede ejecutar, se cancelan todos los comandos anteriores de la misma transacción:
se produce una "reversión de la transacción".
➢ DDL - es un lenguaje de definición de datos. También incluye instrucciones de integridad
de datos. Por ejemplo, comandos para crear tablas y organizar relaciones entre ellas.
➢ CCL - lenguaje de control del cursor. Le permite seleccionar una fila del conjunto
resultante de consultas para su procesamiento.
➢ DCL - es un lenguaje de gestión de datos. Contiene instrucciones mediante las cuales se
realiza la asignación de derechos de acceso a la base de datos, múltiples tablas o vistas.
Componentes SQL
Lenguaje de definición de datos (DDL)
Se emplea para crear y cambiar la estructura de la base de datos y sus componentes: tablas,
índices, vistas (tablas virtuales), así como disparadores y procedimiento almacenamiento.
Estos son solo algunos de los comandos básicos del lenguaje:
➢ Creación de base de datos - CREATE DATABASE
➢ Creación de tabla - CREATE TABLE
➢ Cambio de tabla (estructura) - ALTER TABLE
➢ Eliminación de tabla - DROP TABLE
Lenguaje de control de datos (DCL)
Según [2] se utiliza para controlar los derechos de acceso a datos y ejecutar procedimientos en un
entorno multiusuario.
En conclusión, que se encargan de definir los permisos sobre los datos.
Algunos ejemplos de comandos incluidos en el DCL son los siguientes:
➢ GRANT: Permite dar permisos a uno o varios usuarios o roles para realizar tareas
determinadas.
➢ REVOKE: Permite eliminar permisos que previamente se han concedido con GRANT.
Las tareas sobre las que se pueden conceder o denegar permisos son las siguientes:
CONNECT, SELECT, INSERT, UPDATE, DELETE, USAGE
➢ Lenguaje de manipulación de datos (DML)
Los comandos DML o Data Manipulation Language su objetivo principal es la edición de la
información presente en la base datos. Dentre este grupo podemos encontrar los comandos:
- Seleccionar (SELECT): Se utiliza para seleccionar la información de la base de datos.
SELECT Nombre, Apellidos, ...
FROM Datos_Clientes;
Practica en Sql:
- Insertar (INSERT): sirve para insertar valores en una tabla que ya existe.
INSERT INTO tabla1 (columna1, columna2) VALUES (valor1, valor2);
- Condiciones (WHERE): es utilizada para establecer condiciones y filtros a la tabla.
SELECT columna1, ... FROM nombre_tabla WHERE condición;
- Borrar (DELETE): es utilizado para eliminar valores concretos de una tabla SQL.
DELETE FROM tabla1 WHERE condición;
- Actualizar (UPDATE): es utilizado para actualizar los valores de una tabla SQL que se
quiera modificar.
UPDATE tabla1 SET columna1 = valor1, columna2 = valor2
WHERE condición;
Para que solamente salga afectado un solo registro se debe hacer:
- Función de ordenar (ORDER BY): sirve para ordenar los resultados de una consulta en
orden ascendente o descendente.
SELECT columna1 FROM nombre_tabla
ORDER BY columna1 ASC|DESC;
Caso Practico:
AVG = promedio
SELECT AVG(columna1)
FROM nombre_tabla
WHERE condición;
SUM = suma
SELECT SUM(columna1)
FROM nombre_tabla
WHERE condición;
Conclusiones
➢ Con SQL nos permite ingresar comandos o sentencias de tal manera que podemos
administrar o crear una base de datos.
➢ Es la variedad de comandos que nos permiten generar datos desde la creación,
modificación o eliminación a las tablas las cuales también nos permiten recuperar datos
o importar de diferentes formas.
➢ Garantizan solvencia y consistencia de la hora de almacenar y consultar los datos.
Recomendaciones
➢ SQL no distingue entre mayúsculas y minúsculas.
➢ El punto y coma es la forma estándar de separar cada instrucción SQL en los sistemas de
bases de datos que permiten ejecutar más de una instrucción SQL en la misma llamada al
servidor.
➢ Asegurar que los datos sean válidos, correctos y completos.
Bibliografía