0% encontró este documento útil (0 votos)
12 vistas13 páginas

Manual SQL Server

Este es un manual de SQL Server

Cargado por

Quiero Aprender
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 PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
12 vistas13 páginas

Manual SQL Server

Este es un manual de SQL Server

Cargado por

Quiero Aprender
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 PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 13

1. Introducción al diseño de base de datos.

1.1 Planeación.
Una base de datos bien diseñada favorece la introducción y recuperación de
datos consistentes y reduce la existencia de datos duplicados en las tablas de
la base de datos. Las tablas de una base de datos relacional funcionan de
forma conjunta para garantizar la disponibilidad de los datos correctos cuando
los necesite. Se recomienda planificar primero la base de datos sobre el papel.

Cómo es fácil intuir una correcta planificación de las bases de datos antes de
comenzar a crearla nos ahorrará muchos problemas y dolores de cabeza.
Como cada proceso, el diseño de base de datos está compuesto por distintas
etapas secuenciales:

- Recopilación y análisis de requisitos


Esta primera fase consiste en un paso previo obligatorio, para asegurarnos de
que nuestra base de datos cumplirá con nuestros objetivos. Para ello,
deberemos analizar distintos factores, entre los cuales:

 Los datos que necesitamos almacenar y de dónde provienen.


 La información que los datos describen.
 Los usuarios de la base de datos y sus necesidades a la hora de acceder
a los datos.

- Diseño conceptual.
En esta fase se representa una descripción a alto nivel del contenido de base de
datos, independientemente del sistema de gestión de datos que se utilizará a
continuación.

- Elección de un sistema de gestión de base de datos.


Es en esta fase donde elegiremos el sistema gesto de base de datos (SGBD)
concreto que mejor se adapta a nuestro proyecto, como, por ejemplo, Oracle,
MySQL, Microsoft SQL Server y PostgreSQL.

- Diseño lógico.
En esta fase, se traduce el modelo conceptual obtenido anteriormente a un
esquema lógico, que describe la estructura de la base de datos. El modelo
lógico depende del SGBD que se utilizará.

- Diseño físico.
Es cuando se escribe el código (por ejemplo, SQL) para concretar el diseño en
el motor de base de datos que hemos escogido.

- Implementación.
Finalmente, se crea y se compila el esquema de la base de datos, se generan
los ficheros y las aplicaciones que implementan las transacciones.
1.2 Teoría de la estructura de base de datos.
La base de datos y estructura de base de datos se definen en el proceso de
instalación. Base de datos que se puede percibir como un conjunto de tablas y
se puede manipular según el modelo relacional de los datos.

Cada base de datos incluye:


- Conjunto de tablas de catálogo de sistema que describe la estructura
lógica y física de los datos.
- Archivo de configuración que contiene los valores de parámetro
asignados a la base de datos.
- Registro de recuperación con transacciones en curso y transacciones
archivables.

El siguiente paso es organizar la representación visual de tu base de datos.


Para ello, debes comprender exactamente como se estructuran las bases de
datos relacionales. Con el fin de que los datos sean consistentes de un registro
al siguiente, asigna el tipo de datos apropiado a cada columna.

Por último, deberías decidir que atributo o atributos funcionaran como clave
primaria para cada tabla, si procede. Una clave primaria, es un identificador
único para una entidad determinada, esto significa que puedes seleccionar un
cliente concreto incluso si solo conoces ese valor.

1.3 Estructura de las bases datos.


- Software
Entendemos el Software como el conjunto de programas utilizados para
controlar y tratar la base de datos.

- Hardware
El hardware es la parte física de la base de datos. Comprende una gran
cantidad de aparatos electrónicos como los ordenadores, los discos duros,
servidores, etc.

- Datos
Como es obvio, una base de datos no tiene sentido si no tenemos datos como
recurso para almacenar. Una base de datos almacena dos tipos de datos: los
datos operativos y los metadatos.

- DMBS
Llamamos Sistema de administración de Bases de Datos o DMBS (DataBase
Management System) a un programa o conjunto de programas que sirve para
acceder y gestionar nuestras bases de datos.

- Lenguaje de acceso
Se utiliza para acceder a los datos normalmente desde la interfaz del propio
DBMS. Con el lenguaje podemos introducir nuevos datos, actualizar los ya
existentes, programar acciones y prácticamente cualquier tarea requerida en la
que intervengan los datos.
- Procedimientos
Por procedimientos entendemos al conjunto de instrucciones que se utilizan
para configurar el DMBS y su correcto funcionamiento, así como sus accesos y
copias de seguridad, etc.

