PDF Manual SQL Server Basico

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 113

SQL Server

SQL SERVER BÁSICO

Contenido
Introducción a SQL Server ........................................................ 6
Qué es SQL Server ............................................................................................... 6
Historia y Evolución de SQL Server ...................................................................... 7
Ediciones y Versiones Disponibles ......................................................................... 8
Instalación y Configuración Básica ....................................................................... 9
Proceso de Instalación de SQL Server Developer en Windows ........................ 10
Verificamos de la instalación ............................................................................. 25
Instalación de SQL Server Management Studio (SSMS) .................................. 26
Conectar SSMS con el motor SQL .................................................................... 29
Entorno de trabajo del SSMS ............................................................................ 31
1. Barra de Menús ........................................................................................... 31
2. Barra de Herramientas ................................................................................ 31
3. Explorador de Objetos ................................................................................. 31
4. Panel de Consultas....................................................................................... 31
5. Panel de Resultados ..................................................................................... 32
6. Explorador de Plantillas .............................................................................. 32
7. Ventana de Propiedades .............................................................................. 32
8. Ventana de Mensajes ................................................................................... 32
9. Ventana de Actividad .................................................................................. 32
10. Panel de Propiedades del Servidor ............................................................. 32
11. Ventana de Inicio de Sesión ........................................................................ 33
Crear un nuevo proyecto ................................................................................... 36
Ejemplo de consulta .......................................................................................... 41
SELECT ‘HOLA’ ............................................................................................. 41
Atajos CTRL L, D y R. .................................................................................... 42
Cerrar la ventana de SCRIPT ........................................................................ 43
Cerrar la solución: .......................................................................................... 44
Abrir una solución .......................................................................................... 46
Comentar Lineas ............................................................................................ 48
Conceptos Básicos de Bases de Datos Relacionales ............ 49
Definición de Base de Datos Relacional ............................................................ 49
Características clave de las bases de datos relacionales: ................................... 49
Componentes de una Base de Datos Relacional .............................................. 50

2 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Tablas ............................................................................................................. 50
Registros ......................................................................................................... 50
Campos........................................................................................................... 50
Claves Primarias y Foráneas ............................................................................... 51
Clave Primaria................................................................................................ 51
Clave Foránea ................................................................................................. 51
Relaciones en Bases de Datos Relacionales: ...................................................... 51
Normalización y Diseño Básico de Bases de Datos................................................ 52
Normalización ................................................................................................. 52
Diseño Básico de Bases de Datos ...................................................................... 52
Introducción a SQL Server Management Studio (SSMS) ....... 53
¿Qué es SQL Server Management Studio (SSMS)? .......................................... 53
Características clave de SSMS:........................................................................ 53
Beneficios de Usar SSMS: ............................................................................... 53
Conexión al Servidor y Gestión de Bases de Datos ............................................... 54
Conexión a una Instancia de SQL Server ......................................................... 54
Gestión de Bases de Datos ............................................................................... 54
Gestión de Seguridad ...................................................................................... 55
Exploración de las Herramientas Disponibles en SSMS ....................................... 56
Editor de Consultas (Query Editor) ................................................................. 56
Explorador de Objetos .................................................................................... 56
Administrador de Actividad (Activity Monitor) ............................................... 57
Herramientas de Backup y Restauración ......................................................... 57
Asistentes de Configuración ............................................................................ 57
Creación y Gestión de Bases de Datos (Ejemplo de uns
Institución Educativa) ............................................................. 58
Creación de Bases de Datos y Tablas ................................................................... 58
Creación de Bases de Datos ............................................................................. 58
Creación de Tablas ......................................................................................... 60
Relaciones entre Tablas ................................................................................... 62
Tipos de Datos en SQL Server ............................................................................ 64
Modificación y Eliminación de Tablas ................................................................. 66
Modificación de Tablas ................................................................................... 66
Eliminación de Tablas ..................................................................................... 70
Atajos más utilizados ......................................................................................... 74

3 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Introducción a T-SQL ............................................................. 75


Qué es T-SQL ..................................................................................................... 75
Características clave de T-SQL: ...................................................................... 75
Sintaxis Básica de T-SQL .................................................................................... 75
Estructura General de un Comando T-SQL .................................................... 75
Sentencias SELECT, INSERT, UPDATE, DELETE ............................................ 76
Sentencia SELECT ......................................................................................... 76
Sentencia INSERT .......................................................................................... 76
Sentencia UPDATE ......................................................................................... 77
Sentencia DELETE ......................................................................................... 77
Filtrado y Ordenación de Datos .......................................................................... 78
Filtrado de Datos con la Clausula WHERE ...................................................... 78
Resumen del Comportamiento de la Consulta:................................................. 79
Ordenación de Datos con la Clausula ORDER BY ........................................... 80
Uso de Operadores de Comparación y Lógicos ................................................ 80
Diseño de una Base de Datos con SSMS .............................. 81
Creación de la Base de Datos (miEscuelaDB) .................................................. 81
Archicos .mdf y .ldf ............................................................................................ 88
Archivos .mdf (Primary Data File) .................................................................. 88
Archivos .ldf (Log Data File) ........................................................................... 89
Relación entre .mdf y .ldf: ............................................................................... 90
Crear una nueva Consulta “New Query” ............................................................ 90
Crear una nueva tabla en nuestra base de datos (alumno) ............................... 92
1. Nombre de la Columna ................................................................................ 93
2. Tipo de Datos .............................................................................................. 93
3. Permitir Nulos (Allow Nulls) ........................................................................ 94
4. Clave Primaria (Primary Key) ..................................................................... 94
5. Identidad (Identity Specification) ................................................................. 94
6. Longitud (Length) ....................................................................................... 94
7. Escala y Precisión ........................................................................................ 95
8. Valores Predeterminados (Default Values or Binding) .................................. 95
9. Índices y Restricciones ................................................................................. 95
10. Comentar Campo (Description) ................................................................. 95
Modificar la estructura de una tabla existente.................................................... 98
Establecer una Clave Primaria (Primary Key).................................................. 101

4 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Propiedad IDENTITY en un campo. ................................................................ 103


Características de la Propiedad IDENTITY: ................................................. 103
Crear una nueva tabla (curso) usando T-SQL (Transact SQL)........................ 104
Descripción de la Tabla: ................................................................................ 105
Renombrar una tabla ....................................................................................... 106
Crear una tabla “maestro” ................................................................................ 107
Relaciones entre tabla ..................................................................................... 109
Relaciones Sugeridas: ................................................................................. 109
Ejemplos de Consultas:................................................................................ 109
Agregemos datos a las tablas:......................................................................... 110

5 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Introducción a SQL Server

Qué es SQL Server


SQL Server es un sistema de gestión de bases de datos relacional (RDBMS, Relational
Database Management System) desarrollado por Microsoft. Está diseñado para gestionar y
almacenar grandes volúmenes de datos y permitir a múltiples usuarios acceder y manipular
esos datos de manera eficiente. Utiliza el lenguaje de consulta estructurado (SQL) para
realizar operaciones en las bases de datos, como consultas, inserciones, actualizaciones y
eliminaciones.

Características clave de SQL Server:

 Escalabilidad: Adecuado para aplicaciones desde pequeñas hasta grandes


implementaciones empresariales.

 Seguridad: Incluye características avanzadas como cifrado de datos y autenticación


robusta.

 Integración: Se integra con otros productos de Microsoft como Azure, Power BI, y
Visual Studio.

 Alto rendimiento: Optimiza las consultas y operaciones en bases de datos grandes,


asegurando tiempos de respuesta rápidos.

6 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Historia y Evolución de SQL Server


SQL Server ha pasado por una evolución significativa desde su lanzamiento inicial,
adaptándose continuamente a las necesidades tecnológicas y empresariales.

Principales hitos:

 1989: Primera versión lanzada en colaboración con Sybase, para el sistema


operativo OS/2.

 1993: Microsoft se separa de Sybase y comienza a desarrollar SQL Server de


manera independiente.

 2000: SQL Server 2000 introduce OLAP y soporte para XML, expandiendo su
capacidad para aplicaciones más complejas.

 2005: Lanzamiento de SQL Server 2005 con nuevas funciones como Service
Broker, soporte CLR, y Reporting Services.

 2012: Introducción de AlwaysOn Availability Groups en SQL Server 2012 para


mejorar la disponibilidad y recuperación ante desastres.

 2016: SQL Server 2016 añade características como Stretch Database y soporte para
JSON.

 2017: SQL Server se vuelve multiplataforma con soporte para Linux.

 2022: SQL Server 2022 mejora la integración con Azure y otras tecnologías de la
nube.

7 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Ediciones y Versiones Disponibles


SQL Server está disponible en varias ediciones, cada una diseñada para diferentes tipos de
usuarios y necesidades empresariales.

Ediciones principales:

 SQL Server Express: Edición gratuita y limitada, ideal para pequeñas aplicaciones
y aprendizaje.

 SQL Server Standard: Conjunto completo de características básicas, adecuado


para pequeñas y medianas empresas.

 SQL Server Enterprise: Edición más completa, diseñada para grandes


organizaciones con necesidades críticas de datos.

 SQL Server Developer: Edición gratuita con todas las características de la edición
Enterprise, pero solo para desarrollo y pruebas.

 SQL Server Web: Diseñada para aplicaciones web, con un costo reducido
comparado con la edición Enterprise.

8 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Instalación y Configuración Básica


La instalación y configuración de SQL Server pueden variar según la edición y el sistema
operativo utilizado.

Pasos para la instalación:

1. Descarga del instalador: Obtener la versión deseada de SQL Server desde el sitio
oficial de Microsoft.

2. Ejecutar el instalador: Iniciar la instalación, eligiendo entre una instalación básica


o personalizada.

3. Configuración del servidor: Configurar la autenticación (Windows o mixta),


cuenta de administración (sa), y ubicaciones de los archivos de base de datos.

