0% encontró este documento útil (0 votos)
10 vistas

Base de Datos SQL Server

Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
10 vistas

Base de Datos SQL Server

Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 11

,1 6 7,78 72 ' ( ( ' 8 &$ &,Ï 1 6 8 3 ( 5 ,2 5 7( &1 2 / Ï * ,&2 3 8 %/ ,&2

³ $ 5 * ( 1 7,1 $ ´

1 RP EUHV 3 DXOR 0 LJXHO

$ SHOOLGRV &DUUHRQ6 XFDV DLUH

8 QLGDG ' LGi FW


LFD ,QW
HJUDFLyQ GH ODV 7 ,&

3 URIHVRU 9 tFW
RU$ OIUHGR %DOFi ] DU%ULFHxR
BASE DE DATOS SQL SERVER

El lenguaje de consulta estructurado o SQL (por sus siglas en


inglés Structured Query Language) 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.
El SQL es un lenguaje de acceso a bases de datos que explota la flexibilidad y
potencia de los sistemas relacionales y permite así gran variedad de
operaciones.

Componentes del SQL


El lenguaje SQL está compuesto por comandos, cláusulas, operadores y
funciones de agregado. Estos elementos se combinan en las instrucciones para
crear, actualizar y manipular las bases de datos.

¿Qué son los comandos SQL?

Los comandos SQL ordenan a un sistema de gestión de bases de


datos (DBMS por sus siglas en inglés: Database Management Systems) que
realice determinadas acciones. Esto incluye definir tablas y sus estructuras,
así como introducir, modificar y eliminar datos y ejecutar consultas.

El alcance que tienen los comandos SQL viene definido en varias normas ISO
o ANSI. Además, hay una serie de dialectos de implementación específicos.
Por ejemplo, las implementaciones de los principales fabricantes
como PostgreSQL, MySQL, Oracle DBMS y Microsoft SQL Server traen cada
uno sus propias variantes del lenguaje. Algunos tienen sus propios comandos;
la mayoría, difieren al menos respecto a las funciones para procesar strings y
otros datos.
De hecho, SQL consta de varios sublenguajes; cada uno de ellos cubre
diferentes áreas y cuenta con sus propios comandos. Veamos los tipos de
comandos SQL más importantes.

¿Qué tipos de comandos SQL existen?

Los comandos SQL más importantes pueden dividirse, a grandes rasgos,


en cinco sublenguajes. Veamos los ámbitos de aplicación de cada uno de los
sublenguajes y sus comandos respectivos:

¿Cuál es la sintaxis básica de los comandos SQL?

A diferencia de los lenguajes de programación más comunes, SQL es


un lenguaje declarativo. Esto significa que describe el resultado que debe
alcanzarse sin especificar exactamente qué pasos deben llevarse a cabo para
lograrlo. Esta característica especial del lenguaje se refleja en su tendencia a
que los comandos sean más largos; a cambio, a menudo se requieren menos
líneas de código que con los lenguajes imperativos convencionales.
Como ejemplo ilustrativo, nos remitimos al siguiente comando SQL: DROP
TABLE IF EXISTS. Has leído bien, es un comando que se utiliza únicamente
para eliminar una tabla si ya existe:

Un código de ejemplo en Python con una funcionalidad similar incluye


varias solicitudes a funciones y consta de una extensión mayor a dos líneas:

Como se ha visto, un solo comando SQL puede estar compuesto por


varias palabras clave. Esto lleva a una apariencia similar entre dichos
comandos. He aquí un ejemplo: Los comandos SQL CREATE TABLE y
CREATE OR REPLACE VIEW parecen a primera vista expresiones derivadas y
subordinadas de un comando hipotético CREATE. Sin embargo, este no es el
caso. A pesar de su similitud, se trata de comandos independientes.

Al igual que en otros lenguajes, algunos comandos SQL admiten


parámetros adicionales. Suelen ser nombres de bases de datos, tablas o
columnas. Por ejemplo, solicitamos las columnas “Name” y “Age” de la tabla
“People”:

En el sentido estricto de la palabra, los comandos SQL son sentencias. A


mayores, hay otras construcciones sintácticas, algunas de las cuales actúan
como comandos. Te mostramos una visión general de los elementos más
importantes que conforman la sintaxis SQL:
Resumen de los comandos SQL más importantes

Las bases de datos estructuran los datos dentro de una jerarquía de capas
de almacenamiento, desde el servidor de la base de datos hasta el valor
almacenado en un campo. Dado que todos los aspectos de un sistema de
gestión de bases de datos relacionales (RDBMS) pueden controlarse mediante
SQL, existen comandos SQL para cada una de las capas. Te mostramos una
visión general de la jerarquía de los objetos RDBMS:

Además de los objetos RDBMS principales mencionados anteriormente,


también se utilizan otros objetos como las vistas (“Views”) y los procedimientos
almacenados (“Stored Procedures”). Estos también tienen sus propios
comandos SQL. A continuación, nos adentraremos en los comandos de los
cinco sublenguajes principales de SQL:

1. Data Definition Language (DDL) – Lenguaje de definición de datos


2. Data Manipulation Language (DML) – Lenguaje de manipulación de
datos
3. Data Query Language (DQL) – Lenguaje de solicitud de datos
4. Data Control Language (DCL) – Lenguaje de control de datos
5. Transaction Control Language (TCL) – Lenguaje de control de
transacciones

Comandos SQL para definir datos

Estos comandos SQL se utilizan para definir estructuras de datos. Como tal,
todos ellos operan sobre objetos agregados tales como bases de datos, tablas
e índices. Un objeto agregado se utiliza para almacenar varios registros; un
registro contiene varios campos, cada uno de los cuales está asociado a una
columna. La columna define el tipo de dato del campo como, por ejemplo,
número, cadena, booleano, etc. Además, para una columna se pueden definir
limitaciones como que “debe ser única”, que “no debe ser nula”, etc.
Comandos SQL para definir las bases de datos
En el nivel más alto de un sistema de gestión de bases de datos
relacionales (RDBMS) se encuentran las bases de datos. Estos pueden ser
creados y eliminados por el siguiente comando SQL:
Comandos SQL para definir tablas
La construcción de una base de datos comienza con la definición del esquema
de la base de datos. El esquema es la base para un uso eficiente de la base
de datos y requiere un diseño cuidadoso que mapee las tablas individuales y
sus relaciones entre sí. Normalmente, el esquema de la base de datos se
desarrolla a partir de diagramas de Entity Relation (ER) o diagramas UML
especiales.

Si el esquema de la base de datos está disponible como una descripción


abstracta, la estructura de la base de datos se construye utilizando los
comandos SQL correspondientes. Se definen las tablas con sus columnas y
tipos; los enlaces entre las tablas se realizan mediante “Foreign Keys” (claves
externas). La estructura puede modificarse posteriormente ejecutando otros
comandos SQL. Mostramos un resumen de los comandos más importantes:

Una característica importante de un sistema de gestión de bases de datos


(DBMS) es la de asegurar la coherencia de los datos. Por ejemplo, se puede
exigir que los campos contenidos en las columnas no queden vacíos o que
los valores que estos contengan estén dentro de unos límites permitidos.
Se trata de lo que se conoce como constraints (es. “limitaciones”). Además, los
Foreign Keys (“claves externas”) pueden utilizarse para asegurarse de que los
vínculos entre las tablas se crean correctamente.

Se utilizan varias cláusulas dentro de las sentencias de definición de datos


para establecer las limitaciones de cada columna. Te las mencionamos a
continuación sin ejemplos:

Comandos SQL para la manipulación de datos

Si las tablas de una base de datos ya están definidas, lo siguiente son las
operaciones sobre los registros de datos individuales. Utilizando los comandos
SQL adecuados, se pueden insertar, modificar y eliminar registros de
datos. Crear, leer, actualizar y eliminar se conocen como las operaciones
CRUD básicas (“Create, Read, Update, Delete”), que también se pueden
encontrar en las bases de datos NoSQL:

Cabe señalar que las cláusulas o funciones “WHERE”, “SET” y “VALUES” que
aparecen en los ejemplos también pueden encontrarse en otros contextos. Sin
embargo, a pesar de tener el mismo nombre, pueden aplicarse normas
ligeramente diferentes para su uso. Ten cuidado cuando uses los comandos
SQL UPDATE y DELETE FROM sin una cláusula WHERE, dado que se
modificarían o eliminarían todos los registros de datos de la tabla.

Comandos SQL para consultar datos

El comando SQL SELECT es probablemente el más conocido del lenguaje. Se


utiliza para consultar los datos de la base de datos. Por lo general, el stock
de datos no se modifica con él. Por lo tanto, los analistas suelen tener acceso
al comando SELECT. Veamos los componentes básicos del comando SQL
SELECT:
Aunque SELECT es solo un comando SQL para consultar datos, puede
utilizarse de diversas maneras. Hay una serie de cláusulas que sirven para
filtrar, ordenar y resumir los datos facilitados. Vamos a analizarlos a
continuación.
Comandos SQL para refinar las consultas

El comando SQL SELECT retorna un determinado Result Set (es. “conjunto de


resultados”). Teóricamente, un Result Set puede considerarse como una tabla
con columnas que contienen valores. En la práctica, a menudo es necesario
filtrar u ordenar los resultados o limitar el número de registros obtenidos. Todos
estos casos de uso tienen cláusulas correspondientes que se pueden utilizar
dentro del comando SQL SELECT:

Comandos SQL para unir consultas

Además de refinar el conjunto de resultados, es posible unir las consultas en


varias tablas. Recuerda: un comando SQL SELECT retorna un conjunto de
resultados. Por lo tanto, SQL contiene estos comandos que permiten unir dos
conjuntos de resultados según las reglas de la teoría de conjuntos relacionales.

Para explicar en detalle los comandos SQL para unir consultas, son necesarios
ejemplos más complejos con varias tablas ya definidas. Por ello, en este caso
vamos a prescindir del código de ejemplo. Veamos las operaciones de
conjunto más importantes:
Comandos SQL para guardar y repetir consultas

Como hemos visto, las consultas SQL pueden ser bastante complejas y, en la
práctica, suele tener sentido repetir algunas consultas. En un principio, es
posible guardar los comandos SQL correspondientes como código e
importarlos cuando sea necesario. Sin embargo, esto no es muy eficaz.
Afortunadamente existen comandos SQL especiales con los que se pueden
guardar consultas complejas como una unidad directamente en el sistema de
gestión de bases de datos (DBMS).

Veamos primero las vistas, “views” en inglés. Una vista en la base de datos
corresponde aproximadamente a una consulta almacenada. Recordemos:
una consulta retorna un conjunto de resultados en forma de tabla y, en lugar de
descartarlos, los guardamos como una vista. Es por ello por lo que las vistas
también se denominan “tablas virtuales”. Por regla general, una vista solo
puede ser leída. Hay varios comandos SQL para trabajar con las vistas:

Además de las vistas de la base de datos, existen los “procedimientos


almacenados” (Stored Procedures). Los procedimientos almacenados se
utilizan para ejecutar consultas repetidamente y son más complejos que las
vistas. Estos te permiten utilizar parámetros y unir consultas de forma dinámica.
Además, un procedimiento almacenado permite tener acceso a escribir los
datos en cuestión. A continuación, te ofrecemos un resumen de los comandos
SQL más relevantes, sin ejemplos por razones de espacio:
El uso de procedimientos almacenados traslada el código del cliente al
servidor. Esto implica una separación de responsabilidades que se traduce en
una mayor seguridad y un mejor rendimiento. La desventaja puede ser que el
“Business Logic” de un procedimiento almacenado se encuentra fuera del
sistema de control de versiones. Dado que los procedimientos almacenados
dependen en gran medida del DBMS que los contiene, un cambio de proveedor
puede, en el peor de los casos, llevar a una pérdida de funcionalidad.

Comandos SQL para el control de acceso

Un único servidor de bases de datos puede contener varias bases de datos. Se


utilizan mecanismos de control de acceso para gestionar las bases de datos de
forma independiente. Por ejemplo, se puede definir para cada usuario los
derechos con los que puede acceder a las bases de datos y a las tablas
contenidas dentro de estas. Además, se pueden definir grupos de usuarios y
adjudicarles usuarios concretos a estos. Principalmente se utilizan dos
comandos SQL:

Comandos SQL para controlar transacciones

Una de las ventajas de utilizar sistemas de gestión de bases de datos


relacionales (RDBMS) es que se garantizan las propiedades “ACID”.
Esto garantiza que los datos estén siempre ordenados y bien definidos. A
nivel técnico, se utilizan las llamadas transacciones, que son una “atomic
operation” indivisible (“operación atómica”). Una transacción puede
completarse íntegramente y sin errores, o bien producir un error que deshace
individualmente todos los pasos anteriores para devolver el conjunto de datos a
su estado inicial. Veamos los comandos SQL para el control de las
transacciones:
Un resumen de las propiedades ACID mencionadas anteriormente:

BIBLIOGRAFIA:
Fuente: https://www.ionos.es/digitalguide/servidores/configuracion/comandos-
sql/
Fuente:
https://geotalleres.readthedocs.io/es/latest/conceptos-sql/conceptos_sql.html

También podría gustarte