- Reporting
El generador de informes es un programa que extrae la información de la base
de datos y la representa visualmente en el formato configurado previamente
para ser consumido por los analistas o diferentes miembros de la organización.

1.4 Normalización.
La normalización de bases de datos es un proceso que consiste en designar
y aplicar una serie de reglas a las relaciones obtenidas tras el paso del
modelo entidad-relación al modelo relacional. Con objeto de minimizar la
redundancia de datos, facilitando su gestión posterior.

En otras palabras, la normalización es el proceso de organizar los datos de una


base de datos. Se incluye la creación de tablas y el establecimiento de
relaciones entre ellas según reglas diseñadas tanto para proteger los datos
como para hacer que la base de datos sea más flexible al eliminar la
redundancia y las dependencias incoherentes.

Hay algunas reglas en la normalización de una base de datos. Cada regla se


denomina una "forma normal". Si se cumple la primera regla, se dice que la
base de datos está en la "primera forma normal". Si se cumplen las tres
primeras reglas, la base de datos se considera que está en la "tercera forma
normal". Aunque son posibles otros niveles de normalización, la tercera forma
normal se considera el máximo nivel necesario para la mayor parte de las
aplicaciones.

Al igual que con otras muchas reglas y especificaciones formales, en los


escenarios reales no siempre se cumplen los estándares de forma perfecta. En
general, la normalización requiere tablas adicionales y algunos clientes
consideran éste un trabajo considerable. Si decide infringir una de las tres
primeras reglas de la normalización, asegúrese de que su aplicación se anticipa
a los problemas que puedan aparecer, como la existencia de datos redundantes
y de dependencias incoherentes.

Estas reglas son:

- Primera forma normal


 Elimine los grupos repetidos de las tablas individuales.
 Cree una tabla independiente para cada conjunto de datos relacionados.
 Identifique cada conjunto de datos relacionados con una clave principal.

No use varios campos en una sola tabla para almacenar datos similares.
- Segunda forma normal
 Cree tablas independientes para conjuntos de valores que se apliquen a
varios registros.
 Relacione estas tablas con una clave externa.

Los registros no deben depender de nada que no sea una clave principal de una
tabla, una clave compuesta si es necesario.

- Tercera forma normal


 Elimine los campos que no dependan de la clave.

Los valores de un registro que no sean parte de la clave de ese registro no


pertenecen a la tabla.

1.5 Reglas informales y tips que deben tomarse en


cuenta.
Entre los tips que se pueden dar en este caso son:

 Limita el acceso a la base de datos.

 Identifica los datos sensibles y críticos.


 Cifrar las informaciones confidenciales.
 Anonimiza las bases de datos que no son productivas.

 Monitorea la actividad de su base de datos.


 No mantengas consultas abiertas en tu código, eliminando aquellas que
ya no sean útiles.

1.6 Diagramación.
Un diagrama de base de datos es una herramienta visual utilizada para
construir y organizar bases de datos. Puede mostrar un sistema de base de
datos completo o solo algunas partes de él. También conocido como
esquema de base de datos, esta herramienta organiza los datos e ilustra las
relaciones que se desarrollan entre los distintos objetos del sistema.

1.6 Diagrama Entidad/Vinculo (E/R).


Un diagrama de relación de entidad (ERD) es una representación visual de una
base de datos que muestra cómo se relacionan los elementos que contiene. Un
diagrama ER se compone de dos tipos de objetos: entidades y relaciones. En
este contexto, una entidad es un componente de los datos del conjunto de
datos, que se muestra como una forma en el lienzo. Las relaciones entre
entidades se representan como líneas que tienen finales de línea especiales
llamados cardinalidades, que describen cómo interactúan entre sí dos
elementos de la base de datos.
Los diagramas entidad/relación se utilizan para: Diseño de base de datos,
solución de problemas de bases de datos, sistema de información empresarial,
reingeniería de procesos de negocios, etc.
1.7 Proceso del diseño de una base de datos relacional.
Este proceso se realiza en tres fases:

- Diseño conceptual
Durante esta fase, plasmaremos nuestras entidades y las relaciones que
existirán entre ellas. A cada entidad le colocaremos sus respectivos atributos y
resaltaremos el atributo principal, aquél atributo que identificará cada registro
de manera única.