4. Selección de características: Decidir qué características instalar (motor de base de


datos, Reporting Services, Analysis Services, etc.).

5. Finalización de la instalación: Revisar la configuración y completar la instalación.


Iniciar SQL Server Management Studio (SSMS) para conectarse al servidor.

9 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Proceso de Instalación de SQL Server Developer en


Windows
Buscamos “SQL Server descargar” en el navegador:

Descargas de SQL Server | Microsoft

10 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Bajamos dentro de la página hasta visualizar “Desarrollador” y damos clic ahí.

Se descarga el siguiente archivo:

Los buscamos en descargas y lo abrimos como administrador:

11 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Seleccionamosla opción “Custom”

Dejamos la misma Localidad: “SQL2022” y le damos en “Install”

12 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Esperamos a que se cargue la barra (Esto puede tardar algunos minutos).

Despues de la carga de la barra, nos aparecerá la siguiente pantalla:

13 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Seleccionamos los siguientes elementos:

14 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

15 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

16 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Desmarcamos la casilla de “Azure Extensio for SQL Server”

17 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

18 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

19 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Cabiamos a “Automático” el SQL Server Agent

20 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

En mi caso puse la contraseña de “aldoarmin” igal que la del usuario

21 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

22 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Esto puede tardar varios minutos

23 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Y reiniciamos la computadora.

24 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Verificamos de la instalación
En la ventana de búsquede de Windows colocamos “Service” o “Servicio”
dependiendo del idioma, y le damos clic.

Verificamos que el estado de SQL Server diga “Running”

25 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Instalación de SQL Server Management Studio (SSMS)

Buscamos en el navegador “SQL Server Management Studio”

Descarga de SQL Server Management Studio (SSMS) - SQL Server Management


Studio (SSMS) | Microsoft Learn

Buscamos algo similar a lo siguiente para descargar:

26 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

27 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Esta operación puede tardar varios minutos.

28 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Conectar SSMS con el motor SQL


En la ventana de busqueda de Windows colocamos SSMS.

Para comodidad colocamos el enlace en la barra de tareas: Damos clic derecho a


SQL Server Mangement Studio, seleccionamos “pin to taskbar” o “agregar a la
barra de tareas”.

Abramos SQL Server Management Studio:

29 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Como podemos ver en el arbol de carpetas, el icono de principal tiene una flechita
verde, eso indica que ya estamos conectados con el servidor.

TrustServerCertificate=True (En caso de que marque error)

30 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Entorno de trabajo del SSMS

SQL Server Management Studio (SSMS) es una herramienta gráfica integral desarrollada
por Microsoft para la administración y el desarrollo en SQL Server. SSMS ofrece un
entorno rico en características que permite a los usuarios gestionar bases de datos SQL
Server, realizar consultas y tareas administrativas, y desarrollar soluciones de bases de
datos. A continuación, te describo las partes principales del entorno de trabajo en SSMS:

1. Barra de Menús

 Ubicación: Parte superior de la ventana.


 Descripción: Contiene los menús desplegables como "Archivo", "Edición", "Ver",
"Consulta", "Depurar", "Herramientas", "Ventana", y "Ayuda". Estos menús
proporcionan acceso a todas las funciones de SSMS, desde la apertura de nuevas
conexiones hasta la configuración de las opciones de la aplicación.

2. Barra de Herramientas

 Ubicación: Justo debajo de la barra de menús.


 Descripción: Contiene iconos para realizar acciones comunes rápidamente, como
abrir una nueva consulta, ejecutar código SQL, detener la ejecución, y abrir el
Explorador de Objetos, entre otros.

3. Explorador de Objetos

 Ubicación: Panel izquierdo del entorno.


 Descripción: Es una vista jerárquica de las bases de datos y objetos del servidor
SQL Server. Permite navegar por las bases de datos, tablas, vistas, procedimientos
almacenados, funciones y otros objetos. Desde aquí se pueden realizar tareas
administrativas como la creación, modificación o eliminación de objetos de base de
datos.

4. Panel de Consultas

 Ubicación: Centro del entorno de trabajo.


 Descripción: Es el espacio donde se escriben y ejecutan los comandos SQL. Cada
nueva consulta se abre en una pestaña separada, lo que permite trabajar con
múltiples consultas al mismo tiempo. Los resultados de las consultas se muestran en
la parte inferior del panel de consultas.

31 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

5. Panel de Resultados

 Ubicación: Parte inferior del Panel de Consultas.


 Descripción: Aquí se muestran los resultados de la ejecución de una consulta SQL.
Dependiendo del tipo de consulta, se pueden ver resultados en formato de tabla,
mensajes de texto (como errores o confirmaciones), o estadísticas sobre la
ejecución.

6. Explorador de Plantillas

 Ubicación: Panel derecho (opcional, puede no estar visible por defecto).


 Descripción: Contiene plantillas de código SQL predefinidas que pueden ser
utilizadas como punto de partida para tareas comunes. Es útil para la creación rápida
de scripts para objetos como tablas, índices y procedimientos almacenados.

7. Ventana de Propiedades

 Ubicación: Normalmente en la parte derecha o inferior.


 Descripción: Muestra las propiedades del objeto seleccionado en el Explorador de
Objetos. Esto incluye detalles como el nombre, tipo, y configuración específica del
objeto.

8. Ventana de Mensajes

 Ubicación: Bajo el Panel de Resultados, a veces integrada en él.


 Descripción: Muestra mensajes del sistema, como resultados de la ejecución,
errores y advertencias. Es fundamental para la depuración y análisis del código
SQL.

9. Ventana de Actividad

 Ubicación: Puede abrirse desde el menú o barra de herramientas.


 Descripción: Permite monitorear en tiempo real la actividad del servidor, como las
conexiones activas, procesos bloqueados, y rendimiento general del servidor.

10. Panel de Propiedades del Servidor

 Ubicación: Accesible desde el Explorador de Objetos.


 Descripción: Muestra y permite modificar las configuraciones generales del
servidor SQL, como la autenticación, opciones de base de datos, memoria, y más.

32 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

11. Ventana de Inicio de Sesión

 Ubicación: Aparece al iniciar SSMS o al conectarse a un nuevo servidor.


 Descripción: Permite al usuario iniciar sesión en un servidor SQL Server,
especificando el nombre del servidor, el tipo de autenticación, y las credenciales
necesarias.

33 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Nos muestra la instancia a la


que el motor SQL se
encuentra conectado.

En el contexto de SQL
Server, una instancia se
refiere a una instalación
particular de SQL Server que
se ejecuta en un sistema.
Cada instancia actúa como
un servidor de bases de
datos separado, con su
propia configuración, bases
de datos, y servicios
asociados. Es posible tener
múltiples instancias de SQL
Server en una sola máquina,
y cada una de ellas puede
ser configurada y
Podemos abrir la ventana de “Solution Explorer”: administrada de manera
independiente.

34 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Nos muestra las soluciones


que vamos a estar
gestionando.

En el contexto de SQL Server


Management Studio (SSMS),
una solución es un
contenedor lógico que agrupa
uno o más proyectos
relacionados.

Hacemos clic en “New Query” para abrir la ventana donde podamos escrirbir los
scripts y ver los resultados. Tambien podemos usar “CTRL N”

Query (Consulta)
Un query o consulta es una instrucción escrita en un lenguaje de consulta, como
SQL (Structured Query Language), que se utiliza para interactuar con una base de
datos. Las consultas permiten recuperar, insertar, actualizar o eliminar datos
almacenados en una base de datos. El objetivo de una consulta es extraer la
información específica que necesitas o realizar una operación en la base de datos.

Script
Un script es un conjunto de una o más consultas SQL organizadas en un archivo
que se ejecutan de manera secuencial. Un script SQL puede contener una serie
de comandos que van desde la creación de tablas, la inserción de datos, hasta la
ejecución de procedimientos almacenados, entre otros

35 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Crear un nuevo proyecto


En la ventana “Solution Explorer” guardamos una solución, en la cual vamos a
crear un proyecto.

36 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Ahora para poder crear un proyecto en nuestra solución hacemos lo sguiente:

37 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Cuando trabajas en una solución en SQL Server Management Studio (SSMS), puedes crear
diferentes tipos de proyectos dependiendo del tipo de trabajo que vas a realizar. Los dos
tipos de proyectos que mencionas, SQL Server Scripts y Analysis Services Scripts, están
diseñados para manejar diferentes aspectos del ecosistema de SQL Server. A continuación,
te explico las diferencias entre ellos:

1. SQL Server Scripts:

 Propósito: Este tipo de proyecto está diseñado para contener y gestionar scripts
SQL relacionados con la administración y desarrollo de bases de datos en SQL
Server.
 Contenido: Un proyecto de SQL Server Scripts puede incluir consultas SQL
(SELECT, INSERT, UPDATE, DELETE), scripts de creación y modificación de tablas,
vistas, procedimientos almacenados, funciones, triggers, y scripts de administración
como copias de seguridad, restauración, y mantenimiento de índices.
 Uso Típico:
o Desarrollar y probar consultas SQL.
o Crear y modificar objetos de base de datos (tablas, vistas, etc.).
o Automatizar tareas administrativas en la base de datos.
o Migraciones de bases de datos.
 Herramientas: SSMS proporciona una interfaz robusta para escribir, probar y
depurar scripts SQL, además de integrarse con herramientas de gestión de versiones
y despliegue.

2. Analysis Services Scripts:

 Propósito: Este tipo de proyecto está destinado al desarrollo y administración de


soluciones de análisis de datos utilizando SQL Server Analysis Services (SSAS).
SSAS se utiliza para crear y gestionar modelos de análisis de datos, como cubos
OLAP (Online Analytical Processing) y modelos tabulares.
 Contenido: Un proyecto de Analysis Services Scripts puede incluir scripts MDX
(Multidimensional Expressions), scripts DAX (Data Analysis Expressions), XMLA
(XML for Analysis Services) y otros scripts relacionados con el modelado de datos
y la administración de bases de datos analíticas.
 Uso Típico:
o Creación y gestión de cubos OLAP y modelos tabulares.
o Desarrollo de cálculos, medidas, y KPIs (Key Performance Indicators)
utilizando MDX y DAX.
o Despliegue y procesamiento de bases de datos de Analysis Services.
o Automatización de tareas de administración y actualización de modelos
analíticos.
 Herramientas: SSMS y SQL Server Data Tools (SSDT) proporcionan un entorno
para desarrollar y gestionar proyectos de Analysis Services, incluyendo soporte para
la creación de scripts complejos y la administración de despliegues.

38 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Diferencias Clave:

 Foco del Proyecto:


o Los SQL Server Scripts se centran en la administración de bases de datos
relacionales y la manipulación de datos mediante SQL.
o Los Analysis Services Scripts están enfocados en la creación y gestión de
modelos de análisis de datos (cubos OLAP y modelos tabulares) y el uso de
lenguajes de consulta específicos como MDX y DAX.
 Tipo de Scripts:
o En SQL Server Scripts, los scripts son principalmente en SQL y están
relacionados con la manipulación de datos transaccionales.
o En Analysis Services Scripts, los scripts están relacionados con el análisis
de datos multidimensionales o tabulares y utilizan lenguajes específicos para
análisis como MDX y DAX.
 Aplicación Práctica:
o SQL Server Scripts es ideal para quienes trabajan con bases de datos
transaccionales, desarrollo de aplicaciones, o tareas administrativas de bases
de datos SQL Server.
o Analysis Services Scripts es adecuado para profesionales de inteligencia de
negocios (BI) y analistas de datos que trabajan con análisis
multidimensionales o tabulares, y requieren construir y gestionar modelos
complejos de análisis de datos.

En el contexto de SQL Server


Management Studio (SSMS)
y otros entornos de
desarrollo, un proyecto es un
contenedor lógico que agrupa
un conjunto de archivos y
recursos relacionados que se
necesitan para llevar a cabo
un objetivo específico de
desarrollo o administración.
El concepto de proyecto se
utiliza para organizar,
gestionar y desarrollar
diferentes elementos de
manera estructurada y
coherente.

39 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Podemos mover el script “Ejemplo01.sql” dentro de “Queries” o bien crear uno


nuevo.

40 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Ejemplo de consulta
SELECT ‘HOLA’

Para ejecutar el código


precionamos F5 o en la barra
precionamos el boton
Execute.

CTRL D

CTRL T

El comando SELECT en SQL es una de las instrucciones más fundamentales y


utilizadas. Se emplea para recuperar datos de una o más tablas de una base de
datos. La instrucción SELECT te permite especificar qué columnas deseas ver,
aplicar filtros para limitar los datos que se devuelven, ordenar los resultados, y
realizar cálculos sobre los datos.

41 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Atajos CTRL L, D y R.

Los atajos de teclado CTRL+T, CTRL+D, y CTRL+R en SQL Server Management


Studio (SSMS) son útiles para mejorar la eficiencia y la experiencia de trabajo con
consultas SQL. Aquí te explico qué hace cada uno:

1. CTRL+T:

 Función: Cambiar el modo de presentación de los resultados a "Resultados en


Texto".
 Descripción: Cuando usas CTRL+T, el resultado de tu consulta se mostrará en
formato de texto plano en la parte inferior del panel de consultas. Este modo es útil
cuando prefieres ver los datos en un formato más simple y menos estructurado, o
cuando estás trabajando con resultados que tienen mucho texto.

2. CTRL+D:

 Función: Cambiar el modo de presentación de los resultados a "Resultados en


Cuadrícula".
 Descripción: Al presionar CTRL+D, los resultados de la consulta se mostrarán en
formato de tabla o cuadrícula. Este es el modo predeterminado y es ideal para ver
resultados tabulares, ya que organiza los datos en filas y columnas, lo que facilita la
lectura y análisis de los datos.

3. CTRL+R:

 Función: Mostrar u ocultar el panel de Resultados/Propiedades.


 Descripción: CTRL+R alterna la visibilidad del panel de resultados o propiedades
que aparece debajo del panel de consultas. Este atajo es útil para maximizar el
espacio de la pantalla cuando estás escribiendo o editando consultas y no necesitas
ver los resultados o propiedades en ese momento.

Resumen de Uso:

 CTRL+T: Muestra los resultados de la consulta en formato de texto.


 CTRL+D: Muestra los resultados de la consulta en formato de cuadrícula/tabular.
 CTRL+R: Muestra u oculta el panel de resultados o propiedades.

42 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Cerrar la ventana de SCRIPT

43 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Cerrar la solución:

44 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

45 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Abrir una solución

46 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Volvemos a ingresar la contraseña para volver a establecer la conexión.

47 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Comentar Lineas

Ejecutamos este códgo


para ver que se ejecuta
cada una de las lineas.
Para despues comentar y
ver que las lineas
comentadas no se
ejecutan.

Para ejecutar todo el Script


es importante no tener texto
seleccionado. Ya que cuando
tenemos texto seleccionado
le estamos indicando que
solo ese texto queremos
ejecutar.

Al ejecutar el Script anterior nos muestra el siguente resultado:

48 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Conceptos Básicos de Bases de Datos


Relacionales
Definición de Base de Datos Relacional
Una base de datos relacional es un tipo de base de datos que organiza la información en
una estructura tabular, donde los datos se almacenan en tablas compuestas por filas y
columnas. Cada tabla representa una entidad o concepto específico, como "Clientes",
"Productos" o "Pedidos". Las relaciones entre las diferentes tablas se establecen mediante
claves (primarias y foráneas), lo que permite vincular los datos de una manera lógica y
eficiente.

Características clave de las bases de datos relacionales:

 Estructura Tabular: Los datos se organizan en tablas, que son matrices


bidimensionales de filas y columnas.

 Integridad de Datos: Las bases de datos relacionales aseguran la integridad y


consistencia de los datos mediante restricciones, como las claves primarias y
foráneas.

 Relaciones entre Datos: Las tablas pueden estar relacionadas entre sí mediante
claves, lo que permite combinar datos de múltiples tablas en una consulta.

 Uso de SQL: El lenguaje SQL (Structured Query Language) es utilizado para


gestionar y consultar los datos almacenados en la base de datos.

49 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Componentes de una Base de Datos Relacional


Tablas

Las tablas son el componente central de una base de datos relacional. Una tabla es una
colección de datos organizados en filas (registros) y columnas (campos). Cada tabla
almacena datos relacionados con una entidad específica.

 Columnas (Campos): Representan los atributos de la entidad. Por ejemplo, en una


tabla de "Clientes", las columnas podrían ser "ID de Cliente", "Nombre", "Correo
Electrónico", y "Teléfono".

 Filas (Registros): Cada fila representa una instancia de la entidad, es decir, un


registro específico. Siguiendo el ejemplo anterior, una fila de la tabla "Clientes"
contendría la información de un cliente en particular.

Registros

Un registro es una fila en una tabla, que contiene todos los datos correspondientes a una
instancia de la entidad representada por la tabla. En una base de datos de clientes, un
registro podría incluir el nombre de un cliente, su dirección, número de teléfono, y otros
detalles.

Campos

Los campos son las columnas de una tabla, y cada campo almacena un tipo específico de
dato. Cada campo en una tabla tiene un nombre y un tipo de dato asociado, como texto,
números, fechas, etc. Por ejemplo, en una tabla de productos, un campo podría ser "Precio",
que almacenaría datos numéricos.

50 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Claves Primarias y Foráneas


Clave Primaria

La clave primaria (Primary Key) es un campo o conjunto de campos en una tabla que
identifica de manera única cada registro en esa tabla. La clave primaria debe cumplir con
las siguientes características:

 Única: No puede haber dos registros con el mismo valor de clave primaria.

 No Nula: No se permite que un valor de clave primaria sea nulo.

Ejemplo: En una tabla de "Clientes", el campo "ID de Cliente" podría ser la clave primaria,
ya que cada cliente tendría un ID único.

Clave Foránea

La clave foránea (Foreign Key) es un campo o conjunto de campos en una tabla que se
utiliza para establecer y reforzar un vínculo entre los datos de dos tablas. Una clave foránea
en una tabla apunta a la clave primaria en otra tabla, creando así una relación entre las dos
tablas.

Ejemplo: En una tabla de "Pedidos", el campo "ID de Cliente" podría ser una clave foránea
que referencia la clave primaria "ID de Cliente" en la tabla "Clientes". Esto permite
vincular cada pedido con el cliente que lo realizó.

Relaciones en Bases de Datos Relacionales:

 Uno a Uno: Cada registro en la primera tabla está relacionado con un solo registro
en la segunda tabla.

 Uno a Muchos: Un registro en la primera tabla puede estar relacionado con


múltiples registros en la segunda tabla.

 Muchos a Muchos: Múltiples registros en la primera tabla pueden estar


relacionados con múltiples registros en la segunda tabla, generalmente
implementado a través de una tabla intermedia.

51 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Normalización y Diseño Básico de Bases de Datos


Normalización

La normalización es un proceso de diseño de bases de datos cuyo objetivo es reducir la


redundancia de datos y mejorar la integridad de los mismos. Consiste en organizar los datos
en tablas de tal manera que las dependencias entre datos se mantengan claras y se
minimicen las anomalías en las operaciones de inserción, actualización y eliminación.

Formas normales:

 Primera Forma Normal (1NF): Cada campo de una tabla debe contener solo un
valor indivisible, y cada registro debe ser único.

 Segunda Forma Normal (2NF): La tabla debe estar en 1NF y todos los campos no
clave deben depender completamente de la clave primaria.

 Tercera Forma Normal (3NF): La tabla debe estar en 2NF y no debe haber
dependencias transitivas (es decir, los campos no clave no deben depender de otros
campos no clave).

Diseño Básico de Bases de Datos

El diseño de bases de datos es el proceso de crear un modelo detallado de una base de


