0% encontró este documento útil (0 votos)
34 vistas25 páginas

Logo y Base de Datos en O&M

SQL Server es un sistema de gestión de bases de datos relacional desarrollado por Microsoft. Incluye características como integridad de datos, concurrencia, recuperación y seguridad de datos. Ofrece herramientas como bases de datos, tablas, vistas, procedimientos almacenados y funciones. Ha ido mejorando a través de versiones como SQL Server 2005, 2008, 2012 y 2014 con nuevas funcionalidades como replicación y recuperación ante desastres.

Cargado por

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

Logo y Base de Datos en O&M

SQL Server es un sistema de gestión de bases de datos relacional desarrollado por Microsoft. Incluye características como integridad de datos, concurrencia, recuperación y seguridad de datos. Ofrece herramientas como bases de datos, tablas, vistas, procedimientos almacenados y funciones. Ha ido mejorando a través de versiones como SQL Server 2005, 2008, 2012 y 2014 con nuevas funcionalidades como replicación y recuperación ante desastres.

Cargado por

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

UNIVERSIDAD DOMINICANA O&M

                                                        

Materia:
BASE DE DATOS

Trabajo:
SQL Server

Fecha:
17-07-2020

Índice
Gestor De Base De Datos Microsoft SQL Server..................................................................................................4
Definición Base de Datos....................................................................................................................................4
Definición de SQL Server....................................................................................................................................4
Historia de SQL Server........................................................................................................................................4
Historia de versiones..........................................................................................................................................5
Programación.....................................................................................................................................................5
Ediciones y servicios...........................................................................................................................................6
Características....................................................................................................................................................7
Integridad de datos..............................................................................................................................................7
Concurrencia........................................................................................................................................................8
Recuperación.......................................................................................................................................................8
Diccionario de datos.............................................................................................................................................8
Ventaja SQL Server.............................................................................................................................................8
Desventajas SQL Server......................................................................................................................................9
Modelamiento de Base de Datos en SQL Server.................................................................................................9
Interfaz de usuario...........................................................................................................................................10
Servicios...........................................................................................................................................................10
Capacidades y herramientas básicas................................................................................................................11
Bases de datos...................................................................................................................................................11
Tablas fijas y temporales....................................................................................................................................11
Tipos de datos....................................................................................................................................................12
Vistas..................................................................................................................................................................12
Procedimientos almacenados............................................................................................................................13
Funciones definidas por el usuario.....................................................................................................................13
Consultas distribuidas........................................................................................................................................14
Transacciones.....................................................................................................................................................14
Atomicidad.........................................................................................................................................................15
Coherencia.........................................................................................................................................................15
Aislamiento........................................................................................................................................................15
Durabilidad.........................................................................................................................................................15
El optimizador....................................................................................................................................................15
Privilegios y seguridad de datos.......................................................................................................................15
Otras herramientas de servicio.........................................................................................................................16
Respaldos y recuperaciones...............................................................................................................................16
Compresión........................................................................................................................................................16
Replicación, alta disponibilidad, y recuperación de desastres...........................................................................16

2
El agente y la programación de tareas...............................................................................................................17
Mantenimiento..................................................................................................................................................17
Service broker....................................................................................................................................................17
Enviar correos electrónicos................................................................................................................................17
Full text search (Búsqueda de textos completos)...............................................................................................17
Rastrear..............................................................................................................................................................17
Combinación de CLR...........................................................................................................................................17
Herramientas de inteligencia empresarial.........................................................................................................18
Publicaciones de cada versión..........................................................................................................................18
Resumen de las versión....................................................................................................................................19
SQL Server 7.0....................................................................................................................................................20
SQL Server 2000.................................................................................................................................................20
SQL Server 2005.................................................................................................................................................21
SQL Server 2008.................................................................................................................................................22
SQL Server 2008 R2............................................................................................................................................23
SQL Server 2012.................................................................................................................................................23
SQL Server 2014.................................................................................................................................................24
BIBLIOGRAFIA...................................................................................................................................................25

3
Gestor De Base De Datos Microsoft SQL Server

Un sistema gestor de base de datos se define como el conjunto de programas que administran y gestionan la
información contenida en una base de datos. Ayuda a realizar las siguientes acciones:

Definición Base de Datos

Una base de datos se define como un fichero en el cual se almacena información en campos o delimitadores,
teniendo acceso a ella posteriormente tanto de forma separada como de forma conjunta. Se utiliza
normalmente para recoger grandes cantidades de información. (Por ejemplo el listado de nombres y apellidos
de los alumnos de varios cursos)

Normalmente el número de campos (columnas) que se pueden tener en una base varía según las necesidades
en cuanto a gestión de datos, de forma que después se pueda explotar la información de forma ordenada y
separada, aunque el resto de la información sigue almacenada y guardada en la base de datos. En realidad
aparte de los datos que son almacenados en el archivo, también hay una serie de datos, en los que se informa
del tipo de campo, los campos y la longitud de cada campo, es lo que se llama gestor de datos, que permite
saber cada registro o fila, (un registro es una suma de campos).

El programa que sirve para manejar toda esa información se denomina sistema gestor de base de datos. Las
principales en estos momentos son Microsoft Access, Lotus Aproach, parados, u Oracle

Definición de SQL Server

Es un sistema para la gestión de bases de datos creado por Microsoft, el mismo se basa en el modelo relacional.
El SQL Server utiliza como lenguajes de consulta T-SQL y ANSI SQL.

Historia de SQL Server

Comenzó como un proyecto en colaboración en 1988 entre Microsoft, Sybase, IBM e incluso Ashton-Tate para
crear un sistema de gestión de base de datos para el sistema operativo OS/2 (un sistema desarrollado entre IBM
y Microsoft) tiempo después se desarrolló la versión para Windows NT por allá de 1993 (claro que en ese
entonces era un producto “bebe” para toda la “madurez” que ha alcanzado hasta hoy). Al año siguiente en 1994
Sybase y Microsoft deciden dar por terminada su colaboración y Sybase se dedica al desarrollo de sus bases de
datos y Microsoft a las suyas.

Después de “la separación” un año más tarde en 1995 Microsoft Lanza su primera versión ya como
independiente y único propietario y desarrollador de SQL Server con la versión Microsoft SQL Server 6.0 una
versión mejorada principalmente en rendimiento, y en el año de 1996 se lanza la versión Microsoft SQL Server
6.5 una versión que se mantuvo vigente 2 años antes de sacar una nueva versión en 1998 la 7.0 durante esos 2
años Microsoft trabajo duro para realizar mejoras considerables en cuanto usabilidad, potencia y rendimiento. Y
fue una de las versiones más fuertes, paso de ser un niño a un joven, pudiéndole competir a sistemas como

4
ORACLE o el propio DB2, y poco a poco irse colocando como una propuesta atractiva a empresas que
manejaban volúmenes un poco mayores a los que SQL Server venía manejando. Tanto que esta versión
permaneció estables con ligeras actualizaciones hasta el desarrollo de Microsoft SQL Server 2000 en esta versión
incorpora ediciones para ‘diferentes enfoques’ una de ellas la edición de 64 bits, workgroup, desktop engine,
profesional, personal, standard, developer, enterprise etc y durante los siguientes 5 años comenzó a causarle
delirios de persecución los gigantes de las bases de datos como ORACLE o IBM con DB2, para la versión 2005 de
SQL Server ya era un serio competidor digno de respeto

Historia de versiones

Programación

T-SQL (Transact-SQL) es el principal medio de interacción con el Servidor, el cual permite realizar las
operaciones claves en SQL Server, incluyendo la creación y modificación de esquemas de base de datos,
inserción y modificación de datos en la base de datos, así como la administración del servidor como tal. Esto se
realiza mediante el envío de sentencias en T-SQL y declaraciones que son procesadas por el servidor y los
resultados (o errores) regresan a la aplicación cliente.