- Diseño lógico
Aquí podemos tabular nuestro diseño conceptual. Este proceso es más
utilizado que el anterior (no debería ser así), ya que cuando ya llevas bastante
trabajando en bases de datos, el proceso tabular es más rápido de realizar y
vemos resultados más rápidamente. En esta fase, debemos pensar como
normalizar nuestras tablas para evitar duplicidad de información y para
ahorrar espacio de almacenamiento.

- Diseño físico
En esta última fase ya debemos revisar a detalle los tipos de datos que
utilizaremos, sus dominios (qué valores va a permitir), cuales índices debemos
crear para optimizar las consultas, entre otros. Aquí ya escribimos nuestro SQL
para plasmar todo nuestro diseño en el motor de bases de datos elegido.

2. Entorno de trabajo de SQL SERVER MANAGEMENT STUDIO.

2.1 SQL Server y SQL Server Management Studio.


SQL Server:
Es un sistema de gestión de bases de datos relacionales, o RDBMS,
desarrollado y comercializado por Microsoft. Al igual que otro software RDBMS,
SQL Server está construido sobre SQL.

SQL Server consta de dos componentes principales:

- Motor de base de datos


El Motor de base de datos consta de un motor relacional que procesa consultas
y de almacenamiento de datos que gestiona archivos de base de datos, páginas,
triggers o desencadenadores, índices, etc. El Motor de base de datos también
crea y ejecuta objetos de base de datos, como procedimientos almacenados,
vistas y disparadores.

- SQLOS
Bajo el motor relacional y el motor de almacenamiento se encuentra el sistema
operativo SQL Server o SQLOS. SQLOS proporciona muchos servicios del
sistema operativo, como la memoria y la administración de E/S. Otros servicios
incluyen manejo de excepciones y servicios de sincronización.
SQL Server Management Studio:
SQL Server Management Studio (SSMS) es un entorno integrado para
administrar cualquier infraestructura de SQL. Use SSMS para acceder,
configurar, gestionar, administrar y desarrollar todos los componentes de SQL
Server, Azure SQL Database, Azure SQL Managed Instance, SQL Server en Azure
VM y Azure Synapse Analytics. SQL Server Management Studio proporciona
una sola utilidad integral que combina un amplio grupo de herramientas
gráficas con muchos editores de secuencias de comandos enriquecidos para
brindar acceso a SQL Server a desarrolladores y administradores de bases de
datos de todos los niveles.

Resumiendo lo dicho anteriormente SQL Server Management Studio, es un


entorno integrado que proporciona herramientas para configurar, monitorear y
administrar instancias y bases de datos de SQL Server.

2.2 Object Explorer.


SQL Server Management Studio proporciona funciones para administrar
objetos en instancias del Motor de base de datos, Analysis Services, Integration
Services y Reporting Services.

El Explorador de objetos (Object Explorer) proporciona una interfaz de usuario


jerárquica para ver y administrar los objetos en cada instancia de SQL Server. El
panel Detalles del Explorador de objetos presenta una vista tabular de objetos
de instancia y la capacidad de buscar objetos específicos. Las capacidades de
Object Explorer varían ligeramente según el tipo de servidor, pero generalmente
incluyen funciones de desarrollo para bases de datos y funciones de
administración para todos los tipos de servidor.

2.3 Ventana de consulta.


Para una consulta en ventana basada en el tiempo, debe especificar el tamaño
de la ventana expresado en unidades de tiempo (por ejemplo, una ventana de
un minuto). Esto requiere una columna de marca temporal en la secuencia en la
aplicación que aumente de forma monótona. Para una consulta en ventana
basada en filas, debe especificar el tamaño de la ventana expresado como un
número de filas.

Puede especificar una consulta para procesar registros en una ventana de


saltos, una ventana deslizante o una ventana escalonada, según las
necesidades de la aplicación.

3. Definición y practica de comandos DDL & DML.

3.1 DDL: Create, Drop, Alter, Truncate.


 Create: Permite crear objetos dentro de una base de datos, como:
Procedimientos almacenados, tablas, bases de datos, entre otros.
Ejemplo de CREATE
Create Table Embutidos
(Aquí nos muestra la sentencia Create la cual al introducir la instrucción
anterior le dice al programa crea una tabla que se llame embutidos).

 Drop: Esta sentencia nos permite eliminar objetos de una base de datos.
Al ser utilizada es capaz de eliminar toda la tabla con tan solo una
instrucción.

Ejemplo de DROP
Drop Table Embutidos
(Aquí nos muestra la sentencia Drop la cual al ingresar la instrucción anterior le
dice al programa que elimine la tabla embutidos).

 Alter: Permite modificar objetos de la base de datos, cambiar atributos,