datos que refleje la estructura y las relaciones entre los datos que necesita almacenar una
organización. Un buen diseño es crucial para el rendimiento, la escalabilidad y la integridad
de la base de datos.

Pasos básicos en el diseño:

1. Definición de Entidades: Identificar las principales entidades que se gestionarán


(por ejemplo, Clientes, Productos, Pedidos).

2. Definición de Atributos: Determinar qué atributos (campos) describen cada


entidad.

3. Identificación de Claves Primarias: Seleccionar una clave primaria para cada


tabla que identifique de manera única a cada registro.

4. Establecimiento de Relaciones: Definir cómo las diferentes entidades están


relacionadas entre sí, utilizando claves foráneas.

5. Normalización: Aplicar las reglas de normalización para evitar redundancias y


mejorar la integridad de los datos.

52 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Introducción a SQL Server Management Studio


(SSMS)
¿Qué es SQL Server Management Studio (SSMS)?

SQL Server Management Studio (SSMS) es una herramienta gráfica integral desarrollada
por Microsoft para gestionar instancias de SQL Server, tanto locales como remotas. SSMS
proporciona una interfaz de usuario unificada para realizar diversas tareas administrativas,
como la creación de bases de datos, la ejecución de consultas, la gestión de seguridad, y la
configuración de servidores.

Características clave de SSMS:

 Interfaz Gráfica Intuitiva: SSMS ofrece una interfaz de usuario amigable que
facilita la gestión de las bases de datos sin necesidad de recordar comandos
complejos.

 Query Editor: Incluye un potente editor de consultas con soporte para T-SQL, que
permite ejecutar, depurar y optimizar consultas.

 Explorador de Objetos: Proporciona una vista jerárquica de todas las bases de


datos, tablas, vistas, procedimientos almacenados, y otros objetos de SQL Server.

 Asistentes de Configuración: SSMS incluye una serie de asistentes que guían al


usuario a través de tareas comunes, como la creación de bases de datos, la
configuración de seguridad, y la creación de backups.

Beneficios de Usar SSMS:

 Facilidad de uso: Reduce la complejidad asociada con la administración de SQL


Server, permitiendo tanto a principiantes como a expertos gestionar bases de datos
de manera eficiente.

 Productividad: Aumenta la productividad al permitir a los administradores y


desarrolladores realizar múltiples tareas desde una única herramienta.

 Análisis y Monitoreo: Ofrece herramientas integradas para analizar el rendimiento


de las consultas y monitorear la actividad del servidor.

53 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Conexión al Servidor y Gestión de Bases de Datos


Conexión a una Instancia de SQL Server

Una de las primeras tareas al usar SSMS es conectarse a una instancia de SQL Server. Este
proceso es crucial para poder realizar cualquier operación en la base de datos.

Pasos para Conectarse a un Servidor SQL:

1. Iniciar SSMS: Abrir SQL Server Management Studio desde el menú de inicio o el
acceso directo.

2. Conexión al Servidor: En la ventana de "Conectar al Servidor", seleccionar el tipo


de servidor (por ejemplo, Motor de Base de Datos) y especificar el nombre del
servidor. También es posible conectarse a instancias locales, remotas o basadas en
la nube.

3. Autenticación: Elegir el tipo de autenticación (Autenticación de Windows o


Autenticación de SQL Server) e ingresar las credenciales correspondientes.

4. Conexión Exitosa: Una vez conectado, SSMS muestra el servidor en el Explorador


de Objetos, permitiendo al usuario navegar por las bases de datos y otros objetos.

Gestión de Bases de Datos

Una vez conectado al servidor, SSMS proporciona diversas herramientas y funcionalidades


para gestionar bases de datos. Estas incluyen la creación, modificación y eliminación de
bases de datos, así como la gestión de sus componentes.

Tareas Comunes en la Gestión de Bases de Datos:

 Creación de una Nueva Base de Datos:

o Desde el Explorador de Objetos, hacer clic derecho en la carpeta "Bases de


Datos" y seleccionar "Nueva Base de Datos".

o Especificar el nombre de la base de datos y configurar las opciones como el


tamaño inicial y el crecimiento automático de los archivos de datos y de
registro.

o Finalizar la creación de la base de datos con las configuraciones deseadas.

54 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

 Modificación de una Base de Datos:

o Seleccionar la base de datos en el Explorador de Objetos, hacer clic derecho


y elegir "Propiedades".

o Ajustar configuraciones como el modelo de recuperación, la ubicación de


los archivos, y las opciones de collation.

 Eliminación de una Base de Datos:

o Hacer clic derecho en la base de datos que se desea eliminar y seleccionar


"Eliminar".

o Confirmar la eliminación asegurándose de que la base de datos ya no sea


necesaria o que se haya realizado un backup.

Gestión de Seguridad

SSMS permite gestionar la seguridad de las bases de datos mediante la creación y


administración de inicios de sesión, usuarios, roles, y permisos.

Gestión de Inicios de Sesión y Usuarios:

 Creación de un Nuevo Inicio de Sesión:


o En el Explorador de Objetos, expandir la carpeta "Seguridad" y hacer clic
derecho en "Inicios de Sesión" para crear un nuevo inicio de sesión.
o Especificar un nombre de usuario y elegir el método de autenticación.
o Configurar permisos y roles asociados a ese inicio de sesión.
 Asignación de Roles y Permisos:
o Los roles predefinidos como db_owner, db_datareader, y db_datawriter
pueden ser asignados a usuarios para otorgarles diferentes niveles de acceso
y control sobre la base de datos.
o Es posible crear roles personalizados para necesidades específicas de
seguridad.

55 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Exploración de las Herramientas Disponibles en SSMS


SQL Server Management Studio (SSMS) incluye un conjunto de herramientas y
funcionalidades que facilitan la administración y optimización de bases de datos. Algunas
de las herramientas más destacadas son:

Editor de Consultas (Query Editor)

El Editor de Consultas es una herramienta central en SSMS que permite a los usuarios
escribir, ejecutar y depurar consultas T-SQL. Ofrece características como:

 Coloreado de Sintaxis: Resalta diferentes partes del código para facilitar la lectura
y escritura de consultas.

 IntelliSense: Proporciona sugerencias de código y autocompletado, lo que ayuda a


evitar errores y aumenta la velocidad de escritura.

 Historial de Consultas: Permite acceder rápidamente a consultas ejecutadas


previamente.

 Análisis de Consultas: Integra herramientas como el Plan de Ejecución, que ayuda


a optimizar consultas al mostrar cómo SQL Server las ejecuta internamente.

Explorador de Objetos

El Explorador de Objetos es una vista jerárquica que muestra todos los servidores
conectados y los objetos dentro de esos servidores, incluyendo bases de datos, tablas,
vistas, procedimientos almacenados, funciones, y más.

 Navegación Fácil: Permite a los usuarios navegar y explorar objetos de la base de


datos de manera intuitiva.

 Operaciones de Administración: Los administradores pueden realizar tareas como


la creación de tablas, la modificación de esquemas, y la administración de índices
directamente desde el Explorador de Objetos.

56 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Administrador de Actividad (Activity Monitor)

El Administrador de Actividad permite monitorear el rendimiento del servidor SQL en


tiempo real. Muestra información sobre el uso de la CPU, la memoria, el disco, y otras
métricas clave.

 Identificación de Cuellos de Botella: Permite a los administradores identificar


rápidamente problemas de rendimiento y tomar medidas correctivas.

 Monitoreo de Procesos: Muestra una lista de procesos activos, permitiendo a los


administradores ver qué consultas están utilizando más recursos.

Herramientas de Backup y Restauración

SSMS incluye asistentes para realizar backups y restauraciones de bases de datos de


manera sencilla.

 Backup de Bases de Datos: Facilita la creación de copias de seguridad completas,


diferenciales y de registros de transacciones.

 Restauración de Bases de Datos: Permite restaurar bases de datos desde backups


existentes, ya sea en la misma instancia o en una diferente.

Asistentes de Configuración

SSMS incluye una variedad de asistentes que guían al usuario a través de tareas complejas,
como la configuración de replicación, la configuración de la seguridad del servidor, y la
creación de trabajos automatizados con SQL Server Agent.

57 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Creación y Gestión de Bases de Datos (Ejemplo de


uns Institución Educativa)
Creación de Bases de Datos y Tablas
Creación de Bases de Datos

En una institución educativa, una base de datos puede utilizarse para gestionar información
sobre estudiantes, cursos, profesores, inscripciones, entre otros. SQL Server permite crear
bases de datos de manera sencilla utilizando SQL Server Management Studio (SSMS) o
mediante comandos T-SQL.

Pasos para crear una base de datos utilizando SSMS:

1. Abrir SQL Server Management Studio (SSMS): Conectar al servidor de SQL


Server.

2. Navegar al Explorador de Objetos: Hacer clic derecho en "Bases de Datos" y


seleccionar "Nueva Base de Datos".

3. Configurar la Base de Datos:

o Nombre de la base de datos: Especificar un nombre, por ejemplo,


InstitucionEducativaDB.

o Archivos de la base de datos: Configurar las ubicaciones y tamaños


iniciales de los archivos de datos y de log.

4. Finalizar: Hacer clic en "Aceptar" para crear la base de datos.

Creación de la base de datos mediante T-SQL:

CREATE DATABASE InstitucionEducativaDB;


GO

58 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Creación de una nueva Base de Datos:

59 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Creación de Tablas

Una vez creada la base de datos, es necesario crear tablas que almacenen la información
específica de la institución. Por ejemplo, se podrían crear tablas para estudiantes, cursos y
profesores.

Ejemplo de creación de tablas:

Tabla Estudiantes:

USE InstitucionEducativaDB;
GO

CREATE TABLE Estudiantes (


EstudianteID INT PRIMARY KEY,
Nombre NVARCHAR(50) NOT NULL,
Apellido NVARCHAR(50) NOT NULL,
FechaNacimiento DATE,
CorreoElectronico NVARCHAR(100),
Telefono NVARCHAR(15),
Direccion NVARCHAR(255)
);
GO