Cliente Nativo de SQL, es la biblioteca de acceso a datos para los clientes de Microsoft SQL Server versión 2005
en adelante. Implementa de forma nativa soporte para las características de SQL Server, incluyendo la ejecución
de la secuencia de datos tabular, soporte para bases de datos en espejo de SQL Server, soporte completo para
todos los tipos de datos compatibles con SQL Server, conjuntos de operaciones asíncronas, las notificaciones de
consulta, soporte para cifrado, así como recibir varios conjuntos de resultados en una sola sesión de base de
datos. Cliente Nativo de SQL se utiliza como extensión de SQL Server plug-ins para otras tecnologías de acceso

5
de datos, incluyendo ADO u OLE DB. Cliente Nativo de SQL puede también usarse directamente, pasando por
alto las capas de acceso de datos.

Ediciones y servicios

Cada versión de SQL Server posee distintas versiones con distintos precios (para cada versión) que dependen
también en la configuración física del servidor. 13A continuación se presentan las versiones principales:

Enterprise: Contempla todas las características (deshabilitadas en otras ediciones).Es el tipo de versión con más
privilegios existente en el mercado.

Developer: Una edición con las mismas características que la Enterprise, con el fin de ser instalada solamente en
ambiente de desarrollo y no en producción. Si se desarrolla para una edición Standard hay que tener en cuenta
las características deshabilitadas para esta versión.

Standard: Una versión limitada según la configuración del servidor y sus características, diseñada para
servidores inferiores.

Por ejemplo: en la versión 2012, la edición Enterprise soporta un número ilimitado de procesadores, y la
agregación de memoria y CPUs en caliente sin la interrupción del servicio o del servidor; mientras la edición
Standard esta limitada a 16 procesadores y no soporta la "agregación en caliente".

Express: Una versión gratuita que posibilita la creación de bases de datos limitadas con características básicas,
con el fin de apoyar aplicaciones que necesiten una solución simple para almacenamiento de una cantidad
limitada de datos, o usuarios que sus recursos y necesidades son limitados.

En la versión 2012, esta edición puede utilizar un máximo de 1 GB de memoria, y almacenar no más de 10GB,
funciona en servidores con un número máximo de cuatro procesadores. Estas limitaciones se mantienen en la
versión 2014 (4 cores, 1GB ram, y 10Gb por base de datos).

SQL Azure: Es una versión de SQL Server en la nube, que permite pagar mensualmente por el servicio sin la
necesidad de mantener un servidor físico (On Premise). La empresa paga solo por el servicio, y el servicio es
manejado a través de torres de servidores en distintos lugares en el mundo.

Con SQL Azure no es necesario instalar, mantener o actualizar un servidor físico; a pesar de que este servicio
depende de aspectos relacionados a problemas de seguridad con respecto a su presencia fuera de la empresa y
a la disponibilidad de conexión a Internet.

Durante un tiempo, el servicio fue ampliado con la opción de crear un servidor virtual por la red, e instalar SQL
Server tanto como uno de los servicios competidores, y manejar el servidor virtual como si fuera un servidor
físico local (aunque físicamente no está accesible); y se puede diferenciar entre la opción original que esta
denominada PAAS (Platform as a Service: Plataforma como un Servicio) y la nueva opción de los servidores
virtuales denominada IAAS (Infrastructure as a Service: Infraestructura como un Servicio).

Este servicio esta otorgado por Microsoft desde 2009 y se une a servicios similares de empresas de third-party.

Características

6
Seguridad

Protección de datos

Criptografía integrada.

Cifrado transparente.

Clave extensible.

Firma de módulos de códigos.

Certificados a partir de bytes.

Claves de seguridad usando AES256.

Soporte para hashes SHA512 y SHA2 (256 y 512 bits).

Control de acceso

Flexibilidad mediante reparto de responsabilidades y roles anidados.

Evasión del acceso de Administrador del Sistema.

Mayor cumplimiento de las normas utilizando Windows Group.

Usuarios individuales.

Seguridad de usuarios con controles de TI integrados.

Garantía de cumplimiento

Optimización mejorada y capacidades enriquecidas con respecto a versiones anteriores.

Mayor flexibilidad para filtrar eventos no deseados en el log de la auditoría.

Permite que las aplicaciones escriban código personalizado dentro de log de la auditoría

Integridad de datos

La exigencia de integridad de los datos garantiza la calidad de los datos de la base de datos.

SQL Server proporciona los siguientes mecanismos para exigir la integridad de los datos en una columna:

Restricciones PRIMARY KEY

Restricciones FOREIGN KEY

Restricciones UNIQUE

Restricciones CHECK

Definiciones DEFAULT

Permitir o denegar valores NULL

SQL Server admite distintos tipos de datos: Integer, Float, Decimal, Char, Varchar, binarios, texto, entre otros,
además de que permite a los usuarios definir y usar su propio tipo de datos compuestos (UDT)

7
Concurrencia
SQL Server permite que varios clientes usen la misma base de datos al mismo tiempo controlando el acceso
simultáneo mediante 2 modos de control de concurrencia:

Pessimistic concurrency: Uso de bloqueos exclusivos y compartidos.

Optimistic concurrency: Similar al uso de sistemas subversión. Permite la creación de una nueva fila cada

Vez que ésta se actualiza, almacenando las “versiones anteriores” de la fila en una tabla temporal junto con el
ID de la transacción mediante la cual fueron actualizadas.

Recuperación
Microsoft SQL Server 2012 cuenta con 3 formas diferentes de respaldo y recuperación de bases de datos:

SQL Server Management Studio (Herramienta gráfica de administración para SQL Server 2005 y posteriores)
(nivel de dificultad: fácil)

PowerShell (Interfaz de consola avanzada disponible para Microsoft Windows con posibilidad de interactuar con
SQL Server) (nivel de dificultad: medio)

Transact-SQL (Lenguaje propio de SQL Server) (nivel de dificultad: avanzado)

Diccionario de datos
Conjunto de metadatos que contiene las características lógicas de los datos que se van a utilizar en el sistema
que se programa, incluyendo nombre, descripción, alias, contenido y organización.

Microsoft SQL Server contiene palabras reservadas como cualquier otro SGBD que permiten acceder a la
información de la estructura de una BD. Para crear un diccionario de datos simple, solo basta con crear un script
que obtenga dicha información:

Ventaja SQL Server


Soporte de transacciones.

Escalabilidad, estabilidad y seguridad.

Soporta procedimientos almacenados.

Incluye también un potente entorno gráfico de administración, que Permite el uso de comandos DDL y DML
gráficamente.

Permite trabajar en modo cliente-servidor, donde la información y datos se alojan en el servidor y las terminales
o clientes de la red sólo acceden a la información.

Además permite administrar información de otros servidores de datos.

Desventajas SQL Server

La principal desventaja de Microsoft SQL SERVER es la enorme cantidad de memoria RAM que utiliza para la
instalación y utilización del software.

8
Una de las desventajas de SQL es que si lo quieres para practicas no te va hacer útil porque en él se prohíben
muchas cosas tiene restricciones en lo particular me parase más viable usar MySQL es mucho mejor además de
ser un software gratis.

La relación calidad-precio está muy debajo comparado con Oracle.

Modelamiento de Base de Datos en SQL Server

La base de datos modelo se utiliza como plantilla para todas las bases de datos creadas en una instancia de SQL
Server. Puesto que tempdb se crea cada vez que se inicia SQL Server, la base de datos modelo debe existir
siempre en un sistema de SQL Server. Todo el contenido de la base de datos modelo, incluidas las opciones de
base de datos, se copia en la base de datos nueva. Algunos de los valores de configuración de la base de datos
modelo también se usan para crear una base de datos tempdb nueva durante el inicio, de modo que la base de
datos modelo siempre debe existir en un sistema SQL Server.

Las bases de datos de usuario recién creadas usan el mismo modelo de recuperación que la en. La opción
predeterminada la puede configurar el usuario. Para obtener información sobre el modelo de recuperación
actual del modelo, vea Ver o cambiar el modelo de recuperación de una base de datos (SQL Server).

El diseño de una base de datos consiste en definir la estructura de los datos que debe tener un sistema de
información determinado. Para ello se suelen seguir por regla general unas fases en el proceso de diseño,
definiendo para ello el modelo conceptual, el lógico y el físico.