cambiar nombres.

Ejemplo de ALTER
Alter Table Embutidos
Add Email varchar (30),
(Aquí nos muestra la sentencia Alter la cual al ingresar la instrucción anterior le
dice al programa que en la tabla Embutidos agregue una nueva columna que se
llame Email).

 Truncate: Se utiliza para eliminar o borrar los datos que contiene una
tabla.

Ejemplo de Truncate
Truncate Table Embutidos
(Aquí nos muestra la sentencia Truncate la cual al ingresar la instrucción
anterior le dice al programa que elimine todos los registros en la tabla
Embutidos).

3.2 DML: Select, Insert, Update, Delete.


 Select: Permite recuperar información de una o más tablas en la base
de datos, dependiendo de las condiciones que especifiquemos. Otra
definición resumida es que, consulta registros en la base de datos.

Ejemplo de Select
Select *
From Embutidos
(Aquí nos muestra la sentencia Select la cual al ingresar la instrucción anterior
le dice al programa que seleccione la tabla Embutidos, en este caso al ejecutar
dicha instrucción se mostrara la tabla en cuestión).
 Insert: Ayuda a ingresar o insertar filas de datos en las tablas de
nuestra base de datos.

Ejemplo de Insert
Insert into Embutidos
Values (…)
(Aquí nos muestra la sentencia Insert la cual al ingresar la instrucción anterior
le dice al programa que inserte en la tabla en cuestión ciertos valores o datos).

 Update: Actualiza o modifica los registros de una tabla dependiendo de


la condición que especifiquemos.

Ejemplo de Update
Update Embutidos
Set Email= '[email protected]'
Where Código= 01
(Aquí nos muestra la sentencia Update la cual al ingresar la instrucción anterior
le dice al programa que actualice en la columna Email fila cuyo código sea 1 y
allí ponga el correo electrónico especificado).

 Delete: Elimina registros de una base de datos.

Ejemplo de Delete
Delete from Embutidos
Where Código= 03
(Aquí nos muestra la sentencia Delete la cual al ingresar la instrucción anterior
le dice al programa que elimine toda la fila cuyo código sea el plasmado en la
instrucción anterior).

4. Definición y practica con cláusulas.

4.1 Clausulas: From, where, Group by, Having, Order by.


 From: Se usa para especificar de que tabla seleccionar o eliminar datos.

Ejemplo de From
Select *
From Embutidos
(Aquí nos muestra la sentencia From la cual al ingresar la instrucción anterior le
dice al programa que al seleccionar lo que va mostrar sea de la tabla
Embutidos).
 Where: Se usa con la instrucción SELECT para extraer solo aquellos
registros que cumplen las condiciones especificadas.

Ejemplo de Where
Select *
From Embutidos
Where cantidad= 200
 Group by: Se utiliza para juntar filas de resultados que coincidan en el
valor de alguna columna seleccionada.

Ejemplo de Group by
SELECT column_name(s)
FROM table_name
WHERE condition
GROUP BY column_name(s)
 Having: Especifica que una instrucción SELECT de SQL solo debe
devolver filas donde los valores agregados cumplen las condiciones
especificada.

Ejemplo de Having
USE Alicante ;
Go
Select SalesOrderID, SUM (linetotal) AS SubTotal
FROM Sales.SalesOrderDetail
GROUP BY SalesOrderID
HAVING SUM (Linetotal) > 100000.00
ORDER by SalesOrderID ;
 Order by: Ordena los registros resultantes de una consulta por un
campo o campos especificados en orden ascendentes o descendientes.

Ejemplo de Order by
SELECT column1, column2, ...
FROM table_name
ORDER BY column1, column2,

5. Definición y practica con operadores.

5.1 Operadores: And, Or, Not.


 And: mostrará los resultados cuando se cumplan las 2 condiciones.

Ejemplo de And
SELECT *
From Embutidos
Where Cantidad= 100 and Precio_compra>1000
 Or: mostrará los resultados cuando se cumplan una de las 2
condiciones.

Ejemplo de Or
SELECT *
From Embutidos
Where Cantidad= 100 or Precio_compra>1000

 Not: Se usa para crear la negación lógica en una expresión.

Ejemplo de Not
SELECT *
From Embutidos
Where Not Concdiction;

6. Definición y practica con operadores de comparación.

6.1 Operadores: Between, Like, in, mayor (>), menor (<),


diferente (<>).
 Between: Se utiliza en la cláusula Where para seleccionar valores entre