Tabla Cursos:

CREATE TABLE Cursos (


CursoID INT PRIMARY KEY,
NombreCurso NVARCHAR(100) NOT NULL,
Descripcion NVARCHAR(255),
Creditos INT NOT NULL
);
GO

Tabla Profesores:

CREATE TABLE Profesores (


ProfesorID INT PRIMARY KEY,
Nombre NVARCHAR(50) NOT NULL,
Apellido NVARCHAR(50) NOT NULL,
Especialidad NVARCHAR(100),
CorreoElectronico NVARCHAR(100)
);
GO

Creamos una nueva consulta con el código anterior:

60 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

61 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Actualizamos el “Object Explorer”

Relaciones entre Tablas

Para gestionar las inscripciones de los estudiantes en los cursos, se puede crear una tabla
Inscripciones que relacione estudiantes y cursos mediante claves foráneas.

Tabla Inscripciones:

CREATE TABLE Inscripciones (


InscripcionID INT PRIMARY KEY,
EstudianteID INT,
CursoID INT,
FechaInscripcion DATE NOT NULL,
FOREIGN KEY (EstudianteID) REFERENCES Estudiantes(EstudianteID),
FOREIGN KEY (CursoID) REFERENCES Cursos(CursoID)
);
GO

El código anterior lo agregamos al Script que ya estamos trabajando, pero


es importante que solo ejecutemos ese código por lo que temos que
seleccionarlo y ejecutarlo.

62 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Si actualizamos el “Object Explorer” podemos comprobar si la tabla se ha creado.

63 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Tipos de Datos en SQL Server


Al crear tablas en SQL Server, es crucial seleccionar los tipos de datos adecuados para las
columnas. SQL Server soporta varios tipos de datos, cada uno diseñado para almacenar
diferentes tipos de información.

Tipos de Datos Comunes

Tipos de Datos Numéricos:

 INT: Enteros de tamaño estándar.

 FLOAT: Números en punto flotante para datos que requieren mayor precisión
decimal.

 DECIMAL: Números decimales con precisión fija, útil para manejar montos
financieros.

Ejemplo en contexto educativo:

 Creditos en la tabla Cursos podría ser un campo INT.

Tipos de Datos de Texto:

 NVARCHAR(n): Cadena de texto variable de longitud n, que soporta Unicode.

 VARCHAR(n): Similar a NVARCHAR, pero sin soporte para Unicode, ocupa


menos espacio.

Ejemplo en contexto educativo:

 NombreCurso en la tabla Cursos podría ser un campo NVARCHAR(100).

Tipos de Datos de Fecha y Hora:

 DATE: Almacena solo la fecha.

 DATETIME: Almacena la fecha y la hora.

Ejemplo en contexto educativo:

 FechaNacimiento en la tabla Estudiantes podría ser un campo DATE.

64 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Tipos de Datos Booleanos:

 BIT: Almacena valores 0 o 1, que representan false y true, respectivamente.

Ejemplo en contexto educativo:

 Se podría usar un campo BIT para marcar si un curso es obligatorio o no en la tabla


Cursos.

65 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Modificación y Eliminación de Tablas


Modificación de Tablas

A medida que las necesidades de la institución educativa cambian, es posible que se


necesite modificar las tablas existentes. Esto puede incluir agregar nuevas columnas,
modificar el tipo de datos de una columna existente, o incluso renombrar columnas.

Ejemplo: Agregar una columna a la tabla Estudiantes:

ALTER TABLE Estudiantes


ADD Genero NVARCHAR(10);
GO

Veamos la estructura de la tabla Estuciantes:

66 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Ahora con el código de ejemplo agregamos una nueva columna:

67 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Ejemplo: Modificar el tipo de datos de una columna:

ALTER TABLE Estudiantes


ALTER COLUMN Telefono NVARCHAR(20);
GO

Ejecutamos el código anterior:

Aquí podemos comprobar que la modificaicón se hizo correctamente.

68 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Ejemplo: Renombrar una columna en la tabla Estudiantes:

EXEC sp_rename 'Estudiantes.Nombre', 'PrimerNombre', 'COLUMN';


GO

Ejecutamos el código antgeior:

69 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Eliminación de Tablas

Si una tabla ya no es necesaria, puede eliminarse para mantener la base de datos limpia y
organizada. Es importante asegurarse de que los datos en la tabla ya no sean requeridos o se
hayan respaldado antes de realizar esta operación.

Ejemplo de eliminación de la tabla Inscripciones:

DROP TABLE Inscripciones;


GO

Veamos de nuevo las tables de nuestra base de datos:

Ejecutamos el código:

Volvemos a verificar las tablas de nuestra base de datos:

Podemos observar que la tabla Inscripciones se ha borrado correctamente.

70 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Crear un nuevo proyecto y vincular el Script que y habíamos hecho.

71 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Abrimos el Query que ya habiamos creado y guardado y lo arrastramos dentro de


las Queries del proyecto (como se ve en la imagen)

72 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Script SQLQuery01InstitucionEducativa.sql

--Ejemplo de creación de tablas:


--Tabla Estudiantes:
USE InstituciónEducativaDB;
GO

CREATE TABLE Estudiantes (


EstudianteID INT PRIMARY KEY,
Nombre NVARCHAR(50) NOT NULL,
Apellido NVARCHAR(50) NOT NULL,
FechaNacimiento DATE,
CorreoElectronico NVARCHAR(100),
Telefono NVARCHAR(15),
Direccion NVARCHAR(255)
);
GO

--Tabla Cursos:
CREATE TABLE Cursos (
CursoID INT PRIMARY KEY,
NombreCurso NVARCHAR(100) NOT NULL,
Descripcion NVARCHAR(255),
Creditos INT NOT NULL
);
GO

--Tabla Profesores:
CREATE TABLE Profesores (
ProfesorID INT PRIMARY KEY,
Nombre NVARCHAR(50) NOT NULL,
Apellido NVARCHAR(50) NOT NULL,
Especialidad NVARCHAR(100),
CorreoElectronico NVARCHAR(100)
);
GO

CREATE TABLE Inscripciones (


InscripcionID INT PRIMARY KEY,
EstudianteID INT,
CursoID INT,
FechaInscripcion DATE NOT NULL,
FOREIGN KEY (EstudianteID) REFERENCES Estudiantes(EstudianteID),
FOREIGN KEY (CursoID) REFERENCES Cursos(CursoID)
);
GO

ALTER TABLE Estudiantes


ADD Genero NVARCHAR(10);
GO

ALTER TABLE Estudiantes


ALTER COLUMN Telefono NVARCHAR(20);
GO

EXEC sp_rename 'Estudiantes.Nombre', 'PrimerNombre', 'COLUMN';


GO

DROP TABLE Inscripciones;


GO

73 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Atajos más utilizados

74 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Introducción a T-SQL
Qué es T-SQL
T-SQL (Transact-SQL) es una extensión del lenguaje SQL (Structured Query Language)
desarrollada por Microsoft y Sybase para su uso en sistemas de gestión de bases de datos
como SQL Server. Además de las capacidades estándar de SQL, como la manipulación de
datos y la definición de estructuras de base de datos, T-SQL incluye características
adicionales que permiten realizar operaciones más complejas, como la gestión de
transacciones, el control de flujo, y la definición de variables.

Características clave de T-SQL:

 Ampliación de SQL estándar: T-SQL extiende SQL con características


adicionales como declaraciones condicionales ( IF...ELSE), bucles (WHILE), manejo
de errores (TRY...CATCH), y la posibilidad de definir procedimientos almacenados y
funciones.

 Optimización del rendimiento: Permite a los desarrolladores escribir código más


eficiente y optimizado para operaciones de base de datos.

 Integración con SQL Server: T-SQL está completamente integrado en el entorno


de SQL Server, lo que lo convierte en una herramienta poderosa para gestionar y
manipular bases de datos.

Sintaxis Básica de T-SQL


Estructura General de un Comando T-SQL

La sintaxis básica de T-SQL sigue un formato estructurado que incluye:

1. Declaración de la sentencia: Indica la operación que se desea realizar (SELECT,


INSERT, UPDATE, DELETE).

2. Definición de los elementos: Especifica los elementos sobre los cuales se actuará,
como tablas, columnas, y valores.

3. Condiciones (Opcional): Condiciones o filtros para limitar el alcance de la


operación.

75 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Ejemplo básico de sintaxis T-SQL:

SELECT Nombre, Apellido


FROM Estudiantes
WHERE FechaNacimiento > '2000-01-01';

En este ejemplo, se seleccionan los nombres y apellidos de los estudiantes nacidos después
del 1 de enero de 2000.

Sentencias SELECT, INSERT, UPDATE, DELETE


Sentencia SELECT

La sentencia SELECT se utiliza para consultar datos de una o más tablas. Es la más utilizada
en T-SQL y permite seleccionar columnas específicas, filtrar resultados y ordenar los datos.

Ejemplo: Consultar datos de la tabla Estudiantes:

SELECT EstudianteID, Nombre, Apellido, CorreoElectronico


FROM Estudiantes
WHERE FechaNacimiento BETWEEN '2000-01-01' AND '2005-12-31'
ORDER BY Nombre ASC;

Explicación:

 WHERE filtra los estudiantes nacidos entre 2000 y 2005.


 ORDER BY ordena los resultados alfabéticamente por nombre.

Sentencia INSERT

La sentencia INSERT se utiliza para agregar nuevos registros a una tabla.

Ejemplo: Insertar un nuevo estudiante en la tabla Estudiantes:

INSERT INTO Estudiantes (EstudianteID, Nombre, Apellido, FechaNacimiento,


CorreoElectronico)
VALUES (101, 'Juan', 'Pérez', '2002-06-15',
'juan.perez@institucion.edu');

Explicación:

 Los valores se insertan en las columnas especificadas de la tabla Estudiantes.