En el diseño conceptual se hace una descripción de alto nivel de la estructura de la base de datos,
independientemente del SGBD (Sistema Gestor de Bases de Datos) que se vaya a utilizar para manipularla. Su
objetivo es describir el contenido de información de la base de datos y no las estructuras de almacenamiento
que se necesitarán para manejar dicha información.

El diseño lógico parte del resultado del diseño conceptual y da como resultado una descripción de la estructura
de la base de datos en términos de las estructuras de datos que puede procesar un tipo de SGBD. El diseño
lógico depende del tipo de SGBD que se vaya a utilizar, se adapta a la tecnología que se debe emplear, pero no
depende del producto concreto. En el caso de bases de datos convencionales relacionales (basadas en SQL para
entendernos), el diseño lógico consiste en definir las tablas que existirán, las relaciones entre ellas,
normalizarlas, etc.

El diseño físico parte del lógico y da como resultado una descripción de la implementación de una base de datos
en memoria secundaria: las estructuras de almacenamiento y los métodos utilizados para tener un acceso
eficiente a los datos. Aquí el objetivo es conseguir una mayor eficiencia, y se tienen en cuenta aspectos
concretos del SGBD sobre el que se vaya a implementar. Por regla general esto es transparente para el usuario,
aunque conocer cómo se implementa ayuda a optimizar el rendimiento y la escalabilidad del sistema.

Interfaz de usuario

SQL Server proporciona unas interfaces que han cambiado durante los años, de los cuales los más conocidos son
las interfaces gráficas que están utilizadas como herramienta de desarrollo estándar a los desarrolladores y
administradores.

9
La interfaz gráfica hasta 2005 incluyó el Enterprise Manager con una vista de árbol de los distintos objetos y con
la capacidad de manejarlos; y el Query analyzer como interfaz textual para ejecutar comandos de TSQL.

En la versión 2005 las dos herramientas se unificaron a una –el SQL Server Management Studio (SSMS), y a
partir de 2008 fue incluida la opción de trabajar con el Visual Studio– la interfaz estándar de desarrollo de
Microsoft (a los distintos lenguajes, BI, etc.). Otra interfaz opcional es la utilización de la Línea de comandos, con
herramientas como SQLCmd, ISQL, OSQL que posibilita la ejecución de scripts y procesamiento por lotes. Desde
2008 se puede desarrollar con SQLCmd (SQL Command) a través del SSMS sin interconectarse al interfaz textual
de Windows. Otra opción en el ámbito de scripts es la utilización del lenguaje de scripts Powershell de
Microsoft.

Aparte de las interfaces estándares de SQL Server, se puede ejecutar comandos de TSQL con herramientas de
conexión como ODBC y OLE-DB.14

Servicios

A contrario de sistemas de bases de datos como Microsoft Access que son "pasivas" y contienen un archivo a
cual hay que conectar y la ejecución de los comandos se lleva a cabo en el cliente (la computadora de usuario),
en SQL Server hay número de servicios, software que están ejecutadas en la memoria del servidor por parte del
sistema, y por lo tanto aprovechan las capacidades del servidor que es más potente que los clientes, previenen
congestión en la red, y pueden programar tareas que corran aunque el cliente no está conectado.

Los servicios principales:

SQL Server - El "motor" del sistema

SQL Agent - Ejecución de tareas (Jobs, scripts programados) y envió de advertencias en caso de carga pesada e
irregulares en el sistema

Full-Text Filter Daemon Launcher - La utilización de los índices especiales del "Full text search" por búsqueda
textual avanzada

SQL Browser - El "oyente" dedicado a comandos enviados y redirigirlos a su destino

SSIS Server - La operación del SSIS (la herramienta de ETL)

SSAS Server - La operación del SSAS (la herramienta de OLAP)

SSRS Server - La operación del SSRS (la herramienta de informes)

Capacidades y herramientas básicas

Bases de datos
En cada instalación de SQL Server hay 4 bases de datos de sistema, y la capacidad de crear nuevas bases de
datos por el usuario, en los cuales los datos están almacenados en tablas.

10
Estas bases de datos, creadas por parte de los usuarios, incluyen básicamente un archivo de datos (con el sufijo
mdf) con las tablas y los distintos objetos a nivel de la base de datos; y un archivo de registro (con el sufijo ldf)
con las transacciones abiertas, y transacciones cerradas, Sujeto al modelo de recuperación seleccionado (se
puede acumular en el archivo de registro todos los cambios en la base de datos desde el último respaldo). Se
puede crear un conjunto de archivos de datos además del principal (con el sufijo ndf) por consideraciones de
eficiencia, partición de carga de trabajo entre los discos rígidos, etc.

Las bases de datos del sistema:

master - Todos los procedimientos, funciones y tablas del sistema que están utilizadas por parte de todas las
bases de datos y que están instaladas automáticamente, tanto como las que han sido creado por parte de los
administradores del sistema. Además, todas las definiciones en respecto a la seguridad a nivel del servidor,
están almacenadas en esta base de datos.

msdb - Almacenamiento de las tareas del agente, los códigos de CLR combinados en el sistema, los paquetes de
SSIS, y otros más.

model - El molde de las bases de datos. Cada nueva base de datos se crea como una copia de esta base de
datos, menos que algo más estaba definido explícitamente.

tempdb - Base de datos temporal que se crea de nuevo cada vez que el servicio reinicia. Se utiliza para
almacenar tablas temporales creadas por parte de los usuarios o el sistema (por ejemplo en ordenaciones
complejos).

Tablas fijas y temporales


Desde la perspectiva lógica, los datos almacenados en las bases de datos en tablas, que mediante ellas se
implementa la teoría de las bases de datos relacionales. La tabla se divide en filas y columnas (A veces se les
conoce como registros y campos). Las tablas pueden ser fijas o temporales, mientras que en el segundo caso
existen físicamente en la base de datos tempdb, y se borran automáticamente en caso de desconexión de la
sesión o de la conexión al servidor, depende en el tipo de la tabla temporal.

Desde la perspectiva física, el sistema divide los archivos de la base datos en Extents de 64 KB, y cada cual a
ocho páginas de 8 KB. Generalmente, cada Extent se asigna a una tabla o un índice, menos las tablas pequeñas;
y cada página se asigna siempre a una tabla específica. El sistema es responsable del aumento de los archivos,
de acuerdo con los ajustes del usuario, y de asignar Extents y páginas a las tablas.

A las tablas se puede crear índices. Los índices se almacenan junto a la tabla (Non Clustered Index) o son la tabla
en sí (Clustered Index). Los índices asisten en la búsqueda de datos en las tablas (como los ficheros en las
librerías), en ordenarlas, y la definición de claves primarias.

Entre las tablas se puede crear una relación de uno a muchos.

Aparte de las tablas de los usuarios, hay tablas que almacenan meta data: datos sobre el sistema mismo, los
diferentes objetos, los derechos, estadísticas sobre el rendimiento del sistema (DMV), etc.

Tipos de datos
Para cada columna en una tabla y a cada variable o parámetro, se define un tipo de datos que sean
almacenados en él, entre ellos:

Numeros: Números enteros y no enteros en distintos tamaños, y en diferentes niveles de precisión; y auto
incremento opcional.

Textos: Cadenas de distintas longitudes, y distintas capacidades de apoyar distintas lenguas.

11
Fechas: Fechas en distintos niveles de precisión, desde días completos hasta fracciones menores de un segundo,
que apoyan fechas a partir del principio del siglo XX o del calendario gregoriano, y la capacidad de diferenciar
entre distintos usos de horarios.

XML: Datos textuales (cadenas) que representan conjuntos estándares de datos (estándar SGML).

Datos binarios: Datos almacenados como datos binarios (bits y bytes), que posibilitan el almacenamiento de
archivos gráficos, etc.

Geography: Representación estándar de información geográfica, tales como estados, zonas geográficas,
localidades; y las cálculos como distancias.

Geometry: Representación estándar de puntas, líneas, superficies en el plano; y las relaciones entre ellas.

Hierarchid: Representación estándar de información jerárquica como lista de materiales, relaciones de


