2. S ISTEMAS UNI
SQL Server es un Sistema de Gestión de Bases de Datos Relaciónales (SGBDR), desarrollado por
Microsoft, que permite, como su propio nombre indica, la gestión de un entorno de bases de datos
relacional. SQL Server abarca, tanto el área de diseño, como la de administración, proporcionando
un interfaz bastante amigable con el usuario.
¿Por qué se llama SQL Server?. Pues bien, se llama SQL porque utiliza este lenguaje para la
definición y manejo de los datos, y se llama Server porque dispone de una parte servidora que se
encarga de atender a los procesos clientes, que son los que realizan las peticiones a éste; es decir,
sigue una arquitectura cliente/servidor.
SQL Server utiliza una extensión al SQL estándar, que se denomina Transact SQL. Esto quiere
decir que soporta el SQL de ANSI, pero además se le han añadido ciertas funciones adicionales,
no contempladas en el estándar, y que son específicas para este producto, es decir, si ejecutamos
una sentencia del conjunto adicional (Transact SQL) en otro SGBRD, éste no la entendería.
El Transact SQL, soporta la definición, modificación y eliminación de bases de datos, tablas,
atributos, índices, etc., es decir, el lenguaje de definición de datos (DDL), así como la consulta,
actualización y borrado de Tuplas o Registros de tablas, es decir, el lenguaje de manipulación de
datos (DML).
El curso sera totalmente practico con bastantes ejercicios para que puedes aprender y
dominar los comandos esenciales para que puedas aplicarlos en distintas necesidades que el
mercado laboral como Administrador de bases de datos o como desarrollador de sistemas
Cliente / Servidor o para aplicaciones en un entorno WEB.
PROFESOR:HENRY CHAVEZ VIERA
Docente de sistemas UNI
SQL SERVER Implementacion Pag.2
3. S ISTEMAS UNI
LO NUEVO EN SQL-SERVER 2000
Veremos en esta sesion las mejoras que ha sufrido esta versión 2000, con respecto a las
anteriores, mejoras que pasamos a detallar a continuación.
NUEVAS CARACTERÍSTICAS
Entre las nuevas características que ofrece SQL-Server 2000, cabe destacar las siguientes:
• Soporte para XML.
• Funciones de usuario.
• Indexación de vistas.
• Nuevos tipos de datos.
• Nuevos triggers.
• Reglas de integridad referencial en cascada.
• Nuevas características de indexación.
• Soporte para consultas distribuidas.
• Características de seguridad y cifrado de datos.
SOPORTE PARA XML
El Extensible Markup Language, más conocido como XML es un metalenguaje, es decir, un
lenguaje utilizado para definir lenguajes, y que se usa sobre todo para el intercambio de
datos.
Su sintaxis es similar a la que nos ofrece el HTML, es decir, un conjunto de etiquetas que
definen la estructura de los datos.
El Código fuente 2 define un posible formato de intercambio.
<cliente>
<nombre>Pepe</nombre>
<apellidos>Lopez</apellidos>
<telefono>912345678</telefono>
</cliente>
SQL-Server 2000 ofrece la posibilidad de devolver un conjunto de resultados utilizando para
ello este tipo de formato, facilitando así el intercambio de datos.
SQL SERVER Implementacion Pag.3
4. S ISTEMAS UNI
FUNCIONES DE USUARIO
Una funcionalidad nueva que aparece en esta versión del SGBD es la de permitir al
usuario definir sus propias funciones. De esta forma se pueden definir funciones que
oculten parte de la complejidad que puede entrañar una consulta, no sólo para la
posterior reutilización de la misma, sino también teniendo en cuenta la abstracción
para otros programadores que puedan precisar su uso.
INDEXACIÓN DE VISTAS
Esta funcionalidad permite optimizar la ejecución de vistas que actúan sobre la base
de datos, creando índices sobre los resultados de ejecución de la misma, que son
almacenados en la base de datos. El usuario no debe preocuparse de la actualización
de los datos, sino que éstos son indexados automáticamente cada vez que se
actualicen.
NUEVOS TIPOS DE DATOS
SQL-Server 2000 soporta tres nuevos tipos de datos con respecto a la anterior
versión, la 7, que son el bigint o entero de 8 bytes, sql_variant, que soporta el
almacenamiento de valores de distintos tipos, y table, que permite el almacenamiento
temporal de resultados para su uso posterior.
NUEVOS TRIGGERS
Un trigger o desencadenador es un código especial que se ejecuta cuando se cumple
una determinad a condición, como por ejemplo al modificar o borrar datos (se verá en
detalle en un capítulo posterior).
SQL-Server 2000 soporta dos nuevos tipos de triggers, que son INSTEAD OF y que
sustituye el comportamiento de ciertos comandos, como por ejemplo insert, update o
delete, y AFTER, que se ejecuta una vez concluida la acción que lo ha
desencadenado.
REGLAS DE INTEGRIDAD REFERENCIAL EN
CASCADA
Las reglas de integridad referencial son la base del mantenimiento de la consistencia
en la base de datos, y hacen referencia a información que esta relacionada entre si,
como por ejemplo el departamento de un empleado cuyo código se especifica. La
forma más usual de mantenerlo es usando claves foráneas, y especificando el
comportamiento de las inserciones, borrados y actualizaciones de este tipo de datos.
SQL SERVER Implementacion Pag.4
5. S ISTEMAS UNI
NUEVAS CARACTERÍSTICAS DE INDEXACIÓN
Las nuevas características de indexación permiten crear índices sobre campos calculados (no
existen como tal en la base de datos, sino que se calculan a partir de otros valores), así como
especificar si se desea construir estos índices de manera paralela, lo que aumenta la
velocidad de procesado.
SOPORTE PARA CONSULTAS DISTRIBUIDAS
El optimizador de consultas ofrece la funcionalidad de ubicar datos en servidores distribuidos,
dependiendo de valores tales como el nivel de carga, el tráfico de red, etc., de manera que las
consultas pueden acceder a distintos servidores para obtener el resultado final.
CARACTERÍSTICAS DE SEGURIDAD Y
CIFRADO DE DATOS
SQL-Server 2000 utiliza Kerberos como servidor de autenticación, para acreditar el acceso al
servidor que se realiza desde el cliente, así como diversas técnicas de seguridad.
VERSIONES DE SQL SERVER
Existen varias ediciones de SQL Server. Es muy fácil escogerla basándose en la cantidad de
memoria y el número de CPUs que es necesario utilizar. Las ediciones de SQL Server se
describen aquí.
SOFTWARE PARA CLIENTES
Los componentes para clientes de SQL Server 2000 consisten en las bibliotecas y
utilidades de red necesarias para acceder a un sistema SQL Server remoto o local. Estos
componentes son necesarios para que cualquier sistema acceda a SQL Server, y son
idénticos independientemente de la edición de SQL Server instalada.
PERSONAL EDITION
La versión Personal Edition de SQL Server está diseñada para pequeñas bases de datos a
las que se accede localmente en un sistema cliente. SQL Server 2000 Personal Edition no
permite que otros equipos obtengan acceso a la base de datos.
STANDARD EDITION
SQL Server 2000 Standar Edition es una de las dos ediciones servidoras de SQL Server
2000. La versión Standar Edition funciona de la misma forma que la versión Enterprise
Edition, excepto que sólo se puede acceder a un máximo de cuatro CPUs y 4 GB de memoria
con la versión Standar Edition.
SQL SERVER Implementacion Pag.5
6. S ISTEMAS UNI
ENTERPRISE EDITION
La versión Enterprise Edition de SQL Server soporta todas las características y la
funcionalidad de todas las versiones de Windows 2000. SQL Server 2000 Enterprise Edition
requiere Windows 2000 Advanced Server o Windows 2000 Datacenter. Además, SQL
Server 2000 Enterprise Edition soporta clústeres de conmutación por error y vistas
distribuidas actualizables.
SQL SERVER Implementacion Pag.6
8. S ISTEMAS UNI
INSTALACIÓN DE SQL SERVER 2000
En este capítulo, veremos como instalar SQL Server 2000, y las distintas opciones que
plantea.
1. Para empezar, introduzca el CD-ROM que contiene el programa. Si no arranca
automáticamente, utilice el explorador para ejecutar el fichero autorun contenido en el
CD-ROM.
a. Tenemos dos opciones, la STANDARD o la PERSONAL.
i. La primera de ellas realiza una instalación completa, incluyendo los
componentes servidor, mientras que la segunda es útil en el caso de
que no dispongamos de un servidor. La primera pantalla que aparece
es la que se muestra en la Figura
En nuestro caso instalaremos la opción STANDARD (si no disponemos de un servidor,
únicamente se instalarán los componentes cliente).
2. En principio, el único requisito que se necesita es disponer de un equipo con al menos
64 Mb de memoria RAM (recomendable 128 Mb) y sistema operativo Windows
98/NT/2000, en el cual se haya instalado la versión 5.5 del navegador WEB Microsoft
Internet Explorer.
SQL SERVER Implementacion Pag.8
9. S ISTEMAS UNI
.
3. Para proseguir la instalación, pulsamos la
opción SQL Server 2000 Components,
apareciéndonos la pantalla que muestra
la Figura
4. Pulsamos el botón Next (Siguiente), visualizándose la pantalla que se muestra en la
Figura
En este caso, puesto que queremos instalar los componentes cliente en nuestro
equipo local, sólo nos permite la selección de esta opción.
5. Si pulsamos el botón Next (Siguiente), visualizaremos la siguiente pantalla que
muestra la Figura
Nuevamente, al estar instalando la versión standard en un equipo con Windows 98,
sólo se nos permite seleccionar la opción de crear una nueva instancia de SQL Server.
6. Pulsando el botón Next (Siguiente), obtendremos la pantalla que se muestra en la
Figura, donde se nos insta a poner nuestro nombre y compañía.
SQL SERVER Implementacion Pag.9
10. S ISTEMAS UNI
7. Si pulsamos nuevamente el botón Next (Siguiente), podremos visualizar la pantalla
que se muestra en la Figura, cuyo cometido es el de mostrarnos las condiciones de
uso de la licencia; pulsamos Yes (si) para pasar a la siguiente pantalla que se indica
en la Figura
8. Seleccionando la opción de instalación de las herramientas cliente y pulsando el botón
Next, accederemos a la pantalla de la Figura, en la que podemos seleccionar los
componentes y subcomponentes a instalar.
SQL SERVER Implementacion Pag.10
11. S ISTEMAS UNI
9. Dejamos marcados los que vienen por defecto y pulsamos el botón Next (siguiente),
para acceder a la página de la Figura, tras la cual el sistema empezará a instalar los
componentes seleccionados y, tras unos minutos, mostrará la pantalla final en la cual
se nos informa de la conclusión del proceso de instalación, como muestra la Figura
SQL SERVER Implementacion Pag.11
12. S ISTEMAS UNI
REQUERIMIENTOS DE SQL SERVER 2000
RELATIVAS AL HARDWARE
Después de determinar la versión del sistema operativo y de SQL Server 2000 necesarias,
nos queda, exclusivamente, el problema del hardware. SQL Server 2000 debe ejecutarse en
un sistema con memoria, velocidad de procesamiento y espacio de disco adecuados.
También necesita un plan apropiado de protección del sistema y de la información en el nivel
del hardware.
Las pautas clave para elegir el hardware adecuado para SQL Server son las siguientes:
• Memoria: Un mínimo de 256 MB de RAM para la edición Standard y 512 MB de RAM
para la edición Enterprise. Esto supera varías veces el requerimiento de memoria
mínimo de 32 MB y 64 MB respectivamente; la razón principal para esta necesidad de
memoria extra es el rendimiento. Juntos, los servicios de SQL Server 2000 y los
servicios estándar de Windows 2000 utilizan entre 80 y 100 MB de memoria como
base. Las conexiones de usuario consumen aproximadamente 24 KB cada una. Las
solicitudes de datos y otros procesos de SQL Server también utilizan memoria, y este
consumo de memoria se suma a todos los otros procesos y aplicaciones que se estén
ejecutando en el servidor.
• Procesador: SQL Server 2000 sólo se ejecuta en máquinas Intel x86 o compatibles;
no funcionará con procesadores Motorola MIPS R4000, PowerPC o DEC Alpha. SQL
Server logra unas altas prestaciones en las pruebas comparativas con Intel Pentium III
Xeon a 733 MHz y AMD Athlon a 1000 MHz. Ambos procesadores constituyen un
buen punto de partida para un sistema SQL Server medio. Puede lograr importantes
mejoras en el rendimiento con una gran cantidad de memoria caché interna del
procesador. La mayoría de los procesadores Xeon vienen con 512 KB, 1 MB o 2 MB
de memoria caché interna del procesador, y 2 MB de memoria caché permiten
conseguir un rendimiento general mucho mejor.
• SMP: SQL Server 2000 permite el uso de multiprocesadores simétricos y puede
procesar consultas complejas en paralelo. Las consultas en paralelo son valiosas
solamente cuando hay pocos usuarios en el sistema y se están procesando consultas
de gran complejidad. En un sistema dedicado que sólo esté ejecutando SQL Server y
dé servicio a menos de 100 usuarios simultáneos, un solo procesador debería ser
suficiente. Si el servidor presta servicio a más de 100 usuarios o no funciona en un
sistema dedicado, puede que convenga agregar procesadores (o utilizar un sistema
que permite añadir procesadores adicionales a medida que crezcan sus necesidades).
• Unidades de disco: La capacidad de almacenamiento de datos que necesite
dependerá totalmente del número y tamaño de las bases de datos a las que el
servidor dé servicio. Necesitará suficiente espacio de disco para almacenar toda la
información, más el espacio de trabajo, archivos del sistema, memoria virtual, registros
de transacciones y, en el caso de un clúster, el disco de quórum. El rendimiento total
de E/S es tan importante como la capacidad de la unidad.
SQL SERVER Implementacion Pag.12
13. S
ISTEMAS UNI
SQL SERVER Implementacion Pag.13
14. S ISTEMAS UNI
SERVICIOS DE SQL SERVER
Normalmente, los servicios disponibles son el servidor de bases de datos en sí mismo
(MSSQLServer), el coordinador de transacciones distribuidas (MSDTC) y el agente de SQL
Server (SQLServerAgent). Basta con iniciar el servicio MSSQLServer para que estén
disponibles todas las bases del servidor.
Los servicios de SQL Server incluyen:
• MSSQLServer
• SQLServerAgent
• Microsoft Distributed Transaction Coordinator
(MSDTC),
• Microsoft Search.
SQL SERVER Implementacion Pag.14
15. S ISTEMAS UNI
EL ADMINISTRADOR DE SERVICIOS
El Administrador de servicios es una pequeña aplicación que permanece activa en la Bandeja
de íconos de la barra de Tareas de Windows de la computadora donde está instalado SQL
Server. Haciendo doble clic en este icono aparece la ventana del Administrador de servicios.
En ella es posible seleccionar cualquiera de los servicios de SQLServer para ver su estado o
para iniciarlo, detenerlo o ponerlo en pausa
Mediante el ícono del Administrador de servicios en la barra de Tareas se activa la ventana del mismo. Una vez
abierta, se puede utilizar para ver el estado de los servicios de SQL Server, así como iniciarlos, detenerlos o
ponerlos en pausa.
Normalmente, los servicios disponibles son el servidor de bases de datos en sí mismo
(MSSQLServer), el coordinador de transacciones distribuidas (MSDTC) y el agente de SQL
Server (SQLServerAgent).Basta con iniciar el servicio MSSQLServer para que estén
disponibles todas las bases del servidor
SERVICIO MSSQLSERVER
Este servicio es el motor de la Base de Datos. Este es el componente que procesa
todas las declaraciones de Transact-SQL y administra todos los archivos que definen
a la Base de Datos dentro del Servidor.
Sus características son:
• Asignar los recursos de la computadora a múltiples usuarios simultáneos.
• Previene problemas lógicos, tales como sincronización de peticiones de usuarios
que desean actualizar la misma información al mismo tiempo.
• Garantiza la integridad y consistencia de datos.
SQL SERVER Implementacion Pag.15
16. S ISTEMAS UNI
SERVICIO SQLSERVERAGENT
El Agente SQL Server admite funciones que permiten programar trabajos para ejecutarse en
forma periódica en Microsoft SQL Server 2000 o notificar a los administradores de sistemas
acerca de los problemas que han tenido lugar con el servidor. Los componentes del Agente
SQL Server que implementan dichas funciones son:
• Trabajos
Objetos definidos que constan de uno o más pasos para llevarse a cabo. Los pasos
son las instrucciones Transact-SQL que se van a ejecutar. Por ejemplo, se pueden
programar trabajos como crear copias de seguridad para que se ejecuten a horas
específicas o a intervalos regulares.
• Alertas
Acciones que se realizan cuando se producen sucesos específicos, como un error
concreto o errores de cierta gravedad, o cuando se alcanza el límite de espacio libre
disponible definido en una base de datos. Se puede definir que la alerta realice
acciones como el envío de mensajes de correo electrónico, mensajes de localización a
un operador o la ejecución de un trabajo que resuelva el problema.
• Operadores
Personas identificadas mediante sus cuentas de red o de correo electrónico, quienes
pueden resolver los problemas del servidor. Pueden ser destinos de las alertas, a
través de correo electrónico, un localizador o comandos de red envío de red.
SERVICIO MICROSOFT DISTRIBUTED
TRANSACTION COORDIRATOR:
• Se encarga de Coordinar la apropiada terminación de las transacciones
distribuidas para asegurar que, si todas las actualizaciones de todos los
servidores son correctas, queden como definitivas o que, en caso de errores,
se eliminen todas.
SQL SERVER Implementacion Pag.16
17. S ISTEMAS UNI
SERVICIO MICROSOFT SEARCH
El Servicio Microsoft Search es un motor de indexación(ordenacion) y de búsqueda de
texto que permite al SQL Server realizar consultas de texto eficaces y sofisticadas sobre
columnas que almacenan datos basados en caracteres(textos)
Pero antes de utilizar este servicio tenemos que instalarlo. El motor de texto se ejecuta como
un servicio denominado Microsoft Search en Windows NT Server, Windows 2000 y Windows
2003 Server y también se puede instalar durante la instalación del SQL Server (No está
disponible para la versión SQL Server Personal)
Para saber si este servicio está instalado en nuestro equipo la manera más sencilla es recurrir
al ‘Administrador de Servicios’ del SQL Server
Entre las diferencias existentes entre este servicio y las búsquedas que utilizan el operador
LIKE podemos citar las siguientes:
1. Se almacenan en el sistema de archivos y no en la base de datos, aunque es la base
de datos quien los administra.
2. Sólo se permite un índice de texto por cada tabla.
3. Si se desea agregar datos a los índices de texto hay que realizar un llenado manual o
programado (También se pueden llenar automáticamente en la inserción de datos).
• Son más rápidos y flexibles.
La utilización del servicio Microsoft Search tendrá dos vertientes. En primer lugar
tenemos que crear los índices de texto en las tablas deseadas y llenarlos, y en
segundo lugar el servicio realizará las búsquedas y devolverá conjuntos de resultados
adecuados al criterio de búsqueda.
SQL SERVER Implementacion Pag.17
18. S ISTEMAS UNI
SQL Server incluye una variedad de software para administrar y
mantener al servidor, encontrando ayuda acerca de temas específicos,
diseñando y creando Bases de Datos y buscando información.
SQL SERVER Implementacion Pag.18
19. S ISTEMAS UNI
EL ENTERPRISE MANNAGER-ADMINISTRADOR
CORPORATIVO
El ADMINISTRADOR CORPORATIVO es la herramienta más completa para configurar y
administrar la instalación de SQL Server. Mientras el Administrador de servicios permite
solamente iniciar, hacer una pausa o detener un servicio.
El Administrador corporativo presenta una interfase de usuario dividida en dos paneles: a
la izquierda muestra un árbol que contiene todos los elementos que puede manejar el
Administrador, y a la derecha contiene el detalle del objeto seleccionado en el frame de la
izquierda.
SQL SERVER Implementacion Pag.19
20. S
ISTEMAS UNI
SQL SERVER Implementacion Pag.20
21. S ISTEMAS UNI
El Administrador corporativo permite iniciar y detener un servidor, y también capacita para
realizar las siguientes tareas:
• Registrar el servidor.
• Configurar servidores locales y remotos.
• Configurar y administrar una instalación de múltiples servidores.
• Ajustar la seguridad de inicio de sesión y añadir usuarios, administradores de sistema
y operadores.
• Asignar una contraseña de administrador de sistema (system administrator, sa).
• Crear y programar trabajos.
• Crear alertas y configurar SQL Server para que se comunique con los
administradores de sistema a través de correo electrónico.
• Configurar y administrar bases de datos, tablas, índices, vistas, procedimientos
almacenados, reglas, desencadenadores, definiciones DEFAULT, dispositivos de
copia de seguridad y registros de error.
• Acceder al servidor: Una vez que se ha registrado el servidor, se pueden ver y
configurar varias propiedades. Si se tiene un entorno multiservidor, se puede utilizar el
Administrador corporativo para administrar y configurar los servidores desde un único
lugar.
• Cambiar la contraseña de administrador de sistema predeterminada Al instalar SQL
Server, la cuenta de administrador de sistema predeterminada se configura sin
contraseña. Se debe especificar una contraseña antes de comenzar a usar SQL
Server
SQL SERVER Implementacion Pag.21
22. S ISTEMAS UNI
REGISTRAR EL SERVIDOR SQL SERVER
Esta tarea es sumamente sencilla.
1. En primer lugar, en el menú Acción, se selecciona la opción Nuevo registro de servidor
SQL Server.... Con esto se iniciará el Asistente para registro de servidor SQL Server
2. Pulse clic en el botón Siguiente de la primera pantalla del asistente aparece otra pantalla
en la cual se debe ingresar el nombre del servidor que se desea registrar.
Suponiendo que vamos a registrar un servidor denominado “ADMINSUELDOS”, en el
cuadro de texto que encabeza la lista titulada Servidores disponibles deberíamos ingresar
este nombre –si es que no figura en la lista– y luego pulsar el boton Agregar para que
pase a la lista de Servidores
agregados Si hubiera más de
un servidor disponible, se
podrían registrar varios de una
sola vez, pasándolos a la lista
de la derecha antes de
cliquear en Siguiente.
SQL SERVER Implementacion Pag.22
23. S ISTEMAS UNI
Ahora el asistente solicita el modo de autenticación que se utilizará cada vez que se deba
conectar al servidor.
La elección en este caso depende de las políticas de seguridad que se hayan establecido
en la red. Pero generalmente (incluso en el caso de que el servidor corra localmente) se
debe seleccionar la segunda opción, que indica que se utilice Autenticación SQL Server,
o sea, que el nombre de usuario y password que se empleen para conectarse a la base
se validarán contra la lista de usuarios habilitados por SQL Server (la otra opción
determina que se validen contra los usuarios habilitados por Windows NT).
3. Hecho esto, se puede pulsar click en Siguiente y pasar al próximo paso,en el cual se
debe determinar si la conexión se hará automáticamente con un nombre de usuario y
password específicos o si éstos se solicitarán cada vez que se haga la conexión.
En caso de que se elija la primera opción, se puede optar por seleccionar el usuario
SA–por system administrator, se supone–, sin password, que se define por defecto en
las instalaciones nuevas de SQL Server .Lógicamente, si la base de datos requiere un
mínimo de seguridad para evitar el acceso de usuarios no autorizados, la primera
medida a tomar consiste en crear un nuevo usuario con los mismos derechos que SA,
pero con otro nombre y otra password, e inmediatamente eliminar el usuario SA.
4. En el paso siguiente hay que seleccionar un grupo de servidores bajo el cual se colocará
el nuevo registro de servidor. Esta agrupación es útil en empresas que cuentan con gran
cantidad de servidores reunidos por sectores (por ejemplo, Producción, Ventas,
Administración, etc.). Salvo
estos casos, se puede registrar
el nuevo servidor bajo el grupo
que se crea por defecto; si no
aparece ninguno, se puede crear
un grupo dándole el nombre que
uno desee
SQL SERVER Implementacion Pag.23
24. S ISTEMAS UNI
5. En la última pantalla del asistente se muestra la lista de servidores a agregar y el botón
Finalizar. Al cliquear en él, el asistente intentará registrar el o los servidores
seleccionados. Puede que se produzca un error durante el proceso de registración. En la
mayoría de los casos,el origen de la falla será un problema en la especificación de las
direcciones de red y los protocolos a utilizar, y demás parámetros de comunicación. Para
solucionarlo, hay que recurrir a la Herramienta de red de cliente y examinar la
configuración de la misma con ayuda del administrador de la red. Una vez registrado el
servidor, se puede cliquear en el “+” a la izquierda del icono que lo representa en el árbol
de la consola para desplegar todos sus elementos. Luego, haciendo clic en el botón “+” a
la izquierda de la carpeta Bases de datos aparecen todas las bases definidas dentro de
este servidor.
SQL SERVER Implementacion Pag.24
25. S
ISTEMAS UNI
SQL SERVER Implementacion Pag.25
26. S ISTEMAS UNI
ACCEDER AL SERVIDOR EN EL
ADMINISTRADOR CORPORATIVO
Una vez que se haya registrado con éxito el servidor utilizando Administrador corporativo, se
puede acceder a todas sus propiedades, bases de datos y objetos. Para ver las propiedades
y objetos del servidor recién registrado, en primer lugar hay que expandir el grupo de
servidores en el panel izquierdo de la ventana de Administrador corporativo. Aparece una
lista de todos los servidores del grupo. A continuación expandir el nombre del servidor para
que se muestren todas sus propiedades y objetos.
SQL SERVER Implementacion Pag.26
27. S ISTEMAS UNI
CONFIGURACIÓN DEL SERVIDOR
A través del Administrador corporativo se puede realizar la configuración del servidor,
redefiniendo los parámetros de memoria, las conexiones de usuario o los bloqueos
establecidos.
Cada una de las pestañas de la pantalla anterior
tienen las siguientes funciones:
• General: Permite establecer parámetros
de arranque, y proporciona información
general sobre la instalación
• Memoria: Reservar memoria física o
configurar la gestión dinámica de la
memoria del servidor.
• Procesador: Gestionar el entorno
multiprocesador.(Varios procesadores)
• Seguridad: Autenticación, auditoría, y
arranque.
• Conexiones: Gestión de usuarios
concurrentes y atributos.
• Parámetros de Servidor: Soporte año
2000, lenguaje, etc.
• Parámetros de Base de datos: Índices,
periodo de recuperación y gestión de
salvaguardas.
En el siguiente ejemplo definiremos la
configuración de memoria para que utilice de
forma dinámica entre 8MB y 14MB:
1. Ejecute el Administrador corporativo y
seleccione el servidor que desea
configurar.
2. En la barra de menú seleccione
Herramientas, Propiedades de
configuración de SQL SErver.
3. Acceda a la pestaña Memoria.
4. Cambie el valor mínimo del parámetro
Configurar dinámicamente la memoria a
8Mb. Haga clic en Aceptar
La cantidad máxima de memoria que se
puede asignar a SQL Server es la cantidad total
de RAM disponible en su servidor. Si la
cantidad de carga fluctúa, establezca que la
memoria se configure dinámicamente.
SQL SERVER Implementacion Pag.27
28. S ISTEMAS UNI
INTRODUCCION A LAS BASES DE DATOS
¿QUÉ ES UNA BASE DE DATOS?
En la vida cotidiana se interacciona continuamente con entidades tales como personas,
documentos u otros. En una empresa, las entidades están representadas por los operarios,
los empleados, los clientes, los proveedores, las facturas. En un hospital nos encontraríamos
con los médicos, pacientes, enfermeras, cuadros clínicos, etc. Puesto que en cada caso se
debe trabajar con una gran cantidad de datos, surge la necesidad de almacenarlos de manera
que nos resulten de fácil acceso en cada momento y, por consiguiente, útiles a nuestras
actividades. Si por ejemplo cada día debemos gestionar varias decenas de clientes y facturas,
utilizaremos un sistema para memorizar los datos como, por ejemplo, un archivo, más bien
antes que recurrir únicamente a la memoria de su computador
Las fichas aparecen reagrupadas en archivos, cada uno de los cuales contiene en general las
fichas de un sólo tipo, las de los proveedores o las de los productos. Este sistema recibe el
nombre de base de datos, que no es ninguna otra cosa más que una colección de
informaciones tales como el catálogo de los ficheros de una biblioteca, un listín telefónico o
una enciclopedia. Los programas de gestión de base de datos (Database) están programados
para realizar operaciones que nos permiten acceder y, eventualmente, modificar los datos
almacenados. Estas operaciones consisten en:Introducción, cancelación, modificación y
búsqueda de informacion a partir de los criterios seleccionados por el usuario de orden,
clasificación e impresión de los listados, por ejemplo, bajo el formato de etiquetas adhesivas
para sobres
SQL SERVER Implementacion Pag.28
29. S ISTEMAS UNI
ESTRUCTURA DE LAS BASES DE DATOS
Una vez se ha instalado Microsoft SQL Server 2000 y se ha diseñado una
distribución de bases de datos y discos, se está preparado para crear una base de datos.
SQL Server 2000 hace uso de los métodos mejorados de almacenamiento de datos y
administración del espacio que se presentaron en SQL Server 7. Las versiones anteriores del
producto utilizaban dispositivos lógicos y segmentos de un tamaño fijo para el
almacenamiento de los datos; SQL Server 2000 usa archivos y grupos de archivos que
pueden ser configurados para que crezcan o decrezcan automáticamente.
BASES Y TABLAS DEL SISTEMA
Cuando se instala SQL Server se crean cuatro bases de datos del sistema que
guardan información del propio sistema, son necesarias para su funcionamiento, y no
son utilizables directamente por el usuario:
MASTER
La base de datos Master registra toda la información de nivel de sistema para el
servidor SQL Server.
Esto incluye:
1. Las cuentas de inicio de sesión,
2. parámetros de configuración del servidor,
3. Registrar la existencia de otras bases de datos, etc.
La base de datos Master es absolutamente crítica para los datos, por le que debería
mantener siempre una copia de seguridad de la misma. La mayor parte de los
procedimientos almacenados del sistema también se guardan en esta base de datos,
junto a los mensajes de error.
SQL SERVER Implementacion Pag.29
30. S ISTEMAS UNI
MSBD
Su uso principal es el almacenamiento de la información que emplea el agente SQL Server,
como programación de trabajos, definición de operadores y alertas. La información de la
copia de seguridad también se almacena en esta base de datos, y se emplea en la
restauración de la base de datos.
MODEL
Es una base de datos plantilla, que se emplea cada vez que se crea una nueva base de
datos. Los contenidos de la base Model se copian a la nueva base. Si se desea que
determinados objetos, permisos, usuarios se creen automáticamente cada vez que se crea
una base de datos, pueden incluirse en esta base.
TEMP
Algunas veces SQL Server necesita crear tablas temporales internas (o tablas de trabajo)
para determinadas operaciones. Entre dichas operaciones se incluye la ordenación, las
operaciones multitabla, el tratamiento de cursores, etc. Estas tablas temporales se borran tan
pronto como el conjunto de resultados se devuelve a la aplicación cliente, o cuando se cierra
el cursor. Almacena todas las tablas y procedimientos almacenados temporales. Esta base de
crea de nuevo cada vez que se inicia SQL Server, por lo que no tiene sentido crear copias de
seguridad de esta.
Cada base de datos dispone de un conjunto de tablas que la describen. Estas tablas se
denominan Catálogo de la base de datos. La base de datos MASTER tiene un conjunto
adicional de tablas que describen la instalación de SQL Server. Este conjunto se denomina
Catálogo del sistema.
SQL SERVER Implementacion Pag.30
31. S ISTEMAS UNI
El catálogo de la base de datos MSDB se usa como área de almacenamiento para:
• La información de configuración utilizada por el Agente SQL Server. Incluye
información acerca de trabajos, pasos de trabajo, alertas, operadores, etc.
• Información histórica de copia de seguridad. Se conserva para que el Administrador
Corporativo pueda ayudar en la restauración de la base de datos.
Además de tablas, también hay Vistas del Sistema, y Procedimientos almacenados del
Sistema.
Un procedimiento almacenado del
sistema es un procedimiento
almacenado con algunas
características especiales. Estos
procedimientos, creados cuando SQL
Server se instala, se usan para
administrar el Servidor. Evitan al
administrador tener que acceder
directamente a las tablas del sistema
Los siguientes atributos identifican un procedimiento almacenado del sistema:
• El nombre del procedimiento almacenado empieza por sp_.
• El procedimiento se almacena en la base de datos Master.
• El procedimiento es propiedad del dbo, es decir ha sido creado por el administrador
del sistema.
SQL SERVER Implementacion Pag.31
32. S ISTEMAS UNI
ARQUITECTURA FÍSICA DE SQL SERVER
La forma en la que quot;vemosquot; una base de datos, y la manera en que esta base de datos reside
o se estructura en un ordenador o un conjunto de ellos puede ser muy diferente. Algunas de
estas diferencias se muestran en el cuadro siguiente:
Un administrador de bases de Mientras que SQL Server ve:
datos (DBA) ve:
Bases de Datos almacenadas Bases de Datos almacenadas
físicamente en archivos físicamente en archivos
Tablas, índices, vistas y otros Páginas asignadas a tablas e
objetos colocados en grupos de índices
archivos
Columnas (campos) filas (registros) Información almacenada en
y almacenadas en tablas paginas
Una Base de Datos se crea sobre un conjunto de archivos de base de datos. La forma
en la que se almacene va a afectar en gran media al rendimiento (velocidad) de
respuesta ante consultas y actualizaciones.
La página es el nivel inferior de entrada/salida de SQL Server, y es la unidad de
almacenamiento fundamental. Las páginas contienen los propios datos o bien
información acerca de la disposición física de los datos.
• Existen seis tipos de página en SQL Server:
Tipo de Página Almacena
Datos Las filas reales (registros) que forman las tablas
de datos.
Índice Los elementos de índice y punteros.
VarChar e imagen Los datos de VarChar o e imágenes
Mapa de Asignación Información acerca de las extensiones
Global empleadas
Página de Espacio Información acerca del espacio libre en las
Libre páginas.
Mapa de Asignación de Información acerca de las extensiones usadas
Índices por una tabla o índice.
Todas las páginas tienen una disposición similar. Todas tienen una cabecera de página de 96
bytes, y un cuerpo que, en consecuencia, ocupa 8.096 bytes. La información almacenada en
la cabecera y en el cuerpo depende del tipo de página.
El administrador de una base de datos, con sus privilegios, puede examinar el contenido de
una página mediante el comando DBCC PAGE.
SQL SERVER Implementacion Pag.32
33. S ISTEMAS UNI
Un archivo de base de datos puede configurarse para crecer automáticamente, si se desea, o
se puede limitar en su crecimiento. La unidad más pequeña de entrada/salida y la estructura
básica de almacenamiento es una página de 8 KB. Las páginas de una tabla o índice se
agrupan de ocho en ocho, en extensiones. Las extensiones pueden compartirse entre tablas,
lo que hace que se desperdicie menos espacio de almacenamiento entre tablas pequeñas.
Utilizando grupos de archivos, se puede especificar el archivo (o conjunto de archivos) en el
que se debería almacenar una tabla o índice.
Un índice agrupado ordena la tabla de acuerdo a la clave del índice. Los índices no
agrupados (también llamados árboles binarios) apuntan a las filas de datos.
El tamaño máximo de un único archivo de base de datos es de 32 TB (treinta y dos billones
de bytes), y el tamaño máximo de una base de datos es de 1.048.516 TB.
SQL SERVER Implementacion Pag.33
34. S ISTEMAS UNI
ARCHIVOS DE BASES DE DATOS
Como ya se ha mencionado, una base de datos de SQL Server está compuesta de un
conjunto de archivos del sistema operativo. Un archivo de base de datos puede ser un
archivo de datos o bien un archivo de registro.
• Los archivos de datos se usan para almacenar datos y objetos como tablas, índices,
vistas, desencadenadores y procedimientos almacenados.
• Hay dos tipos de archivos de datos: principales y secundarios.
• Los archivos de registro sirven para almacenar solamente información del registro de
transacciones. El espacio de registro se gestiona siempre de manera separada del
espacio de datos y nunca puede formar parte de un archivos de datos.
Todas las bases de datos deben crearse con, al menos, un archivos de datos y un archivo
de registro, y los archivos no pueden ser utilizados por más de una base de datos, esto es,
las bases de datos no pueden compartir archivos. La lista siguiente describe los tres tipos
de archivos que puede usar una base de datos:
1. ARCHIVO DE DATOS PRINCIPAL: Un archivo de datos principal contiene toda la
información de inicio para la base de datos y sus tablas y objetos de sistema. Apunta
al resto de archivo creados en la base de datos. También puede almacenar tablas y
objetos definidos por el usuario, pero no tiene por qué hacerlo. Cada base de datos
debe tener exactamente un archivo principal. La extensión de archivo recomendada es
mdf.
2. ARCHIVOS DE DATOS SECUNDARIOS: Los archivos de datos secundarios son
opcionales. Pueden contener datos y objetos que no se encuentren en el archivo
principal. Una base de datos podría no tener ningún archivo secundario si todos sus
datos se encuentran en el archivo principal. Se pueden tener cero, uno, o múltiples
archivos secundarios. Algunas bases de datos necesitan archivos secundarios
múltiples para poder repartir los datos entre discos separados. La extensión de archivo
recomendada es ndf.
3. ARCHIVOS DE REGISTRO DE TRANSACCIONES: Un archivo de registro de
transacciones contiene toda la información de registro de transacciones utilizada para
recuperar la base de datos. Toda base de datos debe tener al menos un archivo de
registro y puede tener múltiples archivos de registro. La extensión de archivo
recomendada es ldf.
Una base de datos simple podría tener un archivo de datos principal, que sea
suficientemente grande corno para contener todos los datos y objetos y un archivo de
registro de transacciones. Una base de datos más compleja podría tener un archivo de
datos principal, cinco archivos de datos secundarios y dos archivos de registro de
transacciones. Entonces, ¿cómo podrían estar los datos repartidos entre todos los archivos
de datos? La respuesta es que se pueden utilizar grupos de archivos para ordenar los
datos.
SQL SERVER Implementacion Pag.34
35. S ISTEMAS UNI
GRUPOS DE ARCHIVOS
Los grupos de archivos permiten agrupar archivos con propósitos administrativos y de
emplazamiento de datos.
Los grupos de archivos pueden mejorar el rendimiento de la base de datos permitiendo
que se cree una base de datos repartida entre múltiples discos o servidores .Se pueden
crear tablas e índices en discos específicos mediante el uso de grupos de archivos,
permitiendo de esta manera dirigir la E/S de una cierta tabla o índice a los discos de uno o
varios servidores.
Hay tres tipos de grupos de archivos. Las características principales de estos grupos de
archivos se resumen en la siguiente lista:
1. Grupo de archivos principal: Contiene el archivo de datos principal y todos los
otros archivos que no se hayan puesto en otro grupo de archivos. Las tablas del
sistema -que definen usuarios, objetos y permisos para una base de datos- están
asignadas al grupo de archivos principal de esa base de datos. SQL Server crea
automáticamente las tablas de sistema al crearse una base de datos.
2. Grupos de archivos definidos por el usuario: Incluyen cualquier grupo de
archivos creado por el usuario mientras dura el proceso de creación (o cambio
posterior) de una base de datos. Una tabla o un índice puede ser creado para ser
colocado en un grupo de archivos definido por el usuario específico.
3. Grupo de archivos predeterminado: Guarda todas las páginas para las tablas e
índices que no tienen un grupo de archivos especificado al crearse. El grupo de
archivos predeterminado es, de manera predeterminada, el grupo de archivos
principal.
Ejemplo de un Caso de aplicacion
Para mejorar el rendimiento se puede controlar la ubicación de los datos mediante la
creación de tablas e índices en grupos de archivos diferentes. Por ejemplo, podría
desearse poner una tabla que es utilizada intensivamente en un grupo de archivos de
un grupo grande de discos (compuesto de 10 unidades de disco, por ejemplo) y poner
otra tabla que se utiliza de una manera menos intensiva en otro grupo de archivos
creado en un grupo de discos distinto, más pequeño (compuesto de 4 unidades de
disco, por ejemplo). Así, la tabla a la que se accede más frecuentemente estará
repartida en el número mayor de discos, permitiendo una E/S de disco con mayor
eficiencia
SQL SERVER Implementacion Pag.35
36. S ISTEMAS UNI
REGLAS Y RECOMENDACIONES
Se debe tener una estrategia bien desarrollada para el uso de archivos y grupos de archivos
antes de crear la base de datos. Para ello se deben conocer las siguientes reglas de SQL
Server 2000:
1. Los archivos y grupos de archivos no pueden ser usados por más de una base de
datos.
2. Un archivo sólo puede ser miembro de un grupo de archivos.
3. Los datos y la información del registro de transacciones no pueden formar parte del
mismo archivo.El espacio de registro siempre se gestiona de manera separada del
espacio de datos. Los archivos de registro de transacciones no son nunca parte de un
grupo de archivos.
4. Una vez se crea un archivo como parte de una base de datos, no puede moverse a
otro Grupo de archivos. Si se quiere mover un archivo, hay que borrarlo y volverlo a
crear.
Además de estas reglas, hay modos específicos de uso de archivos y grupos de archivos
que ayudan a diseñar la base de datos:
5. La mayoría de las bases de datos funcionarán correctamente con sólo un archivo de
datos principal y un archivo de registro de transacciones. Este es el diseño
recomendado para bases de datos que no hacen un uso particularmente intenso de la
E/S. Si se tiene un sistema con una utilización intensiva de la E/S que requiera
muchas unidades de disco, probablemente se desee utilizar grupos de archivos
definidos por el usuario que repartan los datos entre discos o disposiciones de discos
para mejorar el rendimiento de la E/S paralela.
6. Colocar los archivos de registro siempre en discos distintos de los discos que
contengan archivos de datos, tal y como mencionó anteriormente.
7. Si se necesita usar archivos de datos múltiples, utilizar el archivo de datos principal
solamente para las tablas y objetos del sistema, y crear uno o más archivos de datos
secundarios para los datos y objetos del usuario.
8. Crear los archivos y grupos de archivos entre tantos discos físicos como haya
disponibles para permitir una mayor cantidad de E/S de disco paralela y maximizar el
rendimiento.
9. Poner las tablas diferentes que se usen en una misma consulta en discos físicos
diferentes, si es posible, para permitir E/S paralela de disco mientras el motor de
búsqueda encuentra los datos.
SQL SERVER Implementacion Pag.36
37. S ISTEMAS UNI
CREACIÓN DE BASES DE DATOS
SQL Server proporciona tres métodos para la creación de una base de datos: el Asistente
para creación de bases de datos, el Administrador corporativo de SQL Server y comandos
T-SQL que pueden guardarse en un archivo y ejecutarse como un archivo de comandos:
• El asistente coloca todos los archivos de datos que crea en una sola unidad de disco
en la carpeta que se le especifique. No se puede poner archivos de datos en
posiciones físicas diferentes (ni en unidades diferentes ni en carpetas diferentes) si se
utiliza el asistente .Debido a estas limitaciones, el Asistente para creación de bases
de datos es la mejor elección si sólo se necesita un archivo de datos principal y un
archivo de registro de transacciones en la base de datos. (Por otra parte, siempre se
pueden añadir archivos y grupos de archivos a la base de datos posteriormente si se
necesitan.)
CREAR UNA BASE DE DATOS UTILIZANDO EL
ASISTENTE DE CREACION DE BASES DE
DATOS
1. Iniciar el Administrador corporativo de SQL Server y
seleccionar el servidor en el que se quiere crear la
base de datos. Para seleccionar el servidor hay que
comenzar por expandir la carpeta Servidores
Microsoft SQL Server. (Pulsar el signo más a la
izquierda del nombre de la carpeta.), expandir la
carpeta Grupo de SQL Server y a continuación
pulsar en el nombre del servidor que quiera usarse.
2. En el menú Herramientas, seleccionar Asistentes,Expandir Base de datos.
SQL SERVER Implementacion Pag.37
38. S ISTEMAS UNI
3. Pulsar dos veces en el Asistente para
creación de bases de datos para iniciar
el Asistente para creación de bases de
datos.
4. Pulsar Siguiente para pasar a la pantalla
Dar nombre a la base de datos y
especificar su ubicación. Escribir el
nombre de la base de datos que se quiere
crear y las rutas de las posiciones donde
se quieren almacenar los archivos de
datos y los archivos de registro.
5. Una vez se haya nombrado la base de
datos y localizado la ruta en que deben
estar los archivos de datos y registro,
pulsar Siguiente para continuar.
Se muestra la pantalla Dar nombre a los archivos de base de datos. En esta pantalla
se puede escribir el nombre y tamaño inicial para cada uno de los archivos de base de
datos. El archivo principal de la base de datos se crea automáticamente y se le da el
nombre de la base de datos como prefijo en su nombre. Se puede aceptar este nombre o
escribir uno diferente
5. Pulsar Siguiente para continuar se muestra la pantalla Definir el crecimiento del
archivo de base de datos.
SQL SERVER Implementacion Pag.38
39. S ISTEMAS UNI
6. SQL Server puede aumentar automáticamente el tamaño de la base de datos según
se necesite, lo cual ayuda a reducir la sobrecarga de mantenimiento En general, se
debería seleccionar la característica de crecimiento automático (Crecimiento
automático de archivos de base de datos) porque implica poca sobrecarga de
rendimiento de otra forma, se necesitará ajustar manualmente el tamaño de la base de
datos según sea necesario.
• Si se pulsa Crecimiento automático de archivos de base de datos se puede
especificar la manera en que el archivo de base de datos deberá aumentar:
bien en un número fijo de megabytes o según un porcentaje del tamaño actual.
Debe tenerse en cuenta que el archivo de base de datos crecerá sólo según se
necesite.
• También se puede restringir la base de datos a un tamaño máximo o dejarla
crecer sin restricciones. Las configuraciones de esta pantalla se aplicarán a
cada archivo de base de datos que se creara en el paso 4.
SQL SERVER Implementacion Pag.39
40. S ISTEMAS UNI
7. Pulsar Siguiente para continuar.Aparece la pantalla Dar nombre a los archivos del
registro de transacciones. Esta pantalla parece igual a la pantalla Dar nombre a los
archivos de base de datos, pero esta versión es para el archivo de registro. Ha de
tenerse cuidado de no confundir las pantallas.
Tal y como se hizo en el paso 4 para los archivos de base de datos, escribir el nombre
y tamaño inicial para el registro de transacciones. (Recuérdese que un registro de
transacciones contiene una grabación de todas las modificaciones de la base de datos
para posibilitar la recuperación en caso de un fallo de sistema.)
8. Pulsar Siguiente para continuar.Se muestra la pantalla Definir el crecimiento del
archivo de registro de
transacciones
9. Aparece la pantalla Completando el Asistente para creación de bases de datos.
Finalizar para terminar la creación de la base de datos Una vez se ha creado la base
de datos, aparece un cuadro de mensaje Asistente para creación de bases de datos
para informar que la base de datos se ha creado correctamente. Pulsar Aceptar para
cerrar este cuadro de mensaje.Aparece otro cuadro de mensaje, que pregunta si se
quiere crear un plan de mantenimiento para la nueva base de datos. Se recomienda
crear un plan de mantenimiento para asegurarse de que la base de datos tenga un
comportamiento correcto, se haga copia de seguridad regularmente por si hay fallo del
sistema y sea verificada contra inconsistencias.
SQL SERVER Implementacion Pag.40
41. S ISTEMAS UNI
CREAR UNA BASE DE DATOS CON
ADMINISTRADOR CORPORATIVO
El Administrador corporativo de SQL Server da la capacidad de crear bases de datos más
complejas que las creadas con el Asistente para creación de bases de datos.
1 . Abrir el Administrador corporativo. En el panel izquierdo, expandir el grupo de SQL
Server que contenga el nombre del servidor sobre el que se quiere crear la base de
datos y expandir el propio nodo del servidor. A continuación pulsar con el botón
derecho del ratón en la carpeta Bases de datos y elegir Nueva base de datos.
2. Se abre la ventana
Propiedades de la base de
datos, con la pestaña General en
primer plano, como se ve en la
figura siguiente. Escribir el
nombre de la base de datos en el
cuadro Nombre.
SQL SERVER Implementacion Pag.41
42. S ISTEMAS UNI
3. Pulsar la pestaña Archivos de datos. Como se muestra en la figura siguiente, el
Administrador corporativo crea automáticamente el archivo de datos principal, con
el nombre de la base de datos como prefijo y PRIMARY como grupo de archivos.
4. Se puede cambiar el nombre, posición y tamaño del archivo principal, pero no se
puede cambiar el grupo de archivos del archivo de datos principal. Escribir el nombre
de archivo (nombre lógico), ubicación (nombre físico), tamaño y grupo de archivos de
cada archivo que se desee crear. Para
cada archivo distinto del archivo
principal se puede escribir un nombre
de grupo de archivos definido por el
usuario, y dicho grupo de archivos será
creado
Una vez se hayan definido tantos archivos como se desee, pulsar Aceptar. SQL Server
creará la base de datos. Volver al Administrador corporativo y pulsar la carpeta Bases de
datos del servidor al que se ha añadido la base de datos. En el panel derecho del
Administrador corporativo se verá que SQL Server ha añadido un icono para esa base
de datos.
SQL SERVER Implementacion Pag.42
43. S ISTEMAS UNI
EXAMINAR BASES DE DATOS
Tras crear una base de datos se puede utilizar el Administrador corporativo para explorar y
ver objetos en ella.
USO DEL ADMINISTRADOR CORPORATIVO
Para ver información de la base de datos utilizando el Administrador corporativo se deben
seguir estos pasos:
1. En el Administrador corporativo, expandir (pulsando los signos más) las listas del
grupo SQL Server, el nombre del servidor en que reside la base de datos y la carpeta
Bases de datos.
2. Pulsar el nombre de la base de datos que se desee para mostrar los objetos que
contienen la base de datos.
BORRAR UNA BASE DE DATOS
1. Pulsar con el botón derecho del ratón en el nombre de la base de datos que se quiere
eliminar
2. A continuación, elegir Eliminar en el menú de contextual. Aparece el cuadro de mensaje
Eliminar base de datos. Pulsar Sí para confirmar el borrado
SQL SERVER Implementacion Pag.43
44. S ISTEMAS UNI
TABLAS EN LAS BASES DE DATOS
Una vez se haya creado una base de datos (con archivos y grupos de archivos), el siguiente
paso es crear los objetos, denominados tablas, que permiten organizar y almacenar los datos.
Para crear una tabla considere la siguiente lista da un esquema de estas decisiones de
diseño:
1. ¿Qué datos contendrá cada tabla?
2. ¿Qué columnas deben crearse para albergar los datos y cómo deben llamarse?
3. ¿Cuáles son los requisitos del rango de los datos que se permitiría contener a una
columna qué tipo de datos Microsoft SQL Server 2000 debe utilizarse para cada
columna?
4. ¿Hay alguna columna a la que se deba permitir contener valores NULL o pueden
utilizarse valores predeterminados en su lugar? (Permitir valores NULL provoca mayor
carga de procesamiento que la utilización de valores predeterminados.)
5. ¿Qué columnas serán claves principales y cuáles serán claves foraneas?
6. ¿Qué tipo de índices (agrupados o no agrupados) debe tener la tabla y en qué
columna columnas deben definirse dichos índices?
7. ¿Qué usuarios deben tener acceso a qué tablas?
DEFINICIÓN DE TABLA DE UNA BASE DE
DATOS
Una tabla es un objeto de una base de datos que almacena datos en una colección de filas y
columnas. Una tabla se define por las columnas que contiene. Así, los datos pueden
organizarse de forma similar a una hoja de cálculo de Excel, como se ilustra en la tabla
siguiente, que muestra una tabla de base de datos de ejemplo llamada Productos.
Para definir una tabla se debe decidir qué columnas definir y qué tipo de datos, como por
ejemplo datos de caracteres o numéricos, se permite que haya en cada columna. También se
debe decidir sobre un rango permisible a esos datos -por ejemplo, podría decidirse permitir
hasta 30 caracteres o números.
SQL SERVER Implementacion Pag.44
45. S
ISTEMAS UNI
Tipos de Datos SQl server
SQL SERVER Implementacion Pag.45
46. S
ISTEMAS UNI
SQL SERVER Implementacion Pag.46
47. S ISTEMAS UNI
CREACIÓN DE TIPOS DE DATOS DEFINIDOS
POR EL USUARIO MEDIANTE EL USO DEL
ADMINISTRADOR CORPORATIVO
Podría desearse crear tipos de datos para datos como números de teléfono, códigos postales,
números de la Seguridad Social y cualesquiera otros datos que se puedan definir claramente
y que se vayan a utilizar en más de una tabla de base de datos.
1. En el Administrador corporativo, expandir un grupo SQL Server (pulsando en el
signo más al lado de la carpeta) y a continuación expandir un servidor.
2. Expandir la carpeta Bases de datos y luego expandir una base de datos. .
3. Pulsar con el botón derecho del ratón en Tipos de datos definidos por el usuario y
elegir Nuevo tipo de datos definido por el usuario en el menú de contexto. Aparece la
ventana Propiedades del tipo de datos definido por el usuario.
3. Escribir el nombre del nuevo tipo de datos en el cuadro de texto Nombre, como se
muestra en la siguiente figura.
A continuación se debe especificar el tipo de datos
SQL Server y la longitud que de describen el campo
definido por el usuario. En el ejemplo de la figura
anterior se está definiendo un tipo de datos para la
columna Telefono, así que se elegirá el tipo
nVarchar, con un valor de longitud predeterminado
de 7.
4. Si el tipo de datos debe permitir valores
NULL, seleccionar la casilla de verificación
Permitir valores NULL.
5. Si el tipo de datos debe utilizar alguna regla
predefinida o valor predeterminado, seleccionarlo en su respectivo cuadro de lista.
6. Pulsar Aceptar para guardar el nuevo tipo de datos.
SQL SERVER Implementacion Pag.47
48. S ISTEMAS UNI
CREACION DE UNA TABLA MEDIANTE EL
ADMINISTRADOR CORPORATIVO
Ahora que se entienden los elementos básicos de la creación de tablas utilizando SQL
Server pasará por un ejemplo de uso del Administrador corporativo para crear una tabla.
Sin embargo o, antes de comenzar este proceso es crítico recordar que cuando se diseñen
bases de datos propias se deben diseñar todas las tablas de la base de datos y sus
relaciones antes de empezar realmente a crearlas.
Para crear una tabla de base de datos utilizando el Administrador corporativo hay que
seguir estos pasos:
1. En el Administrador corporativo, desplegar un grupo SQL Server y a continuación
expandir un servidor.
2. Desplegar la carpeta Bases de datos para ver las bases de datos disponibles.
3. Expandir la base de datos en que se desee trabajar
4. Pulsar con el botón derecho del ratón la carpeta Tablas y elegir Nueva tabla en el
menú de contexto que aparece. Aparece la ventana Tabla nueva, como se muestra
(maximizada) en la figura siguiente.
SQL SERVER Implementacion Pag.48
49. S ISTEMAS UNI
5. Definir cada una de las columnas de la tabla de la base de datos -trabajando fila por
fila - escribiendo el nombre en la columna Nombre de columna, eligiendo el tipo de
datos del menú desplegable de la columna Tipo de datos, eligiendo la longitud
cuando sea aplicable (como para tipos de datos de caracteres) y presionando la tecla
Mayúsculas (o la barra espaciadora) o pulsando en la columna Permitir valores
nulos si el dato no es obligatorio.
Nombre del Dato
Tipo del Dato
Tamaño del Dato
PÁGINA DE PROPIEDADES DE COLUMNAS
DESCRIPCIÓN
Muestra la descripción textual de la columna seleccionada.
VALOR PREDETERMINADO
Muestra el valor predeterminado para la columna seleccionada cuando se inserta en la tabla
una fila con un valor nulo para esta columna.
PRECISIÓN
Muestra el número máximo de dígitos para los valores de la columna seleccionada.
ESCALA
Muestra el número máximo de dígitos que pueden aparecer a la derecha de la coma decimal
para los valores de la columna seleccionada.
SQL SERVER Implementacion Pag.49
50. S ISTEMAS UNI
IDENTIDAD
Muestra si SQL Server utiliza la columna como una columna de identificador. Los valores
posibles son:
• No La columna no se utiliza como una columna de identidad.
• Sí La columna se utiliza como una columna de identidad.
• Sí (no disponible para duplicación) La columna se utiliza como una columna de
identidad, salvo si un agente de duplicación está insertando datos en la tabla.
INICIALIZACIÓN DE IDENTIDAD
Muestra el valor de inicialización de una columna de identidad. Esta opción sólo se aplica a
las columnas cuya opción Identidad se ha establecido como Sí o Sí (no disponible para
duplicación).
INCREMENTO DE IDENTIDAD
Muestra el valor de incremento de una columna de identidad. Esta opción sólo se aplica a las
columnas cuya opción Identidad se ha establecido como Sí o Sí (no disponible para
duplicación).
ES ROWGUID
Muestra si SQL Server utiliza la columna como una columna ROWGUID. Este valor se puede
establecer como Sí sólo para una columna de identidad.
ROWGUIDCOL es una propiedad que puede asignar a una columna con valores
uniqueidentifier, un tipo de datos de SQL Server 2000 que define un entero de 128 bits
garantizado como único. Como tal, el uso de una columna rowguid como clave principal es
una alternativa segura al uso de una columna de identidad para garantizar la exclusividad.
FÓRMULA
Muestra la fórmula para una columna calculada.
INDIZADO
Muestra si existe un índice en la columna. Los valores posibles son:
• No No existe un índice en la columna.
• Sí (con duplicados) Existe un índice no único en la columna.
• Sí (sin duplicados) Existe un índice único en la columna.
SQL SERVER Implementacion Pag.50
51. S ISTEMAS UNI
CREAR UNA CLAVE PRINCIPAL(PRIMARY
KEY)
En el ejemplo de la tabla Productos, se configurará la columna ID_Producto como la
columna clave principal pulsando con el botón derecho del ratón el nombre de columna
ID_Producto y eligiendo Establecer clave principal en el menú de contexto. Aparecerá
un icono de una llave junto al nombre de la columna.
6. En la parte inferior de la ventana hay una ficha etiquetada «Columnas». Esta ficha
permite cambiar algunos atributos de la columna seleccionada en la parte superior.
Por ejemplo, se ha seleccionado la columna IdProducto y a continuación se ha
asignado una descripción y un valor predeterminado de 0 para ella en la ficha
Columnas de debajo, como se muestra en la figura anterior.
Se pueden crear otras restricciones e índices sobre
la tabla pulsando con el botón derecho del ratón
sobre cualquier nombre de columna y eligiendo
índices y claves, Relaciones, Restricciones CHECK
o Propiedades en el menú de contexto, o pulsando
en el icono Propiedades de tabla e índice junto al
icono Guardar en la barra de herramientas.
Cualquiera de estos métodos lleva a la ventana
Propiedades, que se muestra en la siguiente figura.
SQL SERVER Implementacion Pag.51
52. S ISTEMAS UNI
El nombre de la tabla aparecerá como Tabla1, Tabla2 o algo por el estilo. En este caso se
llama Tabla1. Se puede cambiar este nombre, como se enseña en el siguiente paso, al
guardar la tabla
GUARDAR LA TABLA Y ASIGNAR NOMBRE
1. Para dar nombre a la nueva tabla hay que pulsar el icono Guardar
2. Aparecerá una venta de diálogo en donde se puede escribir el nombre de la tabla.
Escribir el nombre por ejemplo Productos o el nombre que se desee y pulsar Aceptar
3. La tabla que se ha diseñado será creada y su información guardada. Ahora se puede
cerrar la ventana Tabla nueva y se verá aparecer al nombre de la tabla en el panel de
la derecha de Administrador corporativo.
SQL SERVER Implementacion Pag.52
53. S ISTEMAS UNI
USO DE VALORES NULL
Un valor NULL es un valor desconocido al que se le refiere como NULL. La admisión de
nulos de una columna se refiere a la posibilidad de la columna de aceptar o rechazar
valores NULL.
Un valor NULL en una columna indica normalmente que no se ha introducido nada para
una fila particular de datos porque el valor es desconocido, no son ni valores vacíos ni
valores 0; sus valores verdaderos son desconocidos Podría necesitarse una columna con
nulos si la información que se necesita no es un dato obligatorio por ejemplo el dato
numero de celular en una tabla Alumnos no seria obligatorio llenarlo.
LA PROPIEDAD IDENTITY DEFINE UN CAMPO
COMO AUTONUMERICO
Al crear una tabla se puede especificar una columna como columna de identidad añadiendo la
propiedad IDENTITY a la definición de la columna. Si se crea una columna con la propiedad
IDENTITY,
SQL Server genera automáticamente un valor de fila para esa columna, basándose en un
valor inicial y un valor de incremento.
Cada vez que se inserte una fila, SQL Server asigna el
valor de identidad actual a la columna de identidad de la
fila. La siguiente fila que se inserte recibirá un valor
identidad que sea un incremento mayor que el valor
identidad actual más alto. De esta forma, cada fila que se
inserte recibe un valor de identidad único. La propiedad
de identidad es útil para columnas en las que cada fila de
esa columna deba tener un ID único, como la columna
IdProducto.
Por ejemplo, si se especifica IDENTITY (0,10), la primera
fila que se inserte tomará un valor de columna de
identidad de 0, la segunda fila tomará 10, la tercera fila
tomará 20, y así sucesivamente.
SQL SERVER Implementacion Pag.53
54. S ISTEMAS UNI
VALORES PREDETERMINADOS
Utilice un valor prederminado para asignar un valor por defecto a un campo de una tabla por
ejemplo Si tiene un campo llamado sexo su tabla Empleados puede predeteminar su campo
Sexo en el valor “Masculino”.
Microsoft SQL Server 2000 permite definir un valor predeterminado para cada columna de
tabla. No se puede definir un valor predeterminado para las columnas que tengan el tipo de
timestamp o las propiedades IDENTITY o ROWGUIDCOL, ya que dichas columnas deben
tener valores únicos.
INSERTAR REGISTROS EN UNA TABLA
Puede insertar nuevos registros o examinar los registros de su tabla haciendo lo siguiente:
1. Seleccione la tabla de su base de datos con clic derecho y luego Abrir tabla y luego
Devolver todas las filas
SQL SERVER Implementacion Pag.54
55. S ISTEMAS UNI
MODIFICAR EL DISEÑO DE UNA TABLA
Para modificar el diseño de una tabla como por ejemplo para :
• Añadir o Eliminar campos a una tabla
• Cambiar el tipo de datos a los campos
• Cambiar el nombre a los campos
• Modificar la longitud o tamaño de un campo numerico o texto
• Agregar o modificar sus propiedades de campos por ejemplo aplicar un valor
predeterminado
Para ello haga lo siguiente:
1. Seleccione con clic derecho la tabla que desea modificar
2. Elija la opcion Diseñar tabla
SQL SERVER Implementacion Pag.55
56. S ISTEMAS UNI
CREACIÓN Y USO DE UN DIAGRAMA DE BD
Las tablas también se pueden modificar mediante un diagrama de base de datos en el
Administrador corporativo. Para crear un diagrama de base de datos con las tablas de su
base de datos
1. Expandir su base de datos en el panel izquierdo del Administrador corporativo y
entonces pulsar con el botón derecho del ratón sobre Diagramas. Elegir Nuevo
diagrama de base de datos del menú contextual para mostrar la pantalla de
bienvenida del Asistente para creación de diagramas de bases de datos.
2. Pulsar Siguiente para visualizar la pantalla Seleccionar tablas para agregar mostrada
en la siguiente figura. Hay que seleccionar las tablas que se desean incluir en el
SQL SERVER Implementacion Pag.56
57. S ISTEMAS UNI
diagrama de la lista Tablas disponibles y después pulsar Agregar. En este ejemplo
hemos agregado las tablas Productos,Categorias y Proveedores
3. Pulsar Siguiente para visualizar la
pantalla Completando el Asistente para
creación de diagramas de bases de
datos. Pulsar Finalizar si las tablas
seleccionadas son las correctas o pulsar
Atrás y hacer los cambios necesarios.
4. Después de pulsar Finalizar se puede ver el diagrama de base de datos, como se
muestra en la figura siguiente.
SQL SERVER Implementacion Pag.57
58. S ISTEMAS UNI
PARA CREAR UNA RELACIÓN EN UN
DIAGRAMA DE BASE DE DATOS
En el diagrama de base de datos, haga clic en el selector de fila de la columna o combinación
de columnas de base de datos que desea relacionar con una columna de otra tabla.
1. Con el puntero situado sobre el selector de fila, haga clic y arrástrelo hasta la tabla
relacionada.
2. Suelte el botón del mouse. Aparece el cuadro de diálogo Crear relación y se intenta hacer
coincidir las columnas seleccionadas con las columnas de los mismos nombre y tipo de
datos de la tabla relacionada.
3. En el cuadro de diálogo Crear relación,
confirme que las columnas que desee
relacionar se muestran en las listas Tabla de
claves principales y Tabla de claves
externas.
SQL SERVER Implementacion Pag.58
59. S ISTEMAS UNI
COMPROBAR DATOS EXISTENTES
• Seleccione la opción para comprobar los datos existentes al crear una relación si la
restricción de FOREIGN KEY se debe aplicar tanto a los datos existentes como a los
datos nuevos
• Aparecen varias casillas de verificación en la parte inferior de la ventana. Seleccionar la
opción Comprobar datos existentes al crear cuando se quiere que SQL Server
compruebe si los datos existentes cumplen la relación de clave externa. Por ejemplo solo
sera posible relacionar las tablas Productos y Categorias si en la tabla Productos
existen idCategoria que esten registradas en la tabla Categorias .Si hubiera un
idcategoria en la tabla Productos desconocida para la tabla Categorias la relacion seria
rechazada.
EXIGIR RELACIÓN PARA INSERT Y UPDATE
Aplica la restricción a los datos INSERTADOS, ELIMINADOS o ACTUALIZADOS en la tabla
de la clave externa. También impide que una fila de la tabla de la clave principal se elimine
cuando exista una fila coincidente en la tabla de la clave externa
ACTUALIZAR Y ELIMINAR EN CASCADA LOS
CAMPOS RELACIONADOS
Las restricciones de integridad referencial en cascada permiten definir las acciones que
Microsoft SQL Server 2000 lleva a cabo cuando un usuario intenta eliminar o actualizar una
clave a la que apuntan las claves externas existentes.
Por ejemplo en esta relacion si la propiedad Eliminar en Cascada esta activada hara que si
se elimina una Categoria de la tabla Categorias tambien se eliminen todos los productos en
la tabla Productos que pertenezcan a dicha categoria
3. Elija Aceptar para crear la relación.
4. Guardar el diagrama con un nombre descriptivo pulsando el botón Guardar e introducien-
do un nombre cuando se solicite.
SQL SERVER Implementacion Pag.59
60. S
ISTEMAS UNI
SQL SERVER Implementacion Pag.60
61. S ISTEMAS UNI
USO DE ÍNDICES
¿QUÉ ES UN ÍNDICE?
Los índices son una de las herramientas disponibles más potentes para el diseñador de
bases de datos. Cuando se utiliza un índice de una tabla de la base de datos para buscar una
fila de datos, SQL Server puede determinar rápidamente dónde se almacenan los datos y
recuperarlos inmediatamente. Así, los índices de tabla de la base de datos son muy parecidos
a los índices de los libros (ambos proporcionan un acceso rápido a grandes cantidades de
información).
CLAVES DE LOS ÍNDICES
Una clave de índice designa la columna o columnas que se utilizan para generar el índice. La
clave del índice es el valor que permite buscar rápidamente la fila que contiene los datos que
se están buscando, de igual forma a como una entrada del índice en un libro apunta a un
tema concreto del texto.
Por ejemplo el campo NombreProducto de la tabla Productos es candidato a ser indice de
esta tabla o el campo Apellidos y Nombres de la tabla Empleados
ÍNDICES SIMPLES
Un índice simple es un índice que se define en una sola columna de la tabla. Un índice simple
puede ser efectivo dependiendo del tipo de datos que se están ordenando, del número de
elementos únicos de la columna .En otros casos se necesita un índice compuesto.
• Por ejemplo, si se está indexando una libreta de direcciones con miles de nombres y
direcciones, la columna Distrito no es una buena candidata para un índice simple ya
que podría haber muchas entradas del mismo Distrito.Sin embargo, al añadir las
columnas Dirección y Distrito al índice, por tanto creando un índice compuesto, se
puede hacer que cada entrada sea casi única. Este paso puede ser útil si se usan
consultas que buscan filas a través de la dirección.
ÍNDICES COMPUESTOS
Un índice compuesto es un índice que se define en más de una columna. Se puede acceder a
un índice compuesto usando una o más claves de índice. Con SQL Server 2000, un índice
puede abarcar hasta 16 columnas y sus columnas clave pueden ser de hasta 900 bytes
SQL SERVER Implementacion Pag.61
62. S ISTEMAS UNI
ÍNDICES ÚNICOS
Un índice único contiene solamente una fila de datos por cada clave del índice (en otras
palabras, los valores de la clave del índice no pueden aparecer en el índice más de una vez)
SQL Server obliga a que se cumpla la propiedad de unicidad (UNIQUE) de un índice de una
columna o combinación de columnas que constituyen la clave del índice. SQL no permite que
se inserte en la base de datos un valor de clave duplicado. Si se intenta hacer, se produce un
error. SQL Server crea índices únicos cuando se crea o una restricción PRIMARY KEY (clave
Primaria) o una restricción UNIQUE en la tabla. Por ejemplo el campo NumeroRuc podria ser
un indice UNICO ya que el numero de RUC es unico para cada cliente
ÍNDICES NO ÚNICOS
Un índice no único trabaja de la misma forma que un índice único, salvo que puede contener
valores duplicados en los valores que los conforman. Todos los valores duplicados se
recuperan si cumplen los criterios especificados en la instrucción de consulta Por ejemplo el
campo Apellidos en una tabla Clientes podria ser un INDICE NOUNICO ya que muchos
clientes podrian tener el mismo apellido y hasta el mismo Nombre
Un índice no único no es tan eficiente como un índice único debido a que necesita
procesamiento adicional (operaciones adicionales de entrada/salida) para recuperar los datos
requeridos. Pero debido a que algunas aplicaciones necesitan utilizar claves duplicadas,
algunas veces es imposible crear un índice único. En estos casos, un índice no único
frecuentemente es mejor que no tener ningún índice.
TIPOS DE ÍNDICES
Hay dos tipos de índices índices agrupados e índices no agrupados.
ÍNDICES AGRUPADOS
Como se ha mencionado, un índice agrupado es un índice que almacena los datos de la fila
actual de la tabla en sus nodos hoja, de forma ordenada, como se muestra en la figura
siguiente.
Orden Fisico
SQL SERVER Implementacion Pag.62
63. S ISTEMAS UNI
ESTE SISTEMA OFRECE ALGUNAS VENTAJAS Y ALGUNAS DESVENTAJAS
• Debido a que los datos de un índice agrupado se almacenan ORDENADOS,los datos
están disponibles, lo que puede resultar en un número menor de operaciones de
entrada/salida. Cualquier reducción de estas operaciones produce un mayor
rendimiento, para las operaciones individuales y un mejor rendimiento medio para el
sistema.
• Otra ventaja de los índices agrupados es que los datos recuperados están ordenados
según el orden del índice. Por ejemplo, si se crea un índice agrupado a partir de las
columnas Direccion, Distrito y Pais y una consulta que selecciona todos los valores
para los que Distrito es “San isidro”, la salida resultante está ordenada según Pais y
Distrito en el orden en que se haya definido en el índice
• Una desventaja del uso de un índice agrupado es que el acceso a la tabla siempre es
a través del índice, lo que puede provocar una sobrecarga adicional.
• Debido a que los datos reales se almacenan en el índice agrupado, no se puede crear
más de un índice agrupado en una tabla
INDICES NO AGRUPADOS
A diferencia de los índices agrupados, los índices no agrupados no contienen los datos
reales de la tabla en sus datos. Los indices pueden contener uno o dos tipos de
información de ubicación de filas de datos
.
Orden Logico
CONSEJOS SOBRE INDICES
• Se deben usar los índices con moderación, es decir, unos pocos índices pueden ser
útiles pero demasiados índices pueden afectar negativamente al rendimiento porque
hay que mantenerlos actualizados cada vez que se realizan operación de insercción,
actualización y borrado en los datos.
• No poner índices en tablas pequeñas.
• Utilizar el menor número posible de columnas en el índice (índices estrechos), ya que
estos ocupan menos espacio y necesitan menos sobrecarga de mantenimiento.
SQL SERVER Implementacion Pag.63
64. S ISTEMAS UNI
CREACIÓN DE ÍNDICES
La creación de índices no es difícil. Se pueden crear índices agrupados o no agrupados casi
del mismo modo usando los asistentes que suministra el Administrador corporativo
Para crear un índice
1. Abra el Diseñador de tablas para la tabla que desee indizar, haga clic con el botón
secundario del mouse en el Diseñador de tablas y elija Índices y claves en el menú
contextual.
2. Elija Nuevo. El cuadro Índice seleccionado muestra el nombre asignado por el sistema
al índice nuevo.
3. En Nombre de columna seleccione las
columnas que desea indizar. Puede
seleccionar hasta 16 columnas.
seleccione sólo una o dos
columnas. Para cada columna
seleccionada, puede indicar si el índice
ordena los valores en orden ascendente
o descendente.
4. Especifique otros valores que desee
para el índice y, a continuación, haga
clic en Aceptar
Define un indice Agrupado
SQL SERVER Implementacion Pag.64
65. S ISTEMAS UNI
IMPORTAR UNA BASE DE DATOS
Otra opción consiste en usar el servicio de transformación de datos.Con esta herramienta
podrá crear una nueva base en el servidor con la misma estructura y los mismos datos de una
base preexistente,que puede provenir de otro servidor SQL Server o de un servidor de otra
marca (DB/2, Informix, Oracle o Sybase), de una MDB de Access,de una base de datos
Paradox, de un conjunto de archivos DBF,de un archivo de Excel o de archivos de texto
plano, entre otras opciones.
El servicio de transformación de datos figura entre las opciones del menú
de SQL Server como Importar y exportar datos.
MIGRACIÓN DE UNA BASE DE ACCESS A SQL
SERVER
1. Abra el Asistente para transformación de datos, seleccionando la opción Importar y
exportar datos del menú de Windows (en el grupo de programas Microsoft SQL Server
7). Se desplegará la primera ventana
del Asistente que explica cuál es su
función y permite cliquear en
Siguiente para pasar al próximo paso
SQL SERVER Implementacion Pag.65
66. S ISTEMAS UNI
2. En la segunda ventana del Asistente se debe definir cuál es el origen de los datos para
la transformación. En la lista desplegable titulada Origen seleccionamos la opción
Microsoft Access.Al hacer esto, el frame inferior de la ventana cambia para mostrar el
conjunto de datos requeridos para acceder a la base de Access;o sea: Nombre de
archivo, Nombre de usuario y Contraseña(Figura 19). Dado que vamos a utilizar la
base del ejercicio anterior, en el campo Nombre de archivo ingresamos
C:EjerVBVideoclubVideoclub.mdb, y dejamos vacíos los campos Nombre de
usuario y Contraseña. Hecho esto, estamos en condiciones de cliquear en
Siguiente.
3. En el tercer paso se nos solicita el destino de los datos. Dado que la opción por
defecto –Microsoft OLE DB Provider for SQL Server– es la que usaremos, vamos a
ingresar directamente la información solicitada en la parte inferior de la ventana; los
consabidos nombre de servidor y datos de autenticación. La diferencia con las
ocasiones anteriores en
las que establecimos
una conexión con el
servidor consiste en
que esta vez le
pediremos que nos
conecte con una base
nueva, no con una
preexistente. Para
hacer esto, en la lista
desplegable titulada
Base de datos
seleccionamos la
opción <nuevo>
SQL SERVER Implementacion Pag.66
67. S ISTEMAS UNI
4. Inmediatamente se abrirá una ventana titulada Crear base de datos En ella –al igual
que en las opciones vistas antes para crear bases en el servidor– se solicita el nombre
para la nueva base y los tamaños iniciales de los archivos de datos y de registro.
Si bien estos tamaños son flexibles (es decir, SQL Server expandirá los archivos a
medida que le vayan quedando chicos), es bueno hacer una estimación del tamaño
requerido en función de la suma de los tamaños de cada tabla, calculando el tamaño
de registro y multiplicándolo por el número de registros en la tabla. A eso hay que
agregarle un espacio prudencial para almacenar índices.
Para el ejemplo que nos ocupa, ingrese NeptunoBD como nombre para la nueva base, y
asígnele un espacio de 5 MB para el archivo
de datos y 1 MB para el archivo de registro.
Es habitual asignar al archivo de registro
(que contiene las transacciones en curso
hasta el momento en que se les hace un
commit) un 20 por ciento del tamaño
establecido para los datos.
El paso siguiente consiste, simplemente, en
decidir si se van a copiar las tablas íntegras
de la base de datos de origen o si se
utilizarán instrucciones SQL para definir los
conjuntos de datos a migrar .En el primer
caso, seleccione Copiar las tablas de la
base de datos de origen.
• En este punto, el Asistente muestra las tablas existentes en la base de origen, y
brinda la opción de seleccionar aquellas que se desee migrar. Selecciónelas todas.
Verá que al hacerlo, se completan las otras dos columnas de la grilla: Tabla de destino
y Transformar.
• En la primera, el Asistente coloca nombres de tabla que coinciden con los de la base
de origen. También muestra un ícono para cada tabla, que, si tiene una estrella en la
esquina superior izquierda, indica que la tabla se creará durante la migración
SQL SERVER Implementacion Pag.67
68. S ISTEMAS UNI
• En la columna Transformar aparecen botones con puntos suspensivos para cada tabla
seleccionada. Si presiona cualquiera de ellos, tendrá la oportunidad de modificar la
forma en que el asistente migrará los datos de la tabla correspondiente. Por ejemplo,
puede deseleccionar ciertas columnas de ciertas tablas para que no se incluyan en la
migración, o hacer que se aplique una conversión a un tipo de datos diferente para
alguna columna. Pero en este ejemplo dejaremos las opciones de transformación tal
como las infiere el Asistente.
• El asistente presenta, en esta anteúltima pantalla, una serie de opciones referidas a
qué hacer con la operación de migración. Se muestran dos frames, titulados “Cuando”
y “Guardar”. En el primero se ofrece la opción de ejecutar la migración
inmediatamente o programarla en un paquete DTS (data transformation service,
servicio de transformación de datos) para una ejecución posterior. En el segundo
SQL SERVER Implementacion Pag.68
69. S ISTEMAS UNI
frame se da la opción de crear el paquete DTS, independientemente de que la
ejecución sea inmediata o diferida En este caso, optaremos por ejecutar la operación
inmediatamente.
SQL SERVER Implementacion Pag.69
70. S ISTEMAS UNI
COPIAS DE SEGURIDAD DE BASES DE DATOS
• Al terminar la copia de seguridad de una base de datos, se ha creado un duplicado de
los datos de la base de datos. Esta es una operación única, programada normalmente
a intervalos regulares. Las copias de seguridad de bases de datos son
independientes.
• Es posible volver a crear toda la base de datos a partir de una copia de seguridad de
base de datos en un solo paso; para ello, restaure la base de datos. El proceso de
restauración sobrescribe la base de datos existente o crea la base de datos si no
existe. El estado de la base de datos restaurada será el mismo que el de la base de
datos en el momento en que terminó la copia de seguridad,
CREAR UNA COPIA DE SEGURIDAD
Para crear una copia de seguridad de base de datos :
1. Expanda un grupo de servidores y, a continuación, un servidor.
2. Expanda Bases de datos, haga clic con el botón secundario del mouse en la base de
datos, seleccione Todas las tareas y, a continuación, haga clic en Copia de seguridad
de la base de datos.
3. En el cuadro Nombre, escriba el nombre del conjunto de copias de seguridad.
Opcionalmente, en Descripción, escriba una descripción del conjunto de copias de
seguridad.
4. En Copia de seguridad, haga clic en Base de datos: completa.
5. En Destino, haga clic en Cinta o Disco y especifique el destino de la copia de
seguridad.
SQL SERVER Implementacion Pag.70
71. S ISTEMAS UNI
Si no aparece ningún destino de copia de seguridad, haga clic en Agregar para
agregar un destino existente o crear uno nuevo.
6. En Sobrescribir, realice una de las siguientes operaciones:
• Haga clic en Anexar al medio para agregar la copia de seguridad a cualquier
copia de seguridad existente en el dispositivo.
• Haga clic en Sobrescribir medio existente para sobrescribir las copias de
seguridad existentes en el dispositivo.
7. Opcionalmente, seleccione la casilla de verificación Programar para programar la
operación de copia de seguridad destinada a una ejecución posterior o periódica.
8. Finalmente pulse el boton Aceptar
SQL SERVER Implementacion Pag.71
72. S ISTEMAS UNI
CÓMO RESTAURAR UNA COPIA DE
SEGURIDAD DE UNA BASE DE DATOS
1. Expanda un grupo de servidores y, a continuación, un servidor.
2. Expanda Bases de datos, haga clic con el botón secundario del mouse en la base de
datos, seleccione Todas las tareas y, a continuación, haga clic en Restaurar base de
datos.
3. En el cuadro Restaurar como base de datos, escriba o seleccione el nombre de la
base de datos que se desea restaurar, si no es el nombre predeterminado. Para
restaurar la base de datos con un nombre nuevo, escriba el nuevo nombre de la base
de datos.
4. Haga clic en Base de datos.
5. En la lista Primera copia que restaurar, haga clic en el conjunto de copias de
seguridad que desea restaurar.
6. En la lista Restaurar, haga clic en la copia de seguridad de base de datos que desea
restaurar
SQL SERVER Implementacion Pag.72
73. S
ISTEMAS UNI
7. Para Finalizar pulse el boton Aceptar
SQL SERVER Implementacion Pag.73
74. S ISTEMAS UNI
LA CAPACIDAD DE SQL SERVER
1. El tamaño máximo de un único archivo de base de datos es de 32 TB (treinta y dos
billones de bytes), y el tamaño máximo de una base de datos es de 1.048.516 TB.
2. SQL Server puede tener hasta dos mil millones de tablas por cada base de datos
3. Cada Tabla puede tener hasta 1.024 columnas
4. El número de filas y el tamaño total de la tabla está limitado solamente por el espacio
de almacenamiento disponible.
5. El número máximo de bytes por fila es de 8.060. Si se crean tablas con columnas
varchar, nvarchar o varbinary en las que el ancho total definido excede de 8.060
bytes, se crea la tabla, pero aparece un mensaje de advertencia. Al intentar insertar
más de 8.060 bytes en tal fila o actualizar una fila de tal forma que su tamaño total de
fila exceda de 8.060, se genera un mensaje de error y no se puede realizar la
instrucción
6. Cada tabla puede contener un máximo de 249 índices no agrupados y 1 índice
agrupado. Éstos incluyen los índices generados para admitir las restricciones
PRIMARY KEY y UNIQUE definidas para la tabla.
SQL SERVER Implementacion Pag.74
75. S ISTEMAS UNI
Transact-SQL es fundamental para trabajar con Microsoft
SQL Server Todas las aplicaciones que se comunican con SQL
Server lo hacen enviando instrucciones Transact-SQL al servidor,
independientemente de la interfaz de usuario de la aplicación.
En este capítulo se introducirán conceptos básicos del lenguaje de
consulta estructurado (SQL, Structured Query Language) y TransacT-
SQL (T-SQL) y se mostrarán las diferencias entre los dos lenguajes.
Este capitulo explica el lenguaje de definición de datos (DDL, Data
Definition Language) y el lenguaje de tratamiento de datos (DML, Data
Manipulation Language) y se incluyen ejemplos de cada uno.
SQL SERVER Implementacion Pag.75