76 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Sentencia UPDATE

La sentencia UPDATE se utiliza para modificar los datos existentes en una tabla.

Ejemplo: Actualizar el correo electrónico de un estudiante:

UPDATE Estudiantes
SET CorreoElectronico = 'juan.perez.actualizado@institucion.edu'
WHERE EstudianteID = 101;

Explicación:

 Se actualiza el correo electrónico del estudiante con EstudianteID igual a 101.

Sentencia DELETE

La sentencia DELETE se utiliza para eliminar registros de una tabla.

Ejemplo: Eliminar un estudiante de la tabla Estudiantes:

DELETE FROM Estudiantes


WHERE EstudianteID = 101;

Explicación:

 Se elimina el registro del estudiante con EstudianteID igual a 101.

77 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Filtrado y Ordenación de Datos


Filtrado de Datos con la Clausula WHERE

El filtrado de datos se realiza utilizando la cláusula WHERE, que permite especificar


condiciones para limitar los resultados de una consulta.

Ejemplo: Filtrar estudiantes por curso específico:

SELECT E.Nombre, E.Apellido, C.NombreCurso


FROM Estudiantes E
INNER JOIN Inscripciones I ON E.EstudianteID = I.EstudianteID
INNER JOIN Cursos C ON I.CursoID = C.CursoID
WHERE C.NombreCurso = 'Matemáticas';

Explicación:

 Se seleccionan los nombres y apellidos de los estudiantes inscritos en el curso de


"Matemáticas".

Desglose y Explicación:

1. SELECT E.Nombre, E.Apellido, C.NombreCurso


o SELECT: Esta cláusula se utiliza para especificar las columnas que se desean
recuperar de las tablas involucradas en la consulta.
o E.Nombre, E.Apellido, C.NombreCurso : Aquí se indica que queremos
recuperar el Nombre y Apellido de los estudiantes y el NombreCurso del
curso.
 E.Nombre y E.Apellido: Estos campos provienen de la tabla
Estudiantes, alias E.
 C.NombreCurso: Este campo proviene de la tabla Cursos, alias C.
2. FROM Estudiantes E
o FROM: Esta cláusula indica la tabla principal desde la cual se obtendrán los
datos.
o Estudiantes E: Aquí se especifica la tabla Estudiantes y se asigna el
alias E para referirse a ella de manera más concisa en la consulta.
3. INNER JOIN Inscripciones I ON E.EstudianteID = I.EstudianteID
o INNER JOIN: Es un tipo de JOIN que se utiliza para combinar filas de dos o
más tablas basadas en una condición relacionada. Solo se devuelven las filas
que tienen coincidencias en ambas tablas.
o Inscripciones I: Especifica la tabla Inscripciones y le asigna el alias I.
o ON E.EstudianteID = I.EstudianteID: Define la condición de la unión
entre las tablas Estudiantes y Inscripciones. La condición establece que
el campo EstudianteID en la tabla Estudiantes debe coincidir con el
campo EstudianteID en la tabla Inscripciones. Esto permite combinar
las filas de ambas tablas basándose en este identificador común.

78 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

4. INNER JOIN Cursos C ON I.CursoID = C.CursoID


o INNER JOIN Cursos C: Añade otra tabla a la unión, en este caso la tabla
Cursos, con el alias C.
o ON I.CursoID = C.CursoID: Define la condición de la unión entre las
tablas Inscripciones y Cursos. La condición establece que el campo
CursoID en la tabla Inscripciones debe coincidir con el campo CursoID
en la tabla Cursos. Esto permite relacionar las inscripciones de los
estudiantes con los cursos específicos.
5. WHERE C.NombreCurso = 'Matemáticas'
o WHERE: Esta cláusula se utiliza para filtrar los resultados de la consulta,
devolviendo solo las filas que cumplen con la condición especificada.
o C.NombreCurso = 'Matemáticas' : Aquí, la condición indica que solo se
deben devolver las filas en las que el NombreCurso de la tabla Cursos sea
igual a 'Matemáticas'. Es decir, la consulta selecciona solo los estudiantes
que están inscritos en el curso de 'Matemáticas'.

Resumen del Comportamiento de la Consulta:

 Primero, la consulta comienza seleccionando la tabla Estudiantes como tabla


principal.
 Luego, realiza una combinación interna (INNER JOIN) con la tabla Inscripciones
usando el campo EstudianteID para conectar las dos tablas. Esto asocia cada
estudiante con sus respectivas inscripciones.
 Después, se realiza otra combinación interna (INNER JOIN) con la tabla Cursos
utilizando el campo CursoID, para identificar el curso específico en el que cada
estudiante está inscrito.
 Finalmente, la consulta filtra los resultados para devolver solo los estudiantes que
están inscritos en el curso 'Matemáticas'.

79 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Ordenación de Datos con la Clausula ORDER BY

La ordenación de datos se realiza con la cláusula ORDER BY, que permite ordenar los
resultados de una consulta según una o más columnas.

Ejemplo: Ordenar estudiantes por apellido en orden descendente:

SELECT Nombre, Apellido, FechaNacimiento


FROM Estudiantes
ORDER BY Apellido DESC;

Explicación:

 Los estudiantes se listan ordenados por apellido de forma descendente.

Uso de Operadores de Comparación y Lógicos

T-SQL soporta una amplia gama de operadores para comparar y combinar condiciones en
consultas.

Ejemplo: Uso de operadores para filtrar estudiantes:

SELECT Nombre, Apellido


FROM Estudiantes
WHERE FechaNacimiento < '2000-01-01'
AND Genero = 'F';

Explicación:

 Se seleccionan las estudiantes femeninas nacidas antes del 1 de enero de 2000.

Ejemplo: Uso del operador LIKE para buscar patrones:

SELECT Nombre, Apellido


FROM Estudiantes
WHERE Nombre LIKE 'J%';

Explicación:

 Se seleccionan los estudiantes cuyos nombres empiezan con la letra 'J'.

80 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Diseño de una Base de Datos con SSMS

Creación de la Base de Datos (miEscuelaDB)


Iniciamos nuestro Microsoft SQL Server Management Studio:

Realizamos la conexión con nuestro Motor SQL Server.

81 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Recordemos que si nos sale este error:

82 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Colocamos: TrustServerCertificate=True;

O podemos regresar a Login y dar “Connect” desde ahí:

83 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

84 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Podemos observar ue ya tenemos una base de datos. Es la misma que habíamos


trabajado enteriormente. Pero ahora crearemos otra.

Creamos una nueva base de datos:

85 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Podemos observar que se ha creado una nueva base de datos

86 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Ahora vamos a renombrarla, suponiendo que nos equivocamos en su nombre:

La renombramos por: miEscuelaDB

87 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Path donde se gardarán los datos de nuestra Base de Datos:

El Path puede modificarse al crear la base de datos para tener un mejor control de
la ubicación y de los datos. Nosotros por el momento los dejaremos en la ruta
especificada por defoult.

Los siguientes son los archivos que se generan:

Archicos .mdf y .ldf

En SQL Server, los archivos .mdf y .ldf son componentes clave de la estructura de
almacenamiento de una base de datos. A continuación, te explico en detalle qué son y cuál
es su función:

Archivos .mdf (Primary Data File)

 Definición: El archivo .mdf (Master Data File) es el archivo de datos primario de


una base de datos en SQL Server. Contiene los datos de la base de datos y las
estructuras de la base de datos como tablas, vistas, procedimientos almacenados,
funciones, índices, y más.

 Propósito:

o Almacenamiento de Datos: Este archivo es el principal repositorio de datos


de la base de datos. Todos los objetos y datos de usuario se almacenan aquí.

o Metadatos de la Base de Datos: Además de los datos del usuario, el


archivo .mdf también contiene metadatos críticos para el funcionamiento de
la base de datos, como la definición de las tablas, índices, y la configuración
de la base de datos.

88 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

 Ubicación y Uso:

o Por defecto, cuando se crea una nueva base de datos en SQL Server, se
genera un archivo .mdf que se almacena en la ubicación predeterminada del
servidor o en la ubicación especificada por el administrador de la base de
datos.

o Una base de datos en SQL Server siempre tiene al menos un archivo .mdf.

Archivos .ldf (Log Data File)

 Definición: El archivo .ldf (Log Data File) es el archivo de registro de


transacciones de una base de datos en SQL Server. Este archivo registra todas las
transacciones y cambios realizados en la base de datos para asegurar la integridad
de los datos y permitir la recuperación en caso de fallos.

 Propósito:

o Registro de Transacciones: El archivo .ldf guarda un registro secuencial


de todas las operaciones de modificación de datos (INSERT, UPDATE,
DELETE) y operaciones DDL (Data Definition Language) como la creación
o eliminación de tablas.

o Recuperación de Base de Datos: En caso de un fallo del sistema, el archivo


de log permite que SQL Server recupere la base de datos hasta un estado
coherente, aplicando o revirtiendo las transacciones que se estaban
ejecutando en el momento del fallo.

o Soporte para Transacciones: Gracias al archivo .ldf, SQL Server puede


soportar transacciones ACID (Atomicity, Consistency, Isolation,
Durability), lo que significa que las transacciones son completamente
seguras y coherentes.

 Ubicación y Uso:

o El archivo .ldf se crea automáticamente cuando se genera una nueva base


de datos, junto con el archivo .mdf.

o SQL Server utiliza el archivo .ldf continuamente para gestionar la


ejecución de transacciones y garantizar la integridad de los datos.

89 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Relación entre .mdf y .ldf:

 Los archivos .mdf y .ldf trabajan juntos para mantener la base de datos en un
estado coherente. Mientras que el archivo .mdf almacena los datos estructurados y
las definiciones de la base de datos, el archivo .ldf se encarga de registrar todos los
cambios para que, en caso de una recuperación de desastres, SQL Server pueda
restaurar la base de datos a su último estado coherente.

 Es común que una base de datos tenga un archivo .mdf y uno o más archivos .ldf.