subordinación entre empleados, etc.

Vistas
Las vistas representan generalmente comandos de extracción de datos, que se almacenan sin los datos (que
están almacenados en las tablas). Esta opción nos posibilita crear extracciones complejas o estándares,
almacenarlas como vistas, y utilizar las vistas sin la necesidad de escribir de nuevo los comandos o mantener los
códigos donde ellas aparecen. Adicionalmente, es un medio muy importante para otorgar derechos selectivos
de lectura (en caso que queremos posibilitar a un usuario contemplar parcialmente las columnas o las filas de
una tabla).

Una vista se puede considerar una tabla virtual o una consulta almacenada. Los datos accesibles a través de una
vista no están almacenados en un objeto distinto de la base de datos. Lo que está almacenado en la base de
datos es una instrucción SELECT. El resultado de la instrucción SELECT forma la tabla virtual que la vista
devuelve. El usuario puede utilizar dicha tabla virtual haciendo referencia al nombre de la vista en instrucciones
Transact-SQL, de la misma forma en que se hace referencia a las tablas. Las vistas se utilizan para alguna de
estas funciones, o para todas:

• Restringir el acceso del usuario a filas concretas de una tabla. Por ejemplo, permitir que un empleado sólo vea
las filas que guardan su trabajo en una tabla de seguimiento de actividad laboral.

• Restringir el acceso del usuario a columnas específicas. Por ejemplo, permitir que los empleados que no
trabajen en el departamento de nóminas vean las columnas de nombre, oficina, teléfono y departamento de la
tabla de empleados, pero no permitir que vean las columnas con los datos de salario u otra información
personal.

• Combinar columnas de varias tablas de forma que parezcan una sola tabla.

• Agregar información en lugar de presentar los detalles. Por ejemplo, presentar la suma de una columna o el
valor máximo o mínimo de una columna.

Las vistas se crean definiendo la instrucción SELECT que recupera los datos presentados por la vista. Las tablas
de datos a las que hace referencia la instrucción SELECT se conocen como las tablas base para la vista. Las vistas
en todas las versiones de SQL Server son actualizables (pueden ser objetivo de instrucciones UPDATE, DELETE o
INSERT) mientras la modificación afecte sólo a una de las tablas base de la vista.

12
Procedimientos almacenados
Los procedimientos son scripts de comandos de TSQL, que pueden ser ejecutados con distintos parámetros. Por
ejemplo, procedimiento que obtiene número de año como parámetro, y actualiza una tabla de resumen de
ventas, con las ventas de los agentes en el dicho año, basada en la tabla de registro de ventas.

Los procedimientos almacenados pueden facilitar en gran medida la administración de la base de datos y la
visualización de información sobre dicha base de datos y sus usuarios. Los procedimientos almacenados son una
colección precompilada de instrucciones SQL e instrucciones de control de flujo opcionales almacenadas bajo un
solo nombre y procesadas como una unidad. Los procedimientos almacenados se guardan en una base de datos;
se pueden ejecutar desde una aplicación y permiten variables declaradas por el usuario, ejecución condicional y
otras funciones eficaces de programación. Los procedimientos almacenados pueden contener flujo de
programas, lógica y consultas a la base de datos. Pueden aceptar parámetros, proporcionar resultados de
parámetros, devolver conjuntos de resultados individuales o múltiples y devolver valores.

Las ventajas de utilizar procedimientos almacenados en SQL Server en vez de programas Transact-SQL
almacenados localmente en equipos clientes consisten en que:

• Permiten una programación modular.

Puede crear el procedimiento una vez, almacenarlo en la base de datos, y llamarlo desde el programa el número
de veces que desee. Un especialista en programación de bases de datos puede crear procedimientos
almacenados, que luego será posible modificar independientemente del código fuente del programa. Facilitan el
mantenimiento.

• Permiten una ejecución más rápida.

En situaciones en las que se necesita una gran cantidad de código Transact-SQL, o si las operaciones se realizan
varias veces, los procedimientos almacenados pueden ser más rápidos que los lotes de código Transact-SQL. Los
procedimientos son analizados y optimizados en el momento de su creación, y es posible utilizar una versión del
procedimiento que se encuentra en la memoria después de que se ejecute por primera vez. Las instrucciones de
Transact-SQL que se envían varias veces desde el cliente cada vez que deben ejecutarse tienen que ser
compiladas y optimizadas siempre que SQL Server las ejecuta.

• Pueden reducir el tráfico de red.

Una operación que necesite centenares de líneas de código Transact-SQL puede realizarse mediante una sola
instrucción que ejecute el código en un procedimiento, en vez de enviar cientos de líneas de código por la red.

• Pueden utilizarse como mecanismo de seguridad.

Es posible conceder permisos a los usuarios para ejecutar un procedimiento almacenado, incluso si no cuentan
con permiso para ejecutar directamente las instrucciones del procedimiento.

Funciones definidas por el usuario


Las funciones son un objeto que combina algunas capacidades de las vistas, con otras de los procedimientos.
Como las vistas, pueden extraer datos y ejecutar cálculos, y devuelven un resultado al usuario o al programa que
les ejecutó. Tanto como los procedimientos, incluyen códigos de TSQL, y pueden ser ejecutados con parámetros.

Las funciones devuelven un valor o un conjunto de valores.

Las funciones definidas por el usuario se crean con la instrucción CREATE FUNCTION, se modifican con la
instrucción ALTER FUNCTION y se quitan con la instrucción DROP FUNCTION. Todos los nombres de funciones
completos (database_name.owner_name.function_name) definidos por el usuario deben ser únicos. Para crear,

13
modificar o quitar funciones definidas por el usuario, debe tener permisos de CREATE FUNCTION. Los usuarios
distintos del propietario deben tener permiso EXECUTE para una función, y solo así podrán utilizarla en una
instrucción de Transact-SQL. Para crear o modificar tablas con referencias a funciones definidas por el usuario
en la restricción CHECK, la cláusula DEFAULT o la definición de una columna calculada, también debe tener
permiso REFERENCES para las funciones. Los errores de Transact-SQL que producen la cancelación de una
instrucción y continúan con la siguiente instrucción del módulo, como desencadenadores o procedimientos
almacenados, se tratan de forma distinta dentro de una función. En las funciones, estos errores hacen que se
detenga la ejecución de la función. Esto hace que se cancele la función que invocó la instrucción. Una función
definida por el usuario no tiene ninguno o tiene varios parámetros de entrada y devuelve un valor escalar o una
tabla. Una función puede tener un máximo de 1024 parámetros de entrada. Cuando un parámetro de la función
toma un valor predeterminado, debe especificarse la palabra clave DEFAULT al llamar a la función para poder
obtener el valor predeterminado. Este comportamiento es diferente del de los parámetros con valores
predeterminados de los procedimientos almacenados, para los cuales omitir el parámetro implica especificar el
valor predeterminado. Las funciones definidas por el usuario no admiten parámetros de salida.

Consultas distribuidas
Las consultas distribuidas tienen acceso a datos de varios orígenes, que pueden estar almacenados en un equipo
o en equipos distintos. Microsoft SQL Server 2000 admite las consultas distribuidas a través de OLE DB Las
consultas distribuidas proporcionan a los usuarios de SQL Server acceso a:

• Datos distribuidos almacenados en múltiples instancias SQL Server.

• Datos heterogéneos almacenados en varios orígenes de datos relacionales y no relacionales a los que se tiene
acceso mediante un proveedor OLE DB.

Los proveedores OLE DB exponen datos en objetos tabulares llamados conjuntos de filas. En las instrucciones
Transact-SQL, SQL Server 2000 permite que se haga referencia a los conjuntos de filas de los proveedores OLE
DB como si fueran una tabla de SQL Server. En las instrucciones SELECT, INSERT, UPDATE y DELETE de Transact-
SQL, se puede hacer referencia directa a las tablas y vistas de orígenes de datos externos. Puesto que las
consultas distribuidas usan OLE DB como interfaz subyacente, éstas tienen acceso a los sistemas DBMS
relacionales tradicionales con procesadores de consultas SQL, así como a los datos administrados por orígenes
de datos de capacidad y sofisticación diversas. Siempre que el software propietario de los datos los expone en
un conjunto de filas tabular a través del proveedor OLE DB, los datos se podrán usar en las consultas
distribuidas. Nota: El uso de las consultas distribuidas en SQL Server es similar a la funcionalidad de las tablas
vinculadas mediante ODBC, que anteriormente admitía Microsoft Access. Esta funcionalidad se encuentra ahora
integrada en SQL Server con OLE DB como interfaz para los datos externos.

