SQL Server Management Studio (SSMS) Creacin y modificacin de bases de datos Modos de autenticacin
SQL Server Management Studio (SSMS) El SQL Server Management Studio es una herramienta bsica para la administracin de SQL Server. Provee una variedad de funcionalidades para administrar el servidor usando una interfaz grfica amigable. Iniciando el SSMS Cuando se inicia el SSMS, se presenta el siguiente cuadro de dilogo:
Esta pantalla permite conectarse al servidor seleccionado (en este caso local) usando las credenciales correspondientes, y a travs de dos tipos de autenticacin disponibles. Las opciones que se presentan son:
Server Type. Indica a cul de los servidores de SQL Server se ingresar. Debido a que estos servidores pueden compartir el mismo nombre se debe tener cuidado de conectarse al servidor correcto. Server Name. Muestra el nombre del servidor correspondiente, en este caso es (local). Authentication. El modo de autenticacin con el cual entraremos al servidor. Estos pueden ser autenticacin de Windows y autenticacin de SQL Server.
El entorno del SSMS Al conectarnos aparecer el entorno del SSMS, en el cual veremos las diferentes opciones que nos ofrece.
Se muestra la barra de herramientas con sus diferentes opciones: New Query. Abre el Query Analyzer, el cual nos permite ingresar sentencias SQL y ejecutarlas sobre la base de datos en la cual estamos trabajando. Database Engine Query. Permite ingresar y ejecutar sentencias SQL, la diferencia es que sta opcin nos preguntar a qu servidor queremos conectarnos. Queries de Analysis Services. Permite ingresar y ejecutar consultas del tipo MDX, DMX y XMLA para cubos OLAP (MDX) o Data Mining (DMX), propios de Data warehouse. SQL Server Compact Query. Permite ingresar y ejecutar consultas SQL sobre un servidor del tipo SQL Server Compact.
El explorador de objetos Esta herramienta nos permite navegar sobre la base de datos, buscar nombres de objetos e inclusive ejecutar acciones como crear scripts, hacer respaldos, etc. As como tambin nos permite administrar nuestro servidor.
Ac se crean tambin objetos como diagramas, tablas, vistas o procedimientos almacenados. Se puede inclusive ir a un nivel ms detallado de cada seccin (ver columnas de las tablas, etc).
Ingresar y ejecutar Queries. Para esto haremos clic sobre el botn New Query y se abrir al lado derecho el Editor de Consultas con la conexin actual. ADVERTENCIA: SE DEBE PROCURAR NO TRABAJAR SOBRE LA BASE DE DATOS master, YA QUE SU MANIPULACIN PODRA GENERAR PROBLEMAS EN SQL SERVER.
Trabajaremos con la base de datos AdventureWorks. Para eso seleccionaremos dicha base de datos del combo box.
Luego escribiremos en el editor de consultas SELECT * FROM Person.Address;, notar que a medida que se va escribiendo, las palabras y frases cambian de color, as como tambin se muestra cdigo que tiene relacin con lo que se va escribiendo. A esta caracterstica se le llama IntelliSense, la cual es similar a la que posee Visual Studio.
Botones del editor de consulta Ejecutar. Ejecuta la sentencia o sentencias sobre la base de datos. Debug. Permite depurar las sentencias seleccionadas al ejecutarlas paso a paso. Parse. Nos permite saber si la sintaxis de las sentencias no contienen errores. Esta funcin no ejecuta las instrucciones. Para ejecutar la consulta, simplemente damos clic al botn Ejecutar o presionamos F5 y se mostrarn los resultados en la parte inferior, junto con un mensaje dicindonos si la operacin tuvo xito o hubo algn error. Creacin y Modificacin de Bases de Datos Se pueden crear y modificar bases de datos ya sea usando el SSMS o T-SQL. Veremos las dos formas. Creacin de Bases de Datos Usando el SSMS Recordar que al crear una base de datos sta se creara sobre el servidor al cual estamos conectados, por lo que debemos estar seguros de estar en el servidor correcto. 1. Expandimos en el explorador de objetos la instancia del servidor correspondiente. 2. Hacemos clic derecho sobre la carpeta Databases y seleccionamos New Database....
3. Escribir el nombre de la base de datos en el campo Database name:
Notar que a medida que se va escribiendo el nombre se van generando, en la tabla inferior, los archivos correspondientes a la base de datos. 4. Damos clic en Ok y se crear la base de datos con las opciones por defecto.
Usando Transact-SQL (T-SQL) Sentencia CREATE La sentencia CREATE nos sirve para crear objetos sobre una base de datos (inclusive para crear una base de datos). La sintaxis de esta sentencia es: CREATE <Tipo de Objeto> <Nombre de Objeto> A medida que se avance en el curso se ver los diferentes tipos de objetos que puede haber. CREATE DATABASE La parte ms bsica para usar esta sentencia es: CREATE DATABASE <Nombre de la BD> Con esto se crear la base de datos con las opciones por defecto, sin embargo podemos ampliar la sintaxis as: CREATE DATABASE <Nombre de la BD> [ON [PRIMARY] ([NAME = <logical file name>,] FILENAME = <file name> [, SIZE = <size in kilobytes, megabytes, gigabytes, or terabytes>] [, MAXSIZE = size in kilobytes, megabytes, gigabytes, or terabytes>] [, FILEGROWTH = <kilobytes, megabytes, gigabytes, or terabytes|percentage>])] [LOG ON ([NAME = <logical file name>,] FILENAME = <file name> [, SIZE = <size in kilobytes, megabytes, gigabytes, or terabytes>] [, MAXSIZE = size in kilobytes, megabytes, gigabytes, or terabytes>] [, FILEGROWTH = <kilobytes, megabytes, gigabytes, or terabytes|percentage>])]
ON: Se usa para definir la ubicacin del archivo donde los datos son guardados y de igual manera para los archivos de log. La opcin PRIMARY se puede reemplazar por el nombre del grupo de archivos primarios donde se almacenarn fsicamente los datos. NAME: Es el nombre lgico del archivo, con el cual SQL Server usa para referirse internamente a l. Se usa para este nombre cuando se quiere cambiar el tamao de la base de datos. FILENAME: Es el nombre con el que se guarda el archivo de datos o log en disco. SIZE: El tamao de la base de datos, por defecto en MB. Si se quiere especificar en otra medida se usa KB o GB en vez de MB despus del valor numrico. Debe ser un valor entero. MAXSIZE: Es el valor mximo de la base de datos. SQL Server automticamente incrementar el tamao de la base de datos a medida sta crezca hasta llegar a este valor. FILEGROWTH: Determina que tan rpido se llega al valor MAXSIZE. El valor se da en KB, MB, GB o TB y este nos dice cuanto tamao incrementar la base de datos. Se puede proveer un porcentaje, el cual es sobre el tamao actual de la base de datos. LOG ON: Nos permite establecer que archivos de log queremos y en qu ubicacin. Si esta opcin no es provista, SQL Server crear el log en un solo archivo. Crearemos una base de datos llamada Cuentas con la sintaxis ampliada: CREATE DATABASE Cuentas ON (NAME = Cuentas, FILENAME = 'C:\CuentasData.mdf', SIZE = 10, MAXSIZE = 50, FILEGROWTH = 5) LOG ON (NAME = 'CuentasLog', FILENAME = 'C:\CuentasLog.ldf', SIZE = 5MB, MAXSIZE = 25MB, FILEGROWTH = 5MB);
Modificacin de Bases de Datos Sentencia ALTER DATABASE Nos permite cambiar propiedades ya establecidas de la base de datos. Por ejemplo, la siguiente sentencia: ALTER DATABASE Cuentas MODIFY FILE (NAME = Cuentas, SIZE = 100MB) Expande el tamao de la base de datos Cuentas a 100MB, tomar en cuenta que el nombre con el cual nos referimos es el nombre lgico que le asignamos al momento de crear la base de datos con el comando CREATE DATABASE. Todas las opciones como MAXSIZE, FILEGROWTH, etc., pueden cambiarse usando el comando ALTER DATABASE. Usando el SSMS Para modificar nuestra base de datos usando el SSMS, tenemos que expandir en el explorador de objetos el servidor donde se encuentra la base de datos, y luego dar clic derecho sobre la base de datos y dar clic en propiedades.
Se abrir la ventana de propiedades de la base de datos. En cada apartado podemos ir cambiando los valores de cada propiedad,
En este ejemplo, podemos cambiar propiedades como el nombre lgico, grupo de archivos al cual pertenece, tamao inicial y el crecimiento automtico. Ciertas propiedades, como el tipo de archivo, no son modificables. Adjuntar una base de datos Para adjuntar una base de datos, damos clic derecho sobre la carpeta base de datos y damos clic a la opcin Adjuntar y aparecer el cuadro dilogo para adjuntar una base de datos, damos clic al botn agregar y buscamos el archivo MDF correspondiente, al hacerlo aparecer las propiedades generales del archivo de datos.
Al dar clic en Aceptar se adjuntar la base de datos y aparecer en la carpeta correspondiente en el servidor.
Eliminar una Base de Datos. Usando el SSMS Para eliminar una base de datos, simplemente se da clic derecho sobre ella y se da clic a la opcin Eliminar.
En el cuadro de dilogo Eliminar objeto seleccionar la casilla Cerrar conexiones existentes y dar clic al botn Aceptar.
Se eliminar la base de datos seleccionada. Usando Transact-SQL Para eliminar una base de datos a travs de T-SQL primero debemos estar en la base de datos master, y luego usamos el comando DROP DATABASE: USE master DROP DATABASE Pcs2010 Y se ejecuta, de esta manera se eliminar la base de datos Pcs2010. Modos de Autenticacin Para conectarnos a SQL Server podemos elegir entre el modo de autenticacin de Windows y el modo de autenticacin de SQL Server. La autenticacin de Windows siempre est habilitada aunque se haya configurado la autenticacin de SQL Server. Autenticacin de Windows Los usuarios de Windows son asignados a un login de SQL Server en su perfil de Windows. Cuando stos quieren iniciar sesin en SQL Server son validados a travs del dominio de Windows y se les asigna los roles correspondientes. Estos roles le indican al usuario que tiene autorizado hacer. Una ventaja de este modo es que solo se necesita una clave, si sta se cambia en el dominio de Windows tambin se cambia en la cuenta de SQL Server. Otra ventaja es que el administrador puede gestionar a los usuarios en un solo lugar. Autenticacin de SQL Server Este mtodo no toma en cuenta el dominio de Windows sino que provee al usuario de un nombre de usuario y contrasea. Una ventaja de esto es que el administrador de la base de datos no necesita ser administrador del dominio de Windows para gestionar a los usuarios. Es un mtodo de autenticacin ms simple y le permite a una persona tener varios usuarios en el servidor. Cmo trabaja la autenticacin El cuadro de dilogo toma la informacin necesaria para crear la conexin (nombre de usuario, contrasea, nombre del servidor, tipo del servidor). Una vez que la tiene ensambla esta informacin en un solo string de conexin y se lo enva al servidor. La conexin es luego rechazada o aceptada, si es aceptada un manejador es asignado a la ventana de consultas (editor de consultas) para que la informacin de conexin pueda ser usada varias veces para cada consulta (query), media vez no nos desconectemos.