Además, se pueden añadir archivos de datos secundarios .ndf si se desea distribuir
los datos de la base de datos en diferentes discos para mejorar el rendimiento o la
capacidad.

Crear una nueva Consulta “New Query”


Seleccionamos la base dedatos y precionamos New Query

90 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

En la imagen anterior podemos ver que la base de datos seleccionada es


miEscuelaDB por lo tanto la consulta que realicemos se basará en esa base de
datos.

Veamos que bases de datos podemos visualizar y sus características:

master

Esta es una base de datos de sistema crítica en SQL Server. Contiene toda la
información sobre las configuraciones del servidor SQL, incluyendo las
configuraciones de las bases de datos del usuario, configuraciones de inicio de
sesión, y otros metadatos vitales. Nunca se debe modificar esta base de datos
directamente a menos que sea necesario.

model
Esta es otra base de datos del sistema que SQL Server utiliza como plantilla para
crear nuevas bases de datos. Cada vez que creas una nueva base de datos, SQL
Server copia la estructura de la base de datos model para iniciar la nueva base de
datos.

91 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

msdb
msdb es la base de datos de sistema donde SQL Server almacena datos de
trabajos de agente SQL (SQL Server Agent), planes de mantenimiento, copias de
seguridad y restauraciones, alertas, y operadores.

tempdb
tempdb es una base de datos del sistema que SQL Server utiliza para almacenar
objetos temporales y tablas temporales. Esta base de datos se recrea cada vez
que se reinicia SQL Server, por lo que su contenido es temporal.

Pero bueno, continuemos con la base de datos miEscuelaDB.

Crear una nueva tabla en nuestra base de datos (alumno)

92 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Cuando se crea una tabla en SQL Server Management Studio (SSMS) utilizando la interfaz
gráfica, se habilitan varios campos y opciones que permiten definir la estructura de la tabla
y sus propiedades. A continuación, te describo los campos y opciones principales que se
habilitan durante el proceso de creación de una tabla:

1. Nombre de la Columna
 Descripción: Especifica el nombre de cada columna en la tabla. Este nombre debe
ser único dentro de la tabla y describe el tipo de datos que se almacenará en esa
columna (por ejemplo, Nombre, Apellido, FechaNacimiento, etc.).

 Importancia: El nombre de la columna es crucial para identificar los datos


almacenados en esa columna y se utiliza en las consultas SQL para acceder a esos
datos.

2. Tipo de Datos
 Descripción: Especifica el tipo de datos que se almacenará en la columna. SQL
Server ofrece una amplia gama de tipos de datos, incluyendo:

o INT: Para almacenar números enteros.

o NVARCHAR(n): Para almacenar cadenas de texto de longitud variable con


soporte Unicode.

o VARCHAR(n): Para almacenar cadenas de texto de longitud variable sin


soporte Unicode.

o DATE: Para almacenar fechas.

o DECIMAL(p,s): Para almacenar números decimales con precisión y escala


especificadas.

o BIT: Para almacenar valores booleanos (0 o 1).

 Importancia: Seleccionar el tipo de datos correcto es fundamental para asegurar


que los datos se almacenen de manera eficiente y con la integridad adecuada.

93 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

3. Permitir Nulos (Allow Nulls)


 Descripción: Esta opción indica si la columna puede contener valores nulos ( NULL).
Un valor NULL representa la ausencia de datos o un valor desconocido.

o Marcado: Permite que la columna acepte valores NULL.

o No marcado: La columna no puede aceptar valores NULL, es decir, siempre


debe contener un valor.

 Importancia: Definir si una columna permite nulos es importante para mantener la


integridad de los datos y definir cómo se manejarán los datos incompletos o
faltantes.

4. Clave Primaria (Primary Key)


 Descripción: Esta opción permite especificar si una columna (o un conjunto de
columnas) actuará como la clave primaria de la tabla. La clave primaria es un
identificador único para cada fila en la tabla y no permite valores duplicados ni
nulos.

o Definición automática: Si seleccionas esta opción, SSMS establecerá


automáticamente la columna como la clave primaria.

 Importancia: La clave primaria es esencial para identificar de manera única cada


registro en la tabla y para establecer relaciones con otras tablas.

5. Identidad (Identity Specification)


 Descripción: Esta propiedad permite que una columna sea configurada como una
columna de identidad. SQL Server generará automáticamente un valor único para
esta columna cada vez que se inserte una nueva fila en la tabla.

o Is Identity: Activa la propiedad de identidad para la columna.

o Identity Seed: Especifica el valor inicial de la columna de identidad.

o Identity Increment: Especifica el valor por el cual se incrementará la


columna de identidad para cada nueva fila.

 Importancia: Las columnas de identidad son útiles para generar identificadores


únicos automáticos, como números de serie, sin intervención manual.

6. Longitud (Length)
 Descripción: Para tipos de datos como VARCHAR o NVARCHAR, se debe especificar la
longitud máxima permitida de la cadena de texto. Este valor define cuántos
caracteres puede contener la cadena.

94 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

 Importancia: Establecer la longitud adecuada es importante para optimizar el uso


del espacio y para garantizar que la columna pueda almacenar los datos necesarios
sin desperdiciar espacio.

7. Escala y Precisión
 Descripción: Estos campos son relevantes para los tipos de datos decimales
(DECIMAL o NUMERIC). La precisión especifica el número total de dígitos que se
pueden almacenar, y la escala especifica el número de dígitos que se pueden
almacenar a la derecha del punto decimal.

o Precisión: Número total de dígitos.

o Escala: Número de dígitos a la derecha del punto decimal.

 Importancia: La precisión y la escala son cruciales cuando se trabaja con valores


financieros o cualquier tipo de dato que requiera un cálculo preciso.

8. Valores Predeterminados (Default Values or Binding)


 Descripción: Permite definir un valor predeterminado que se asignará
automáticamente a la columna si no se especifica ningún valor en el momento de la
inserción de datos.

 Importancia: Los valores predeterminados son útiles para asegurar que una
columna siempre tenga un valor significativo, incluso si el usuario no proporciona
uno explícitamente.

9. Índices y Restricciones
 Descripción: SSMS permite crear índices y definir restricciones directamente
durante la creación de la tabla.

o Índices: Se utilizan para mejorar el rendimiento de las consultas.

o Restricciones: Incluyen restricciones de clave primaria, clave foránea, y


restricciones CHECK, que aseguran que los datos en una columna cumplan
ciertas condiciones.

 Importancia: Los índices y restricciones son esenciales para mantener la integridad


de los datos y para mejorar el rendimiento de la base de datos.

10. Comentar Campo (Description)


 Descripción: Es posible agregar una descripción o comentario a cada columna. Este
campo no afecta el comportamiento de la columna pero sirve para documentar su
propósito.

95 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

 Importancia: Agregar comentarios puede ser útil para la documentación y para


otros desarrolladores o administradores de la base de datos que puedan trabajar con
la tabla en el futuro.

Establecemos los cambos de nuestra tabla con sus respectivos tipos de datos e indicamos si
permitimos valores nulos (AllowNulls)

Guardamos la tabla:

96 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Verificamos que la tabla se vea reflejada en la base de datos:

Si hacemos doble clic en la tabla podremos ver sus campos:

Recordemos que para que se vea reflejado agun cambio debemos reestablecer el
“Objetc Explorer”

97 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Modificar la estructura de una tabla existente

98 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Modificamos el máximo de caracteres del campo “observacion”, de 100 lo


pasamos a 200.

Le damos guardar tabla:

Si es la primera vez que queremos guardar una tabla nos marcará la advertencia
anterior. Para que no nos muestre dicha advertencia hacemos lo siguiente:

99 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Desactivamos
la casilla

Comprobamos que el cambio se halla realizado:

100 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Establecer una Clave Primaria (Primary Key)


Abrimos la tabla donde está el camó que deseamos colocar la clave primaria.

Seleccionamos el campo “idAlumno” y precionamos el boton donde se encutra la


llave. La llave indica que ese campo es un clave.

101 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Ahora podemos observar en el campo idAlumno que al lado izquierdo se colocó


una llave amarilla. La llave amarilla indica que ese campo es una clave primaria.

Cabe mencionar que la la casilla “Allow Nulls” estaba activa, al momento de


colocar el campo como “Primary Key” el campo de “Allow Nulls” se desactiva
automáticamente.

Ahora veamos que la “Primary Key” se haya reflejado en la tabla.

Recordemos que:

Una clave primaria (o Primary Key en inglés) es un concepto fundamental en el


diseño de bases de datos relacionales. Se refiere a una columna, o un conjunto de
columnas, en una tabla que se utiliza para identificar de manera única cada fila (o
registro) en esa tabla. La clave primaria garantiza la unicidad de los datos y
establece una forma de referencia para relacionar la tabla con otras tablas en la
base de datos.

102 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Propiedad IDENTITY en un campo.


La propiedad IDENTITY en SQL Server se utiliza para definir una columna en una
tabla cuyos valores se generarán automáticamente de manera secuencial cuando
se inserten nuevos registros. Esta propiedad es comúnmente utilizada para crear
columnas de identificadores únicos (como claves primarias) que no requieren que
el usuario especifique un valor, ya que el sistema se encarga de generar uno
nuevo cada vez que se inserta un nuevo registro.

Guardamos los cambios.

Características de la Propiedad IDENTITY:


1. Auto-incremento:

o Cuando se define una columna con la propiedad IDENTITY, SQL Server


asigna automáticamente un valor numérico secuencial a esa columna cada
vez que se inserta un nuevo registro.

o No es necesario que el usuario proporcione un valor para esta columna en


las inserciones, ya que el valor se genera automáticamente.

103 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

2. Semilla y Incremento:

o La propiedad IDENTITY puede configurarse con dos parámetros:

 Semilla (Seed): Es el valor inicial que se asignará al primer registro


insertado. Por defecto, es 1.

 Incremento (Increment): Es el valor por el cual se incrementará el