Transacciones
Una transacción es un conjunto de comandos, que se está ejecutado completamente o no ejecutado en
absoluto: todo o nada. Por ejemplo, si una suma de dinero fue trasladada de una cuenta bancaria a otra, y hay
que actualizar ambas cuentas sobre el depósito y la retirada; es obligatorio que ambas cuentas se actualicen
juntas, o ninguna (en caso que una de las actualizaciones falle); para evitar consecuencias inconsistentes de un
depósito sin ninguna retirada, o viceversa. Por lo tanto, una transacción es una secuencia de operaciones
realizadas como una sola unidad lógica de trabajo. Una unidad lógica de trabajo debe exhibir cuatro
propiedades, conocidas como propiedades ACID (atomicidad, coherencia, aislamiento y durabilidad), para ser
calificada como transacción:

Atomicidad
Una transacción debe ser una unidad atómica de trabajo, tanto si se realizan todas sus modificaciones en los
datos, como si no se realiza ninguna de ellas.

14
Coherencia
Cuando finaliza, una transacción debe dejar todos los datos en un estado coherente. En una base de datos
relacional, se deben aplicar todas las reglas a las modificaciones de la transacción para mantener la integridad
de todos los datos. Todas las estructuras internas de datos, como índices de árbol B o listas doblemente
vinculadas, deben estar correctas al final de la transacción.

Aislamiento
Las modificaciones realizadas por transacciones simultáneas se deben aislar de las modificaciones llevadas a
cabo por otras transacciones simultáneas. Una transacción ve los datos en el estado en que estaban antes de
que otra transacción simultánea los modificara o después de que la segunda transacción se haya concluido, pero
no ve un estado intermedio. Esto se conoce como seriabilidad debido a que su resultado es la capacidad de
volver a cargar los datos iniciales y reproducir una serie de transacciones para finalizar con los datos en el mismo
estado en que estaban después de realizar las transacciones originales.

Durabilidad
Una vez concluida una transacción, sus efectos son permanentes en el sistema. Las modificaciones persisten aún
en el caso de producirse un error del sistema.

SQL Server tiene una capacidad limitada de anidar transacciones.

El optimizador
El optimizador es una parte del software que "toma la decisión" de como cada comando se ejecutará, tanto que
la ejecución será lo más eficiente, o por lo menos bastante eficiente (es decir, bastante eficiente para evitar
seguir buscando otra solución, que aún que sea más eficiente, el precio de la búsqueda adicional "costará" más
que el ahorro de recursos).

