Académique Documents
Professionnel Documents
Culture Documents
ADR Infor SL
ndice
SQL Server. Bases de datos.
Creacin de una base de datos.
Opciones de las bases de datos (I).
Nivel de compatibilidad
Actualizacin de estadsticas.
Cerrar automticamente.
Crear estadsticas automticamente.
Reducir automticamente.
Cierre del cursor al confirmar habilitado.
Cursor predeterminado.
Base de datos de slo lectura.
Estado de la base de datos.
Emergency
Normal
Online
Suspect
Restringir acceso.
Multiple
Single
Restricted
Opciones de las bases de datos (II).
Verificacin de pginas
Checksum
TornPageDetection
None
Advertencia ANSI habilitada.
Anulacin aritmtica habilitada.
Anulacin exacta numrica.
Concatenar valores NULL produce NULL.
Desencadenadores recursivos habilitados.
Identificadores entre comillas habilitados.
NULL ANSI predeterminado
Relleno ANSI habilitado.
Valores NULL ANSI habilitados.
Modificacin del tamao.
Incremento del archivo de datos.
Incluir archivos de datos y de registro secundarios.
Reduccin de archivos de datos.
Eliminacin.
Ejercicios
Ejercicio 1. Crear bases de datos
3
3
9
9
10
10
10
11
11
11
11
12
12
12
12
12
12
13
13
13
13
13
13
14
14
14
14
14
14
15
15
15
15
15
16
16
18
20
22
26
26
2/26
1
Comenzaremos como es lgico por abrir la herramienta SQL Server Management Studio
que se encuentra en el grupo SQL Server dentro de Programas del men Inicio. Una vez
arrancada la herramienta nos conectamos con autenticacin Windows.
3/26
2
No situamos en el panel del explorador de objetos y expandimos el servidor para pulsar
con el botn derecho sobre "Base de datos" y se selecciona "Nueva Base de Datos" del
men de contexto.
4/26
3
En la ventana abierta llamada "Nueva base de datos", vemos en la parte izquierda un panel
con una lista "Seleccionar una pgina", con la pgina General seleccionada, introducimos
como nombre de base de datos "Ventas" y el propietario dejaremos de momento "sa".
5/26
4
En el panel de la izquierda cambiamos a la pgina Opciones y seleccionamos en
intercalacin "<servidor predeterminado>" y el modo de recuperacin "Completa".
5
Seleccionamos de nuevo la pgina General y comprobamos que tenemos dos filas en la
seccin "Archivos de base de datos." Una de ellas para el archivo de datos y otra para el
registro de transacciones. Modificaremos el tamao inicial a 15 del archivo de datos.
6/26
6
Hacemos click en el botn de puntos suspensivos de la columna "Crecimiento automtico"
en el archivo de datos.
7
Se abre la ventana para "Cambiar el crecimiento automtico para Ventas", limitamos el
crecimiento de los archivos a 50 Mb. Se podra seleccionar la opcin "No limitar el
crecimiento de los archivos" marcada, pero corremos el riesgo de que el archivo de datos
ocupe todo el disco duro, lo que provocar un bloqueo del sistema del equipo, si el disco
duro es compartido por varios programas, incluido el sistema operativo Windows.
7/26
8
Pulsamos sobre el mismo botn de puntos suspensivos pero esta vez para el archivo de
registro. Marcamos el crecimiento de archivos "En porcentaje" e introducimos un 10 como
valor y limitamos el tamao mximo de archivo a 20 Mb.
9
Aceptamos la ventana en la pgina "General" y SQL Server comenzar el proceso de
creacin de esta nueva base de datos.
Para comprobar que la base de datos se ha creado adecuadamente podemos acudir al explorador de
objetos, recuerda que SQL Server no actualiza automticamente los cambios que se produzcan por
aadir o eliminar objetos, para mejorar la optimizacin de rendimiento, as que es posible que debas
actualizar el listado tu mismo. Una vez hecho encontramos nuestra nueva base de datos:
Como ves, mediante SQL Server la creacin de bases de datos es un proceso muy sencillo de llevar a
cabo, y las opciones se configuran de un modo rpido e intuitivo.
8/26
Nivel de compatibilidad
Desde esta opcin podemos configurar la base de datos para que se comporte del mismo modo que si
fuese una versin anterior a SQL Server 2012. Utilizaremos esta opcin cuando dispongamos de bases
de datos o aplicaciones creadas con versiones anteriores a SQL Server 2012 y que queramos utilizar
con sta ltima. Tenemos 3 opciones diferentes: SQL Server 7.0 (70), SQL Server 2000 (80) , SQL
Server 2005 (90), SQL Server 2008 (100) y SQL Server 2012 (110) , cada opcin tienes su propio
nivel de compatibilidad de SQL Server. Veamos algunos ejemplos de estas compatibilidades:e
9/26
En el nivel 80, si recogemos columnas con nombres duplicados en una consulta, esta
duplicacin no se tiene en cuenta, mientras que en el nivel 90 genera un error.
En el nivel 80, las cadenas de caracteres y constantes varbinary con un tamao superior a
8000 se gestionan como si fuesen tipos de datos text, ntext o image. En cambio en el nivel 90,
se gestionan como si fuesen tipos varchar(max), nvarchar(max) o varbinary (max). (Ms
adelante iremos viendo todos estos tipos de datos.)
En el nivel 80, la palabra clave WITH es opcional para los bloqueos de la clusula FROM,
mientras que en el nivel 90 es obligatoria.
Cada nivel de compatibilidad recoge una serie de palabras claves propias:
Nivel 70: BACKUP, CONTAINS, CONTAINSTABLE, DENY, TOP,
ROWGUIDCOL, RESTORE, PERCENT, FREETEXTTABLE, FREETEXT.
Nivel 80: COLLATE, FUNCTION, OPENXML
Nivel 90: TABLESAMPLE, UNPIVOT, PIVOT
Actualizacin de estadsticas.
Si marcamos esta opcin como verdadera, SQL Server se encarga de actualizar automticamente las
estadsticas generadas en intervalos de tiempo. Si se deja esta opcin con valor falso, esta actualizacin
deber ser manual.
La configuracin de esta opcin depender de un modo muy estrecho con la capacidad de nuestro
equipo. En funcin del nmero de recurso de que dispongamos, como puede ser la memoria RAM, o el
tiempo CPU.
Es posible realizar planes de mantenimiento para programar la ejecucin de esta tarea en los intervalos
de tiempo que deseemos.
Cerrar automticamente.
Para que un usuario pueda utilizar una base de datos se debe abrir una conexin. Mientras est conexin
permanece abierta consume recursos del sistema (RAM y CPU). Si marcamos esta opcin como
verdadera (True) la conexin se cierra automticamente cuando el ltimo usuario abandona la conexin.
En un sistema de escritorio los escritorios suelen venir limitados, por este motivo en la versin Express
Edition encontramos esta opcin con el valor True.
En el resto de versiones esta opcin por defecto se marca con el valor False, ya que de otro modo, los
usuarios deberan abrir y cerrar la base de datos en cada uso que hagan de ella, todo este trabajo "extra"
ralentiza el sistema.
10/26
Para realizar esta bsqueda, el optimizador se basa en el examen de las estadsticas de cada una de las
columnas mencionadas en la consulta SELECT, las estadsticas se basan en el nmero de valores de cada
columna que se seleccionada que son nicos y el nmero de duplicados.
Con esta opcin configurada con el valor True, SQL Server crear de modo automtico estadsticas
para cualquiera de las columnas que formen parte de un ndice.
Si establecemos esta opcin se establece a False, el administrador deber creer estas estadsticas de modo
manual. Lo ms razonable es dejar este valor a True, para que sea SQL Server el encargado de generar
estas estadsticas ya que es necesaria mucha experiencia y conocimientos para superar el optimizador de
consultas.
Reducir automticamente.
Una de las tareas que ejecuta SQL Server recorre en intervalos de tiempo prefijado en busca de ms de
un 25 por ciento de espacio libre, en caso de ser as, SQL Server reduce automticamente el tamao de
la base de datos, de modo que slo tenga un 25 por ciento de espacio libre.
Si tenemos esta opcin con valor verdadero, la reduccin se har automtica. En caso de estar como
False (valor por defecto para todas las versiones excepto para la versin Desktop), no se har de modo
automtico
La mejor opcin es dejar la opcin con su valor predeterminado, ya que todo el proceso que conlleva la
reduccin de tamao automtica consume una gran cantidad de recursos del sistema.
Cursor predeterminado.
Si configuramos esta opcin como LOCAL esto significa que todo cursor que es creado por la llamada
de un procedimiento almacenado ser local para este procedimiento. Es decir, el cursor creado slo
podr ser utilizado por el procedimiento almacenado que lo llama.
Configurando esta opcin con el valor GLOBAL, el cursor creado por un procedimiento almacenado
podr ser utilizado por cualquier otro procedimiento almacenado de la conexin.
Por defecto esta opcin tiene el valor GLOBAL.
Esta opcin determina que la base de datos sea de slo lectura, es decir, no se podr hacer ninguna
actualizacin, eliminacin ni ingreso de registros.
Las bases de datos de slo lectura no se incluyen dentro de la recuperacin automtica, proceso por el
cual se comprueba que todas las transacciones confirmadas durante el inicio del sistema se han en
inscrito en todas las bases de datos.
En una base de datos que no sea de slo lectura se producen bloqueos durante la actividad sobre la
misma del siguiente modo, si un usuario est leyendo varios registros, bloque a un segundo usuario
para que no pueda modificarlos. En bases de datos de slo lectura, sabemos que no se va a producir
ninguna modificacin, por lo tanto no es necesario realizar este tipo de bloqueos y la base de datos
tendr un acceso de datos mucho ms eficaz.
Es aconsejable detectar bases de datos que no se modifiquen frecuentemente, como son las bases de
datos con informacin de ayuda o auxiliares para la toma de decisiones y configurarlas como bases de
datos de slo lectura.
Emergency
Este estado nos indica que algn usuario con permisos de administrador ha puesto la base de datos en
estado Emergency porque est solucionando problemas. Cuando una base de datos se encuentra en este
estado est configurada como de slo lectura, el registro se deshabilita y nicamente tendrn acceso los
usuarios registrados como administradores.
Normal
Como su propio nombre indica, la base de datos se encuentra funcionando sin ningn tipo de
problema.
Online
Este estado nos informa de que la base de datos se ha cerrado de un modo correcto y no es posible que
se modificada.
Suspect
La base de datos tiene algn tipo de problema y debe ser revisada. En estos casos existe una
probabilidad alta de tener que restaurar la base de datos mediante una copia de seguridad.
Restringir acceso.
12/26
Mediante esta opcin tenemos la posibilidad de gestionar los usuarios que pueden acceder a la base de
datos. Tenemos las siguientes posibilidades:
Multiple
Valor predeterminado de esta opcin, permite que cada usuario tenga los permisos correctos para el
acceso a la base de datos.
Single
Con esta opcin permitimos el acceso a un nico usuario al mismo tiempo. Lgicamente el usuario al
que se le permite el acceso debera ser el mismo que ha configurado esta opcin.
Es aconsejable utilizar el valor Single cuando vamos a restaurar o modificar el nombre de una base de
datos, ya que no interesa que nadie realice ningn tipo de actividad en la base de datos.
Restricted
Tenemos un grupo de usuarios especial en SQL Server llamado db_owner. Los usuarios que
pertenecen a este grupo tienen un control administrativo en la base de datos a la que pertenezcan.
Otro grupo especial es Dbcreator, que tiene privilegios dentro de la base de datos.
Sysadmin el grupo de usuarios que tiene todos los permisos administrativos sobre todas las bases de
datos del servidor.
Si la opcin Restricted est a True, slo los usuarios que pertenezcan a estos tres grupos tendrn
permiso para acceder a la base de datos. Hay que tener en cuenta que las personas que estn conectadas a
la base de datos en el momento de restringir el acceso con Restricted, no sern desconectadas, pero una
vez que abandonen la conexin ya no podrn conectarse de nuevo.
La gran utilidad de esta opcin se presenta en la etapa de desarrollo de la base de datos, podemos
utilizarla cuando deseemos modificar la estructura de un objeto, como modificar el nmero de columnas
de una tabla.
Checksum
13/26
Indica a SQL Server que calcule un valor de suma de comprobacin para la pgina de datos y lo
incluya en el encabezado de la pgina en el momento de escribirla en disco.
Ms adelante en el momento de leer la pgina de nuevo, se comprueba esta suma y se compara con el
valor almacenado anteriormente en el encabezado. Si estos valores coinciden, el proceso es correcto, de
no ser as la pgina no es correcta. Con esta opcin se pueden detectar la mayora de los errores de
pgina.
TornPageDetection
Indica que SQL Server escriba un bit invertido en el encabezado de cada pgina para cada sector de 512
bytes. Si el bit es encontrado en un estado no vlido en el instante de realizar una posterior lectura, la
pgina ser incorrecta.
None
Esta opcin indica que no se realice ninguna accin preventiva por si se produce cualquier error de E/S
de disco en el momento de escribir o leer en las bases de datos.
14/26
Si activamos esta opcin cualquier comparacin realizada con un valor NULL devuelve como resultado
NULL.
Si la configuramos como False, una comparacin de datos que no sean Unicode con valores nulos
devuelven False, y una comparacin entre dos valores NULL devuelve True. Por defecto esta opcin es
False.
16/26
Abrimos SQL Server Management Studio y expandimos las base de datos " en el explorador
de objetos, hacemos click con el botn derecho en la base de datos Ventas y seleccionamos
"Propiedades".
En el panel "Seleccionar una pgina", escogemos la opcin "Archivos".
En la columna Tamao inicial de la fila del archivo de datos de Ventas (archivo de datos)
escribimos 30.
En la columna Tamao Inicial de la fila del archivo de registros Ventas_log, escribimos 10.
Hacemos click en el botn de puntos suspensivos en la columna Crecimiento automtico de la
fila Ventas_log, y ponemos el tamao mximo del archivo a 15.
17/26
18/26
1
Hacemos click en la base de datos "Ventas" con el botn derecho y seleccionamos
propiedades.
Seleccionamos la pgina "Archivos", y pulsamos en el botn "Agregar" y se aadir una
tercera fila:
19/26
3
Escribimos el nombre deseado, Ventas_data2 en la columna "Nombre lgico", y el resto de
campo se completarn de modo automtico.
De nuevo pulsamos en el botn "Agregar" y aadimos una cuarta fila.
En la columna "Nombre lgico" escribimos Ventas_log2 y modificamos el tipo de archivo
a "Registro".
Por ltimo pulsamos en "Aceptar" para activar estos cambios.
Si la base de datos no cumple con las expectativas fijadas y la actividad es inferior a lo esperado, es
posible que sea aconsejable reducir el tamao de la base de datos. Para reducir el tamao de la base de
datos Ventas seguimos el siguiente proceso:
1
Pulsamos con el botn derecho en la base de datos "Ventas" y seleccionamos la opcin Tareas ->
Reducir -> Base de datos.
21/26
2
En la ventana que nos muestra "Reducir base de datos" nos permite reorganizar los archivos de
datos, reducirlos y programar la tarea para que esto se produzca ms adelante. Escogemos los valores
por defecto y pulsamos en "Aceptar".
Eliminacin.
Si decidimos prescindir de una base de datos en un servidor, debemos eliminarla por completo para dar
espacio adicional a las bases de datos que s utilizamos.
Para eliminar la base de datos Ventas realizamos los siguientes pasos:
22/26
1
Pulsamos con el botn derecho sobre la base de datos y seleccionamos la opcin
"Eliminar".
23/26
2
En la ventana para "Eliminar Objeto" dejaremos marcada la opcin para eliminar la copia
de seguridad y restaurar la informacin del historial, de este modo liberamos el espacio de
la base de datos, donde se guarda el historial. Tambin es aconsejable marcar la opcin
"Cerrar conexiones existentes" para que se pueda desconectar a un usuario que se encuentre
en esos momentos conectado.
3
Pulsamos en "Aceptar" y confirmamos la eliminacin.
De este modo hemos conseguido eliminar completamente la base de datos junto con todos los
archivos principales, secundarios y de registro que la acompaan.
24/26
25/26
Ejercicios
Ejercicio 1. Crear bases de datos
15
Descripcin
Nombre
EjerciciosSQL
Propietario
sa
5 Mb
2 Mb
12%
Lmite de crecimiento
100 Mb
5%
Lmite de crecimiento
Sin lmite
26/26