valor de la columna IDENTITY para cada nuevo registro. Por defecto,
es 1.

Crear una nueva tabla (curso) usando T-SQL (Transact


SQL)
Creamos una “New Query”

104 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Esta tabla almacenará información básica sobre cursos, como el identificador del curso, el
nombre, la descripción, la fecha de inicio, la fecha de finalización y el estado del curso.

CREATE TABLE Cursos (


CursoID INT IDENTITY(1,1) PRIMARY KEY,
NombreCurso VARCHAR(100) NOT NULL,
Descripcion TEXT,
FechaInicio DATE NOT NULL,
FechaFin DATE,
Estado VARCHAR(20) NOT NULL DEFAULT 'Activo'
);

Descripción de la Tabla:

 CursoID: Esta columna es la clave primaria de la tabla y se define como un entero


(INT) con la propiedad IDENTITY, lo que significa que su valor se incrementará
automáticamente con cada nuevo registro. Esto garantiza que cada curso tenga un
identificador único.

 NombreCurso: Esta columna almacenará el nombre del curso y es de tipo


VARCHAR(100), permitiendo hasta 100 caracteres. La columna es NOT NULL, lo que
significa que debe contener un valor para cada registro.

 Descripcion: Esta columna es de tipo TEXT y se utiliza para almacenar una


descripción detallada del curso. Es opcional y puede ser nula.

 FechaInicio: Esta columna almacenará la fecha de inicio del curso y es de tipo


DATE. Es NOT NULL, por lo que cada curso debe tener una fecha de inicio.

 FechaFin: Esta columna almacenará la fecha de finalización del curso, es de tipo


DATE, y puede ser nula, lo que permite que los cursos en curso o con fechas
indefinidas no necesiten este dato.

 Estado: Esta columna es de tipo VARCHAR(20) y se utiliza para almacenar el estado


del curso, como "Activo", "Inactivo", "Finalizado", etc. Tiene un valor por defecto
de "Activo", lo que significa que, si no se especifica un estado al insertar un nuevo
curso, se asignará automáticamente este valor.

105 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Para que el código se ejecute, en este caso podemos precionr F5 si seleccionar el


código para que ejecute todo el script o seleccionamos el código que queremos
ejecutar y despues precionar F5.

Como podemos apreciar en la imagen, ya se ve reflejada la nueva tabla.

Renombrar una tabla


Vamos a renombrar la tabla recien creada.

“EXEC sp_rename Cursos, curso”

Consideraciones:

 Dependencias: Renombrar una tabla no actualiza automáticamente las


dependencias en procedimientos almacenados, vistas o funciones que
referencian la tabla con su nombre anterior. Tendrás que actualizar
manualmente cualquier código que dependa del nombre de la tabla.

 Permisos: Necesitas tener permisos suficientes para modificar la estructura


de la base de datos.

 Precaución con el Uso: Asegúrate de que el nuevo nombre no entre en


conflicto con otros objetos de la base de datos.

106 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

En la siguiente imagen podemos ver que el nombre de la tabla ya a cambiado:

Crear una tabla “maestro”


CREATE TABLE maestro (

Id_maestro INT IDENTITY (1,1) PRIMARY KEY,

nombre VARCHAR(30) NOT NULL,

apellidoPaterno VARCHAR(20) NOT NULL,

apellidoMaterno VARCHAR(20),

observaciones TEXT

);

107 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Hacer los cambios necesairos para que quede de la siguiente manera>

108 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Relaciones entre tabla


Relaciones Sugeridas:
1. Relación entre curso y maestro:

o Un maestro puede impartir uno o más cursos. Podrías agregar una


columna id_maestro en la tabla curso como clave foránea (FOREIGN
KEY) para establecer esta relación.

o Modificación de la tabla curso:


ALTER TABLE curso
ADD id_maestro INT;

ALTER TABLE curso


ADD CONSTRAINT FK_curso_maestro FOREIGN KEY (id_maestro)
REFERENCES maestro(id_maestro);

2. Relación entre alumno y curso:

o Un alumno puede estar inscrito en uno o más cursos, y un curso


puede tener muchos alumnos. Para gestionar esta relación muchos a
muchos, sería adecuado crear una tabla intermedia llamada
alumno_curso.

o Tabla intermedia alumno_curso:


CREATE TABLE alumno_curso (
id_alumno INT,
id_curso INT,
PRIMARY KEY (id_alumno, id_curso),
FOREIGN KEY (id_alumno) REFERENCES alumno(id_alumno),
FOREIGN KEY (id_curso) REFERENCES curso(id_curso)
);

Ejemplos de Consultas:
1. Listar todos los alumnos y los cursos en los que están inscritos:
SELECT a.nombre, a.apellidoPaterno, c.nombreCurso
FROM alumno a
INNER JOIN alumno_curso ac ON a.id_alumno = ac.id_alumno
INNER JOIN curso c ON ac.id_curso = c.id_curso;

2. Listar todos los cursos que imparte un maestro específico:


SELECT c.nombreCurso, c.fechaInicio, c.fechaFin
FROM curso c
WHERE c.id_maestro = (SELECT id_maestro FROM maestro WHERE nombre =
'NombreMaestro' AND apellidoPaterno = 'ApellidoPaterno');

109 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

3. Listar todos los maestros con sus respectivos cursos:


SELECT m.nombre, m.apellidoPaterno, c.nombreCurso
FROM maestro m
LEFT JOIN curso c ON m.id_maestro = c.id_maestro;

Agregemos datos a las tablas:


Primero veamos y comprobemos que las tablas estan bacias:

SELECT TOP (1000) [id_alumno]


,[nombre]
,[apellidoPaterno]
,[apellidoMaterno]
,[edad]
,[observacion]
FROM [miEscuelaDB].[dbo].[alumno]

Para ver de manera más sensilla la informacion de la tabla podemos hacer lo


siguiente:

110 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Ahora coloquemos el siguite código para agregar datos a los campos de la tabla
alumno:

INSERT INTO alumno (nombre, apellidoPaterno, apellidoMaterno, edad,


observacion)
VALUES
('Juan', 'Pérez', 'García', 18, 'Ninguna'),
('Ana', 'López', 'Martínez', 19, 'Buen rendimiento'),
('Carlos', 'Hernández', 'Ruiz', 20, 'Faltas continuas'),
('Lucía', 'González', 'Díaz', 21, 'Destacada en matemáticas'),
('Pedro', 'Ramírez', 'Sánchez', 22, 'Necesita refuerzo en inglés'),
('María', 'Torres', 'Flores', 23, 'Asistencia perfecta'),
('José', 'Martínez', 'Pérez', 24, 'Participativo en clase'),
('Laura', 'Rodríguez', 'Gómez', 25, 'Excelentes calificaciones'),
('Miguel', 'Fernández', 'Moreno', 26, 'Requiere atención en ciencias'),
('Elena', 'Jiménez', 'Ortiz', 27, 'Desempeño destacado en deportes');

Si comprobams otra ves el contenio de la tabla nos arroja lo siguiente:

111 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

Ahora agregemos los datos a las otras tablas:

INSERT INTO maestro (nombre, apellidoPaterno, apellidoMaterno, observaciones)


VALUES ('Luis', 'Pérez', 'García', 'Especialista en matemáticas'), ('María', 'López',
'Martínez', 'Experta en literatura clásica'), ('Carlos', 'Hernández', 'Ruiz', 'Con
experiencia en física teórica'), ('Lucía', 'González', 'Díaz', 'Especialista en química
orgánica'), ('Pedro', 'Ramírez', 'Sánchez', 'Historiador con amplio conocimiento'),
('Ana', 'Torres', 'Flores', 'Profesora de inglés con certificaciones internacionales'),
('José', 'Martínez', 'Pérez', 'Biólogo con experiencia en investigación'), ('Laura',
'Rodríguez', 'Gómez', 'Artista plástica e historiadora de arte'), ('Miguel',
'Fernández', 'Moreno', 'Experto en programación y desarrollo de software'),
('Elena', 'Jiménez', 'Ortiz', 'Entrenadora física certificada');

112 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.
SQL SERVER BÁSICO

INSERT INTO curso (nombreCurso, descripcion, fechaInicio, fechaFin, estado,


observaciones, id_maestro)
VALUES
('Matemáticas Básicas', 'Curso introductorio a matemáticas', '2024-09-01', '2024-
12-15', 'Activo', 'Curso obligatorio', 1),
('Literatura Española', 'Análisis de textos clásicos', '2024-09-01', '2024-12-15',
'Activo', 'Se requiere lectura previa', 2),
('Física I', 'Fundamentos de la física', '2024-09-01', '2024-12-15', 'Activo', 'Material
adicional disponible en línea', 3),
('Química Orgánica', 'Estudio de compuestos orgánicos', '2024-09-01', '2024-12-
15', 'Activo', 'Laboratorios semanales', 5),
('Historia Universal', 'Repaso de eventos históricos clave', '2024-09-01', '2024-12-
15', 'Activo', 'Examen final obligatorio', 5),
('Inglés Avanzado', 'Curso avanzado de inglés', '2024-09-01', '2024-12-15', 'Activo',
'Pruebas orales cada semana', 4),
('Biología II', 'Estudios en biología avanzada', '2024-09-01', '2024-12-15', 'Activo',
'Prácticas de laboratorio quincenales', 7),
('Arte y Cultura', 'Historia del arte y su impacto cultural', '2024-09-01', '2024-12-15',
'Activo', 'Visitas a museos programadas', 8),
('Programación en Python', 'Introducción a la programación en Python', '2024-09-
01', '2024-12-15', 'Activo', 'Se requiere laptop personal', 5),
('Educación Física', 'Entrenamiento y prácticas deportivas', '2024-09-01', '2024-12-
15', 'Activo', 'Uniforme obligatorio para todas las sesiones', 2);

113 Propiedad de INADET – CENALTEC.


Prohibida la reproducción parcial o total.

También podría gustarte