SQL es un lenguaje declarativo, en el cual el desarrollador declara que quiere extraer o actualizar sin la
necesidad de indicar cómo (a contrario de los lenguajes imperativos, y por lo tanto el optimizador juega un
papel protagónico, que de acuerdo con las estadísticas que el sistema almacena sobre las distribuciones de los
datos en las tablas, los índices, y reglas internas; toma la decisión adecuada.

Privilegios y seguridad de datos

Para conectarse al SQL Server, se necesita un Login (usuario a nivel del servidor). Cuando la política de seguridad
se define como Windows Authentication y el servidor se combina con las definiciones del Domain, los Logins se
definen en el Active Directory. Cuando la definición es SQL Server Authentication los logins (usuario y
contraseña) se definen en el SQL Server mismo. Consecuentemente, en el primer caso hay que identificarse con
nombre y contraseña solamente al conectarse a la red, y luego se conecta automáticamente a todos los
servidores que son Windows Authentication (con el Login global); y en el segundo caso hay que identificarse al
conectarse a cada servidor de SQL Server Authentication (cada vez con un Login local).

A nivel de la base de datos, el usuario se identifica como un User que está relacionado generalmente al Login
(que es a nivel del servidor), y los privilegios al User existen solamente en el ámbito de la base de datos (además
a los privilegios al Login). Para otorgar derechos generales puede asistirse con listas de Server Roles (roles a nivel
del servidor) o Database Roles (roles a nivel de la base de datos específica), cada cual con privilegios específicos
a un rol específico; y cada usuario asociado con uno de estos Roles obtiene los privilegios asociados con él.
Además, el administrador puede otorgar derechos specificos, y crear otros Database Roles (no se puede crear
Server Roles).

Los privilegios a nivel del servidor incluyen la capacidad de crear bases de datos, utilizar las tareas (Jobs), crear
respaldos de bases de datos y restaurarlos, modificar las definiciones del servidor, etc. Los privilegios a nivel de

15
la base de datos posibilitan extraer y actualizar datos, crear objetos como procedimientos y tablas, utilizar
dichos objetos, etc. Como regla general se puede otorgar derechos (Grant), revocar privilegios existentes
(Revoke), y denegar privilegios aún no existen (Deny).

Otras herramientas de servicio

Adicionalmente a sus capacidades elementarías como herramienta de gestión de bases de datos relacionales
(crear tablas, definir las relaciones entre ellas, gestión de transacciones, crear índices etc, SQL Server apoya una
lista que aumenta de otras herramientas de servicio; aparte de herramientas de terceros que cambian o que
completan lo que existe.

Respaldos y recuperaciones
Aparte de soluciones de alternativas a nivel del sistema operativo (respaldo de los archivos de la base de datos),
hay una herramienta integrada en el SQL Server que posibilita un respaldo completo o diferencial, de acuerdo
con el modelo de recuperación (Recovery Model) predefinido a la base de datos; y una recuperación completa o
a un punto de tiempo. Aparte de un respaldo de la base de datos se puede respaldarlos a través de un guion
(con o sin los datos). A partir de 2008, se puede comprimir los archivos de respaldo.

Compresión
A partir de 2008 se añadió la opción de compresión que posibilita comprimir el tamaño físico de las tablas y los
índices, y utilizar más eficientemente el volumen de los discos rígidos y reducir operaciones de IO (lo que
aumenta la carga del CPU). Como ya ha sido mencionado, se puede comprimir también los archivos de respaldo.

Replicación, alta disponibilidad, y recuperación de desastres


Algunas herramientas posibilitan crear réplicas parciales o completos de las bases de datos, mejorar la
disponibilidad, y recuperar de desastres; aparte de la opción de respaldar y recuperar las bases de datos, una
opción que se supone que es muy lenta.

Las copias creadas por estas herramientas, pueden ser utilizadas como un respaldo disponible inmediatamente
en caso de que el sistema falla, tanto como una réplica en un subsistema, independiente del sistema de origen,
para equilibrio de carga; y que las actualizaciones se ejecuten en la base de datos, y las recuperaciones para los
reportajes se ejecuten en la réplica.

Entre dichas herramientas se puede mencionar la replicación que posibilita crear una réplica sincronizada de la
base de datos, el Mirroring que ejecuta en el servidor de espejo cada actualización que se ejecuta en el servidor
de origen, Log Shipping que posibilita almacenar una copia sincronizada a través de archivos de registro (Log)
con todas las actualizaciones en el servidor de origen, y las herramientas de alta disponibilidad y recuperación
de desastres (HADR, desde 2012) que solucionan problemas de Mirroring en relación con el tiempo de reacción
de los fallos técnicos y la disponibilidad de las copias en tiempos de paz.

El agente y la programación de tareas


El agente es el servicio encargado de la programación de tareas, y se encarga de ejecutarlas
independientemente. Generalmente el ejecuta tareas de mantenimiento, tareas complejas de ETL, respaldos,
etc.

Mantenimiento
Con el fin de mejorar el rendimiento del sistema hay que mantener las estadísticas, utilizadas por el
optimizador, organizar los archivos físicos, etc; y se utilizan herramientas dedicadas para estos propósitos, que

16
se ejecutan periódicamente por tareas programadas, y de una manera coordinada con las tareas de ETL y de
respaldo.

Service broker
Una tecnología que fue agregada en 2005 que implementa arquitectura orientada a servicios, y que posibilita
ejecuciones asíncronos: primero que nada para enviar mensajes entre distintas aplicaciones que se ejecutan
simultáneamente, pero también para ejecutar procedimientos asíncronamente, en la manera de dispara y
olvida - un procedimiento que se ejecuta en una sesión diferente de la sesión que lo inicio, y ambos
procedimientos siguen ejecutado independientemente uno del otro.

Enviar correos electrónicos


SQL Server tiene la capacidad de enviar correos electrónicos a través del código. Esta funcionalidad se utiliza
generalmente para enviar alertas sobre problemas en el sistema (por ejemplo si el uso de la CPU aumentó hasta
un umbral predefinido o si el proceso ETL falló), pero también cuando el proceso terminó exitosamente.

Full text search (Búsqueda de textos completos)


Una herramienta que posibilita indexar columnas textuales como textos y no solo como cadenas; y ejecutar
búsquedas complejas dependientes en el sentido del texto y en el idioma. Por ejemplo, buscamos un verbo, y
queremos obtener todas las ocurrencias de sus conjugaciones.

Rastrear
Estas herramientas incluyen el Trace que posibilita rastrear actividades con el fin de mantener cargas y fallos, y
seguridad de datos (recuperación no permitida de datos), el Profiler que posibilita rastrear los commandos que
se ejecutan y los eventos que se ocurren en el servidor, y el Extended Events que fue agregado en 2008 y cambia
el profiler gracias a su baja signatura (la consumición de recursos y la influencia sobre el rendimiento del
servidor).

Aparte de estos, se puede utilizar 2 tipos de Triggers (disparadores) para rastrear los cambios y las actividades:
DML Triggers pre definidos sobre las tablas y las vistas y que se inician por instrucciones de actualización de
datos (Select / Update / Delete), y DDL Triggers que se inician por cambios en los objetos mismos (y no en los
datos), en el nivel de la base de datos o del servidor.

Combinación de CLR
A partir de 2005 se puede combinar fácilmente en SQL Server procedimientos, funciones, y funciones de
agregado desarrolladas en CLR. Hay que desarrollar el código en una de las herramientas de desarrollo de .NET,
crear un archivo DLL, y combinarlo en el sistema. La ventaja de esta tecnología es sus capacidades en problemas
que no son exclusivamente de bases de datos (manipulación de datos), e incluyen cálculos complejos o
manipulaciones textuales de cadenas.

Herramientas de inteligencia empresarial


Una instalación típica incluye también las herramientas de Inteligencia empresarial (en inglés, bussiness
intelligence o BI):

SSIS (SQL Server Integration Services)

Una herramienta de ETL que posibilita la extracción de datos de distintos orígenes (no solo SQL Server), la
transformación de dichos datos, y la carga (generalmente pero no obligatoriamente a almacén de datos).

SSAS (SQL Server Analysis Services)

17
Una herramienta para crear Bases de Datos Multidimensionales (no relacionales), que se puede explorar
mediante extracciones de datos en distintos niveles de agrupación, profundización (Drill Down) de una suma a
sus detalles, y utilización de MDX (un lenguaje parecido a SQL, adaptado a bases de datos multidimensionales).

SSRS (SQL Server Reporting Services)

Una herramienta para crear y dar formato a informes, otorgar derechos de contemplación en ellos, y su
distribución. Se puede contemplarlos con un Navegador web, y se puede exportarlos a archivos de Excel, PDF,
etc. los datos se extraen generalmente del almacén de datos o del OLAP.

De esta manera, esta investigación formara parte del aprendizaje obtenido acerca de una de las herramientas
muy importantes basado en la creación de base de datos. Y que posteriormente lo emplearemos en nuestra
vida profesional.

Publicaciones de cada versión


Acá podemos ver los niveles de Service Pack (SP) que ha alcanzado una versión y los diferentes Cumulative
Updates (CU) liberados. Esto quiere decir que mínimamente deberíamos tener estos valores en nuestros
servidores.

  RTM SP1 SP2 SP3 SP4

SQL Server 2019 15.0.4043.16


CU 5

SQL Server 2017 14.0.3335.7


CU 21

SQL Server 2016 13.0.2216.0 13.0.4574.0 13.0.5820.21


CU 9 CU 15 CU 13

SQL Server 2014 12.0.2569.0 12.0.4522.0 12.0.5687.1 12.0.6329.1


CU 13 CU 18 CU 4

SQL Server 2012 11.0.2100.60 11.0.3487.0 11.0.5678.0 11.0.6607.3 11.0.7001.0


CU 16 CU 16 CU 10

SQL Server 2008 R2 10.50.1600.1 10.50.2500.0 10.50.4000.0 10.50.6000.34

SQL Server 2008 10.0.1600.22 10.0.2531.0 10.0.4000.0 10.0.5500.0 10.0.6000.29

SQL Server 2005 9.0.1399.06 9.0.2047 9.0.3042 9.0.4035 9.0.5000

SQL Server 2000 8.0.194 8.0.384 8.0.532 8.0.760 8.0.760

SQL Server 7 7.0.623 7.0.699 7.0.842 7.0.961 7.0.1063


Se puede notar la variación de colores en la tabla, haciendo referencia a un mapa de calor que muestra las
diferentes versiones en el tiempo y el significado que tienen en su categoría.

Podemos resumirlo de la siguiente manera según los tonos.

 VERDE: las versiones con soporte vigente


 NARANJA: soporte alternativo para estas versiones

18
 ROJO: son las versiones que esperamos no tener ninguna en ambiente de Producción por la ausencia
total de soporte de fábrica.

Resumen de las versión

Génesis
El 12 de junio de 1988 Microsoft se unió a Ashton-Tate y Sybase para crear una variante de Sybase SQL Server
para IBM OS / 2 (a continuación, desarrollado conjuntamente con Microsoft), que fue lanzado el año siguiente.
Esta fue la primera versión de Microsoft SQL Server, y sirvió como la entrada de Microsoft en el mercado de
bases de datos a nivel de empresa, compitiendo contra Oracle , IBM, y más tarde, Sybase. SQL Server 4.2 fue
enviado en 1992, que se incluye con OS / 2 versión 1.3, seguido de la versión 4.21 para Windows NT , lanzado
junto con Windows NT 3.1. SQL Server 6.0 fue la primera versión diseñada para NT, y no incluye ninguna
dirección de Sybase.

Sobre el momento en Windows NT fue lanzado en julio de 1993, Sybase y Microsoft se separaron y cada
prosiguió sus propios esquemas de diseño y marketing. Microsoft negocia los derechos exclusivos para todas las
versiones de SQL Server escritos para sistemas operativos de Microsoft. (En 1996 Sybase cambió el nombre de
su producto a Adaptive Server Enterprise para evitar confusiones con Microsoft SQL Server.) Hasta 1994, SQL
Server de Microsoft lleva tres avisos de derechos de autor Sybase como una indicación de su origen.

19
SQL Server 7.0
SQL Server 7.0 fue un importante reescritura (C ++) de la mayor motor Sybase, que fue codificado en
páginas C. Los datos fueron ampliada de 2K bytes a 8k bytes. Extensión de ese modo crecieron de 16k
bytes a 64k bytes. Modo de usuario Scheduling (UMS) se introdujo para manejar hilos SQL Server mejor
que Windows preventivo multi-roscado, también la adición de soporte para las fibras (hilos ligeros,
introducido en NT 4.0, que se utilizan para evitar el cambio de contexto). SQL Server 7.0 también introdujo
un producto de base de datos multidimensional denominado Servicios OLAP de SQL (que se convirtió en
Analysis Services de SQL Server 2000). SQL Server 7.0 sería la última versión para ejecutar en la
plataforma de DEC Alpha. Aunque hubo versiones preliminares de SQL 2000 (así como Windows 2000)
compilado para Alpha, éstos fueron cancelados y nunca fueron puestos en libertad en el comercio.

SQL Server 2000


SQL Server 2000 incluye varias modificaciones y ampliaciones de la base de código de Sybase, añadiendo
soporte para el IA-64 arquitectura (ahora fuera de apoyo "corriente principal"). Por SQL Server 2005 el código de
Sybase legado había sido completamente reescrito.

Desde el lanzamiento de SQL Server 2000, se han logrado avances en el rendimiento, las herramientas IDE
cliente, y varios sistemas complementarios que están empaquetados con SQL Server 2005. Estos incluyen:

 Una extracción, transformación y carga (ETL) de herramientas (SQL Server Integration Services o SSIS )
 Servicios de SQL Server Reporting Services (SSRS), o "servidor de informes"
 un OLAP y minería de datos del servidor ( Analysis Services )
 varias tecnologías de mensajería, en concreto servicios de Service Broker y Notificación

SQL Server 2000 también introdujo muchas mejoras del lenguaje T-SQL, como variables de tabla, funciones
definidas por el usuario, vistas indizadas, en vez de disparadores, restricciones referenciales en cascada y un
poco de soporte básico XML.

Con el lanzamiento de Service Pack 3, Microsoft también lanzó la primera versión de 64 bits de SQL Server para
el Itanium plataforma IA-64. (que no debe confundirse con el x86-64 plataforma) Sólo el motor relacional de SQL
Server y el Agente SQL se portado a Itanium en este momento. Herramientas de cliente, como encargado de la
empresa, aún necesitarían ser ejecutado desde los clientes x86 de 32 bits. La primera versión de SQL IA-64 fue la
versión 8.00.760, con una fecha de creación, de 6 de febrero de 2003.

SQL Server 2005


SQL Server 2005 (con nombre código "Yukon") publicado en noviembre de 2005. Se incluye soporte nativo para
el manejo de XML de datos, además de datos relacionales . Para este fin, se define un xml tipo de datos que
podría ser utilizado ya sea como un tipo de datos en las columnas de base de datos o como literales en las
consultas. Las columnas XML se pueden asociar con XSD esquemas; Datos XML almacenados se verifica en el
esquema. XML se convierte en un tipo de datos binario interno antes de almacenarse en la base de datos. Se
pusieron a disposición para los datos XML métodos de indexación especializados. De datos XML se consulta
utilizando XQuery ; SQL Server 2005 añadió algunas extensiones a la T-SQL lenguaje para permitir la
incorporación de consultas XQuery en T-SQL. Además, también define una nueva extensión de XQuery, llamado
XML DML, que permite modificaciones basados en consultas a los datos XML. SQL Server 2005 también permite
a un servidor de base de datos para ser expuesto sobre los servicios web utilizando secuencia de datos tabular
(TDS) paquetes encapsulados dentro de SOAP (protocolo) las solicitudes. Cuando se accede a los datos sobre los
servicios web, los resultados se devuelven como XML.

Common Language Runtime integración (CLR) se introdujo con esta versión, lo que permite una para escribir
código SQL como código administrado por el CLR. Para los datos relacionales, T-SQL ha sido aumentada con
funciones de control de errores (prueba / captura) y el apoyo a las consultas recursivas con CTE (expresiones de

20
tabla comunes). SQL Server 2005 también se ha mejorado con nuevos algoritmos de indexación, sintaxis y
mejores sistemas de recuperación de errores. Las páginas de datos son una suma de comprobación para una
mejor resistencia a los errores, y el apoyo de concurrencia optimista se ha añadido para un mejor rendimiento.
Permisos y control de acceso se han hecho más granular y el procesador de consultas se ocupa de la ejecución
simultánea de las consultas de una manera más eficiente. Particiones en las tablas e índices están soportados de
forma nativa, por lo que la ampliación a cabo una base de datos en un clúster es más fácil. SQL CLR se introdujo
con SQL Server 2005 para dejar que se integre con el .NET Framework.

SQL Server 2005 introduce Multi-Version control de concurrencia (MVCC). Características enfrenta el usuario
incluyen nuevo nivel de aislamiento de transacción llamada de instantáneas y una variación del nivel de
aislamiento READ COMMITTED basada en instantáneas de datos a nivel de declaración.

SQL Server 2005 introduce "Mars" (resultados múltiples activos Sets), un método de permitir el uso de
conexiones de bases de datos para múltiples propósitos.

SQL Server 2005 introduce DMV (vistas de administración dinámica), que son vistas especializadas y funciones
que devuelven información de estado del servidor que se puede utilizar para supervisar el estado de una
instancia de servidor, diagnosticar problemas y ajustar el rendimiento.

SQL Server 2005 fue la primera versión con soporte nativo para el x64 plataforma.

Service Pack 1 (SP1) de SQL Server 2005 de base de datos introducido Mirroring, una opción de alta
disponibilidad que proporciona capacidades de redundancia y conmutación por error en el nivel de base de
datos. Conmutación por error se puede realizar manualmente o puede ser configurado para la conmutación por
error automática. failover automático requiere un socio testigo y un modo de funcionamiento de síncrona
(también conocido como de alta seguridad o de seguridad completa). Reflejo de base se incluyó en el primer
lanzamiento de SQL Server 2005 para fines de evaluación. Antes de SP1, no se ha activado por defecto, y no fue
apoyada por Microsoft.

El soporte extendido para SQL Server 2005 terminó el 12 de abril 2016.

SQL Server 2008


SQL Server 2008 (con nombre código "Katmai") fue lanzado el 6 de agosto de 2008, anunció que el Grupo de
Interés Especial de SQL Server en la Conferencia de Usuarios ESRI 2008 el 6 de agosto de 2008 por Ed Katibah
(Gerente del Programa Espacial de Microsoft), y los objetivos para que la gestión de datos de ajuste automático ,
auto-organización y auto-mantenimiento con el desarrollo de SQL Server Always On tecnologías, para
proporcionar el tiempo de inactividad de casi cero. SQL Server 2008 también incluye soporte para estructuradas
de datos y semi-estructurados, incluyendo formatos de medios digitales para imágenes, audio, vídeo y otros
datos multimedia. En las versiones actuales, tales datos multimedia se pueden almacenar como BLOB (objetos
binarios grandes), pero son flujos de bits genéricos. Conciencia intrínseca de datos multimedia permitirá a
funciones especializadas a realizar sobre ellos. De acuerdo con Paul Flessner , vicepresidente senior de
aplicaciones de servidor de Microsoft, SQL Server 2008 puede ser un motor de almacenamiento de datos para
diferentes variedades de datos: XML, correo electrónico, calendario, tiempo / archivo, documento, espacial, etc.
, así como realizar la búsqueda , consulta, análisis, el intercambio, y la sincronización en todos los tipos de datos.

Otros nuevos tipos de datos incluyen la fecha y tipos de tiempo y una especializados espacial tipo de datos para
los datos dependientes de la ubicación. Mejor soporte para datos no estructurados y semi-estructurados se
proporciona el uso de la nueva FILESTREAM tipo de datos, que puede ser utilizado para hacer referencia a

21
cualquier archivo almacenado en el sistema de archivos. Los datos estructurados y los metadatos del archivo se
almacena en la base de datos de SQL Server, mientras que el componente no estructurada se almacena en el
sistema de archivos. Tales archivos se puede acceder tanto a través de Win32 manejo de archivos API , así como
a través de SQL Server a través de T-SQL ; haciendo éste accede a los datos del archivo como un BLOB. Copia de
seguridad y restauración de la base de datos una copia de seguridad o restaura los archivos de referencia
también. SQL Server 2008 también soporta de forma nativa de datos jerárquica, e incluye T-SQL construye a
tratar directamente con ellos, sin el uso de consultas recursivas.

La búsqueda de texto completo funcionalidad se ha integrado con el motor de base de datos. De acuerdo con un
artículo técnico de Microsoft, esto simplifica la gestión y mejora el rendimiento.

Los datos espaciales se almacenarán en dos tipos. Un tipo de datos "Flat Earth" (geometría o planar) representa
los datos geoespaciales que ha sido proyectadas desde su nativo, esférica, el sistema de coordenadas en un
plano. Un tipo de datos "Round Earth" (geografía) utiliza un modelo elipsoidal en la que se define la Tierra como
una sola entidad continua que no sufre de las singularidades, como la fecha internacional, postes, o mapa de la
zona de proyección "bordes". Aproximadamente 70 métodos están disponibles para representar operaciones
espaciales para el Open Geospatial Consortium características simples para SQL , Versión 1.1.

SQL Server incluye mejores características de compresión, lo que también ayuda en la mejora de la
escalabilidad. Se ha mejorado los algoritmos de indexación e introdujo la noción de índices filtrados. También
incluye regulador de recursos que permite reservar recursos para ciertos usuarios o flujos de trabajo. También
incluye capacidades de cifrado transparente de datos (TDE), así como la compresión de copias de seguridad. SQL
Server 2008 es compatible con el [Link] Entity Framework y las herramientas de información, replicación y
definición de datos se construirá alrededor del Entity Data Model . SQL Server Reporting Services ganará
capacidades de gráficos de la integración de los productos de visualización de datos de Dundas Data
Visualization, Inc. , que fue adquirida por Microsoft. Por el lado de la gestión, SQL Server 2008 incluye el Marco
de Gestión declarativa que permite la configuración de las políticas y restricciones, sobre la totalidad de las
tablas de base o ciertas, de forma declarativa. La versión de SQL Server Management Studio incluye con SQL
Server 2008 es compatible con IntelliSense para las consultas SQL contra una base de datos del motor de SQL
Server 2008. SQL Server 2008 también hace que las bases de datos disponibles a través de Windows PowerShell
proveedores y funcionalidad de gestión disponibles como cmdlets , por lo que el servidor y todas las instancias
en ejecución se pueden administrar desde Windows PowerShell .

El servicio envase final de SQL Server 2008 (10.00.6000, Service Pack 4) fue lanzado el 30 de septiembre de
2014.

SQL Server 2008 R2


SQL Server 2008 R2 (10.50.1600.1, con nombre código "Kilimanjaro") fue anunciado en TechEd 2009, y fue
lanzado a la fabricación , el 21 de abril de 2010. SQL Server 2008 R2 agrega ciertas características de SQL Server
2008 que incluye una gestión de datos maestros del sistema de marca como master Data Services , una gestión
centralizada de las entidades y las jerarquías de datos maestros. También Multi Management Server, una
consola centralizada para gestionar múltiples instancias de SQL Server 2008 y servicios, incluyendo bases de
datos relacionales, Reporting Services, Analysis Services y Integration Services.

SQL Server 2008 R2 incluye una serie de nuevos servicios, incluyendo PowerPivot para Excel y SharePoint ,
Master Data Services , StreamInsight , el Generador de informes 3.0, Reporting Services complemento para
SharePoint, una función de capa de datos en Visual Studio que permite a los envases de las bases de datos por
niveles como parte de una aplicación, y una utilidad de SQL Server denominada UC (Punto de control de

22
Servicios), parte de AMSM (aplicación y administración de varios servidores) que se utiliza para gestionar
múltiples servidores SQL Server.

El primer servicio R2 pack de SQL Server 2008 (10.50.2500, Service Pack 1) fue lanzado el 11 de julio, 2011.

El segundo servicio R2 pack de SQL Server 2008 (10.50.4000, Service Pack 2) fue lanzado el 26 de julio de 2012.

El servicio R2 envase final de SQL Server 2008 (10.50.6000, Service Pack 3) fue lanzado el 26 de septiembre de
2014.

SQL 2008 R2 sería la última versión de SQL Server para ejecutarse en el Itanium plataforma (IA-64). Sin embargo,
la plataforma x64 continuaría en vigor.

SQL Server 2012


En el 2011 la Asociación Profesional para SQL Server cumbre (PASS) el 11 de octubre, Microsoft anunció que la
próxima versión de SQL Server (con nombre en código "Denali"), sería de SQL Server 2012. Fue lanzado a
fabricar el 6 de marzo de 2012. SQL Server 2012 Service pack 1 fue lanzado a la fabricación, el 9 de noviembre
de 2012, y Service pack 2 fue lanzado a fabricar el 10 de junio de 2014.

Se anunció que es la última versión compatible de forma nativa OLE DB y en lugar de preferir ODBC para la
conectividad nativa.

SQL Server nuevas características y mejoras de 2012 incluyen siempre en las instancias de clúster de SQL Server
de conmutación por error y grupos de disponibilidad que proporciona un conjunto de opciones para mejorar la
disponibilidad de bases de datos, contenido de bases de datos que simplifican el traslado de bases de datos
entre instancias, nuevos y modificados vistas de administración dinámica y funciones, capacidad de
programación mejoras, incluyendo nuevas características espaciales, descubrimiento de metadatos, objetos de
secuencia y la sentencia throw, mejoras de rendimiento, tales como índices de almacén de columnas, así como
mejoras en línea y operaciones a nivel de partición y mejoras de seguridad, incluyendo el aprovisionamiento
durante la instalación, los nuevos permisos, la mejora de la gestión de roles y esquema predeterminado
asignación para grupos.

SQL Server 2014


SQL Server 2014 fue lanzado a la fabricación el 18 de marzo de 2014, y lanzado al público en general el 1 de abril
de 2014 y el número de compilación 12.0.2000.8 fue en el lanzamiento. Hasta noviembre de 2013 podamos
eran dos revisiones CTP, CTP1 y CTP2. SQL Server 2014 proporciona una nueva capacidad en memoria para las
tablas que pueden caber completamente en la memoria (también conocido como Hekaton ). Mientras que las
tablas pequeñas pueden ser totalmente residente en memoria en todas las versiones de SQL Server, que
también pueden residir en el disco, por lo que el trabajo está involucrado en la reserva de memoria RAM , la
escritura desalojado páginas en el disco, cargar nuevas páginas desde el disco, el bloqueo de las páginas en la
memoria RAM, mientras que están siendo operado, y muchas otras tareas. Por tratamiento de una tabla como
garantía de ser totalmente residente en memoria gran parte de la 'cañerías' de bases de datos basadas en disco
se puede evitar.

23
Para aplicaciones de SQL Server basados en disco, sino que también proporciona el SSD agrupación de
almacenamiento intermedio de extensión, lo que puede mejorar el rendimiento de caché entre la RAM y los
medios de girar.

SQL Server 2014 también mejora la solución de la Always On (HADR) aumentando cuentan los secundarios
legibles y el mantenimiento de las operaciones de lectura sobre desconexiones secundarios-primaria, y
proporciona nueva recuperación de desastres híbrido y soluciones de copia de seguridad con Microsoft Azure,
permitiendo a los clientes utilizar las habilidades existentes con el en las instalaciones versión de SQL Server
para tomar ventaja de los centros de datos globales de Microsoft. Además, se aprovecha de las nuevas de
Windows Server 2012 y Windows Server 2012 R2 capacidades de escalabilidad de la aplicación de base de datos
en un entorno físico o virtual.

Microsoft ofrece tres versiones de SQL Server 2014 para la descarga: el que se ejecuta en Microsoft Azure , SQL
Server 2014 CAB, y SQL Server 2014 ISO.

SQL Server 2014 SP1, que consiste principalmente de correcciones de errores, fue puesto en libertad el 15 de
mayo de 2015.

SQL Server 2014 es la última versión disponible en la arquitectura x86 / IA32.

SQL Server 2016

La fecha de lanzamiento oficial de la disponibilidad general (GA) para SQL Server 2016 fue de 1 de junio de 2016.
El RTM versión es 13.0.1601.5.

SQL Server 2016 es compatible con los procesadores x64 solamente. Ya no se admite en procesadores x86.

SQL Server 2017

Microsoft SQL Server 2017 es la versión más reciente disponible. Microsoft SQL Server 2017 puso en marcha el 2
de octubre 2017 junto con el soporte para Linux.

BIBLIOGRAFIA

[Link]

[Link] sql-server

[Link] sgbd-13333545?related=1

[Link]

[Link]

[Link]

[Link]

24
[Link]

[Link]

25

También podría gustarte