un rango de datos.

Ejemplo de Between
SELECT *
From Embutidos
Where Tipo_embutido
Between 'Carne' And 'Longaniza'

 Like: Se utiliza en la cláusula Where para buscar un patrón especifico en


una columna.

Ejemplo de Like
SELECT *
From table_name
Where Column Like pattern,

 In: Permite especificar valores en una clausula Where.

Ejemplo de In
SELECT *
From table_name
Where Column in (Values1…),
 Mayor (>): Como su nombre lo indica, este buscara los valores que
sean mayores según las instrucciones dadas.

Ejemplo de Mayor (>)


Select *
From Embutidos
Where cantidad> 200

 Menor (<): Como su nombre lo indica, este buscara los valores que
sean menores según las instrucciones dadas.

Ejemplo de Menor (<)


Select *
From Embutidos
Where cantidad< 200

 Diferente (<>): Como su nombre lo indica, este buscara los valores


que sean diferentes según las instrucciones antes especificadas.

Ejemplo de Diferente (<>)


Select *
From Embutidos
Where cantidad< 200

7. Definición y practica con Funciones de agregado.


7.1 Funciones de agregado: AVG, Count, Sum, Max, Min.
 AVG: Devuelve el valor medio de una columna de tipo numérico.

Ejemplo de AVG
Select AVG precio
From Embutidos

 Count: Devuelve el número de fila que coincide con un criterio


especifico.

Ejemplo de Count
Select Count precio
From Embutidos
Where Condition
 Sum: Obtiene la suma total de los valores de una columna de tipo
numérico.

Ejemplo de Sum
Select Sum precio
From Embutidos

 Max: Obtiene el mayor de los valores de una columna de tipo numérico.

Ejemplo de Max
Select Max precio
From Embutidos

 Min: Obtiene el menor los valores de una columna de tipo numérico.

Ejemplo de Min
Select Min precio
From Embutidos

8. Consultas de selección.

8.1 Consultas: Básicas, ordenar registros, con predicados.


 Consulta básica: Una consulta básica de SQL está enfocada
en consultar datos en una sola tabla, y obtener filas y columnas en el
orden y cantidad que nosotros queramos. Una de las sentencias que
utilizamos en consultas básicas es Select.

 Consulta de ordenar registros: Como su nombre lo indica se basa


en ordenar los registros de una base de datos, en este punto para
realizar dicha acción se utiliza la sentencia Order by.

 Consulta con predicado: En estas consultas podemos tres tipos de


las mismas con consultas con:
- All
Puede utilizarse con aquellas subconsultas que generan una única columna
de números. Si la consulta está precedida por la palabra ALL, la condición
solo será cierta si se ve satisfecha por todos los valores generados por la
subconsulta. Así que ALL se utiliza para recuperar únicamente aquellos
registros de la consulta principal que satisfacen la comparación con todos
los registros recuperados en la subconsulta.
Select *
From Libros
Where Precio > All (Select Precio
From Libros
Where IdAutor=001)
- ANY/SOME
Se puede utilizar el predicado ANY o SOME, los cuales son sinónimos, para
recuperar registros de la consulta principal, que satisfagan la comparación
con cualquier otro registró recuperado en la subconsulta.
Select *
From Libros
Where Precio > Some (Select Precio
From Libros
Where IdAutor=001)

- TOP
Devuelve un cierto número de registros que se especifica en un rango
mediante la cláusula ORDER BY.
Select Top 10
From Libros
Order by Titulo Desc

9. Consultas mediante Join.

9.1 Joins: Left Join, Right Join, Inner Join, Full Join.
 Left Join: Con Left Join damos prioridad a la tabla de la izquierda, y
buscamos en la tabla derecha.

Si no existe ninguna coincidencia para alguna de las filas de la tabla de la


izquierda, de igual forma todos los resultados de la primera tabla se
muestran.

 Right Join: La situación es muy similar, pero aquí se da prioridad a la


tabla de la derecha.

 Inner Join: Esta cláusula busca coincidencias entre 2 tablas, en


función a una columna que tienen en común. De tal modo que sólo la
intersección se mostrará en los resultados.

 Full Join: Mientras que Left Join muestra todas las filas de la tabla
izquierda, y Right Join muestra todas las correspondientes a la tabla
derecha, Full Outer Join (O simplemente Full Join) se encarga de mostrar
todas las filas de ambas tablas sin importar que no existan
coincidencias (Usaran NULL como un valor por defectos para dichos
casos).

También podría gustarte