universidad don bosco facultad de estudios tecnologicos escuela de

Anuncio
UNIVERSIDAD DON BOSCO
FACULTAD DE ESTUDIOS TECNOLOGICOS
ESCUELA DE COMPUTACION
CICLO 01-2012
GUIA DE LABORATORIO Nº 1
Nombre de la practica: Introducción al entorno de desarrollo de SQL Server 2008
Lugar de ejecución: Laboratorio de Informática
Tiempo estimado: 3 horas
Materia: Base de datos I
Docentes: Ing. René Tejada, Inga. Blanca Iris Cañas, Inga. Evelyn Hernández
I. Objetivos


Que los estudiantes se familiaricen con la interfaz gráfica de SQL Server 2008 R2
Que los estudiantes conozcan la forma de crear bases de datos y tablas con el Management Studio.
II. Introducción Teórica
En la presente guía examinaremos cómo utilizar la consola de SQL Management para crear
nuestras propias tablas.
Los Sistemas Gestores de Bases de Datos Relacionales (RDBMS) avanzados no solo guardan los datos;
también los administran, restringiendo el tipo de datos que se puedan incluir en el sistema y también
facilitando la obtención de datos que se encuentran fuera del sistema. Un RDBMS permite ir más allá del
almacenamiento de datos hasta el campo de la definición, la apariencia que deben tener dichos datos o las
reglas del negocio de los mismos.
Con un RDBMS se pueden incorporar dichas reglas directamente en la integridad de la propia base de
datos.
Visión general de los objetos de una base de datos.
SQL Server posee muchos objetos, entre los más importantes se pueden listar los siguientes:















La Base de datos.
El registro de las transacciones.
Las tablas.
Los grupos de archivos.
Los diagramas.
Las vistas.
Los procedimientos almacenados.
Los desencadenadores.
Los índices y las llaves primarias.
Las funciones definidas por el usuario.
Los informes.
Los catálogos de texto.
Los tipos de datos definidos por el usuario.
Las funciones de base de datos.
Los usuarios.
La base de datos es el objeto de nivel más alto al que se puede hacer referencia en cualquier versión de SQL
Server.
1
Por regla general, una base de datos es un grupo que incluye al menos, un conjunto de objetos tablas, y con
frecuencia, otros objetos, como procedimientos almacenados, desencadenadores, y vistas que pertenecen
a una agrupación determinada de datos guardados en las tablas de la base de datos.
Un RDBMS, como SQL Server, puede tener múltiples bases de datos de usuario en un solo servidor o puede
tener una sola base de datos. La cantidad que resida en un solo SQL Server dependerá de factores como la
capacidad (potencia de la CPU, limitaciones E/S del disco, memoria, etc.), la autonomía (una persona tiene
derechos de administración para el servidor en el que se esta ejecutando el sistema y otra persona tiene
derechos de administración para un servidor diferente) o simplemente de cuántas base de datos tenga su
empresa o su cliente.
La primera vez que cargue SQL Server, tendrá cuatro bases de datos del sistema:
· master
· model
· msdb
· tempdb
La base de datos master
Todos los SQL Server, independientemente de su versión o de sus modificaciones personalizadas, tienen la
base de datos master. Esta base de datos contiene un conjunto especial de tablas (tablas del sistema) que
registran el sistema como un todo. Todos los procedimientos extendidos y almacenados del sistema,
independientemente de la base de datos para la que se haya diseñado su uso, se guardan en esta base de
datos. Evidentemente, como casi todo lo que describe nuestro servidor se guarda aquí; esta base es muy
importante para el sistema y no se puede eliminar.
Un nombre totalmente calificado tiene la siguiente estructura:
[Nombre del servidor. [Nombre de base de datos. [Nombre de esquema.]]] Nombre de objeto
Se tiene que proporcionar un nombre de objeto siempre que se ejecute una operación sobre ese objeto, los
nombres de los elementos que se encuentran a la izquierda del objeto son opcionales; la mayoría de veces
no se especifican.
Nombre del ESQUEMA (Conocido como propiedad): Es importante especificar el esquema en el que se
encuentra el objeto con el que se está trabajando. Cabe destacar que se pueden tener dos objetos con
nombres idénticos pero; que se encuentran en esquemas diferentes. En el caso de que sea necesario
acceder a un objeto que no se encuentre en el esquema predeterminado (el que se establece en el inicio de
sesión) tendrá que establecer específicamente el nombre del esquema del objeto.
En el caso de que se utilicen las opciones de esquema, se recomienda que utilice una denominación
combinada de dos partes (esquema y nombre de la tabla) en todas las consultas.
En SQL Server 2008, los objetos se asignan a un esquema mientras que; un propietario se relaciona a un
inicio de sesión particular. Es importante hacer notar que, un esquema se puede compartir entre múltiples
inicios de sesión y, un inicio de sesión puede tener derechos para múltiples esquemas.
De forma predeterminada, sólo los usuarios que son miembros de la función del sistema
sysadmin o de las funciones de bases de datos db_owner o db_ddladmin, pueden crear objetos en una
base de datos.
Las funciones que se mencionan en la guía, son solo algunas de las muchas funciones del sistema y de
bases de datos disponibles en SQL Server 2008. Éstas poseen un conjunto lógico de permisos concedidos
según se tenga que utilizar la función. Al asignar una función determinada a un usuario, se le está
proporcionando a dicho usuario la capacidad de tener todos los permisos que tiene la función.
2
Los usuarios individuales pueden tener privilegios para crear tipos de objetos de base de datos y del
sistema. Si dichos individuos crean un objeto, de forma predeterminada, dicho objeto se asignará a
cualquier esquema que aparezca como predeterminado para ese inicio de sesión.
Se recomienda mantener el acceso a CREATE limitado a la cuenta SA y los miembros de las funciones de
seguridad sysadmin o db_ownwer. No es recomendable asignarle a todos los usuarios permisos de
CREATE.
El Esquema predeterminado dbo:
El usuario que crea la base de datos se considera el “Propietario de la base de datos” o “dbo”.
Cualquier objeto creado dentro de dicha base de datos aparecerá listado con un esquema dbo en lugar de
con su nombre de usuario individual.
Por ejemplo, para un usuario diario de una base de datos, el nombre de inicio de sesión es EsquemaUDB y
se han concedido privilegios para utilizar CREATE TABLE en una determinada base de datos. Si se crease
una tabla denominada MiTabla, el nombre del objeto calificado del propietario sería
EsquemaUDB.MiTabla. Sin embargo, tenga en cuenta que como la tabla tiene a EsquemaUDB como
propietario específico; ningún otro usuario de EsquemaUDB.MiTabla tendría que proporcionar el nombre
calificado del propietario para que SQL Server resolviese el nombre de la tabla.
Ahora suponga que existe otro usuario con un nombre de inicio de sesión de Administrador, él es el
propietario de la base de datos (en lugar de sólo un miembro de db_owner). Si Administrador crea una
tabla denominada MiTabla utilizando una instrucción
CREATE idéntica a la utilizada por EsquemaUDB, el nombre de la tabla cualificado del propietario sería
dbo.MiTabla. Asimismo, como dbo también es él propietario predeterminado, cualquier usuario sólo podrá
hacer referencia a la tabla MiTabla.
El nombre de la base de datos
El siguiente elemento en el convenio de denominación totalmente calificada es el nombre de la base de
datos. Algunas veces desearemos recuperar datos de una base de datos distinta a la predeterminada o a la
actual. De hecho, puede que deseemos unir datos de distintas bases de datos con la cláusula JOIN (será
vista más adelante). Un nombre de base de datos calificado nos proporciona dicha capacidad. Por ejemplo,
si se estuviese conectado a la base de datos AdventureWorks como base de datos actual y desease hacer
referencia a la tabla Orders de la base de datos Northwind, podría hacerlo utilizando
Northwind.dbo.Orders. Como dbo es el esquema predeterminado, también podría utilizar
Northwind..Orders. Si un esquema denominado MiEsquema es propietario de una tabla denominada
MiTabla en MiBasedeDatos, entonces podría hacer referencia a dicha tabla utilizando
MiBasedeDatos.MiEsquema.MiTabla. Recuerde que la base de datos actual (tal como se determine con el
comando USE o en el cuadro de lista desplegable de la consola de administración de SQL Server) es siempre
la predeterminada, por lo que si desea sólo datos de la base de datos actual, no tendrá que incluir el
nombre de la misma en el nombre totalmente calificado.
III. Requerimientos
•
Guía Número 2
IV. Procedimiento
1. Cargue Sql Server 2008 R2:
Iniciando sesión desde SQL Server Managment Studio
3
a. Hacer clic en el botón Inicio
b. Hacer clic en la opción Todos los programas y hacer clic en Microsoft SQL Server
2008 R2
c. Cargue SQL Server 2008 R2.
Para conectarse con el servidor de base de datos elija los siguientes parámetros de autenticación:





Tipo de servidor: Database Engine
Nombre del servidor: SALA02-PCNumMaquina
Nota: NumMaquina es el numero de maquina local
Autenticación: SQL Server Authentication
Login: sa
Password: 123456
2. Luego de clic en el botón conectar (connect).
4
3. Cargará la ventana del SQL Server Managment Studio.
B
A
C
E
D
Descripción del entorno de desarrollo:
A. Barra de herramientas del IDE del SQL Server Managment Studio: Con esta herramienta el usuario
puede crear nuevas consultas, cargar el Analysis Services, abrir archivos ya existentes, guardar el
archivo actual, Imprimir el trabajo actual, cargar el analizador de recursos.
B. La barra de menú se encuentra diseñada de la misma forma en la que vienen todos los programas
que trabajan con los sistemas operativos de Microsoft, es decir; que por medio de ella se puede
guardar, abrir, cerrar archivos y proyectos, copiar, cortar y mover objetos, texto, crear nuevas
consultas, proyectos, depurar código, entre otros.
C. El explorador de objetos es una herramienta que permite la administración de la estructura de
nuestras bases de datos, sus componentes y servicios.
D. El editor de consultas es una herramienta que facilita la escritura y edición de código SQL que
permite la definición de datos y la manipulación de los mismos.
E. La ventana de propiedades es una herramienta que muestra los valores de las propiedades de los
diferentes objetos de las bases de datos que se encuentran cargadas en el sistema.
4. A continuación se procederá a crear una base de datos con el Management Studio. En el
explorador de objetos damos clic derecho sobre la ficha Base de Datos y seleccionamos
Nueva Base de Datos.
5
Se abrirá el cuadro de diálogo Nueva base de datos que le permitirá escribir la información
sobre cómo desea que se cree su base de datos. Primero debemos incluir la información
sobre el nombre y el tamaño de la base de datos. A continuación se encuentra la
información sobre el nombre del archivo, el tamaño y el crecimiento.
Asignamos el nombre de contabilidad a la base de datos y damos clic en el botón de
Agregar. Note que la herramienta muestra la información correspondiente al tamaño del
archivo de la base de datos y a su tasa de crecimiento.
6
Después de de haber hecho clic en Aceptar. Tras una breve pausa, se creará la base de
datos y podrá verla agregada al árbol de Base de datos del explorador de objetos.
5. Para agregar una nueva tabla, tiene que dar clic derecho sobre la carpeta tablas y
seleccionar la opción Nueva tabla….
En el editor de consultas habrá que digitar el nombre del campo, el tipo de datos y
seleccionar si el campo va a permitir valores nulos. Al finalizar dar clic en el icono de
Disquete para guardar.
7
6. Proceda a realizar el siguiente ejercicio:
Se creará una base de datos para llevar el control de los contactos de una empresa con la
idea de ir determinando las llamadas que este contacto realiza a la empresa. Dicha
información se controlara en 3 tablas. Las tablas a crear son:
-
Contactos: Almacena la información de los contactos.
TipoContacto: Almacena la información de los tipos de contactos.
Llamadas: Aquí se almacena las llamadas que hacen los contactos.
Pasos para la creación de la base de datos
a. Haga clic derecho sobre la carpeta Base de Datos que aparece en el Explorador de
objetos, aparecerá un menú emergente del cual seleccionara la opción nueva base de
datos, y se desplegará una nueva ventana donde especificaremos el nombre de la base
de datos a crear , el nombre de la base de datos será CONTACTOS#CARNET (EJEMPLO:
CONTACTOSHJ071234).
b. Luego en la sección Archivos de la base de datos, en la columna Tamaño Inicial se
especifica el tamaño que tendrá la base de datos y el log de transacciones. El tamaño
inicial para la Base de datos será de 10 MB y par el Log 10 MB.
c.
Haga clic en Aceptar y se creara la base con todas las especificaciones dadas en el paso
anterior, ahora haga clic derecho nuevamente en el explorador de objetos y seleccione
actualizar para que pueda ver la base que ha sido creada.
Creación de tablas.
Se crearán las necesarias para llevar el control.
Especificaciones: Tabla contactos
8
Nombre del campo
IdContacto
Nombres
Apellidos
Dirección
Ciudad
País
NombreCompañía
Cargo
TeléfonoTrabajo
TeléfonoMovil
CorreoElectrónico
IdTipoContacto
Tipo de dato
int
Varchar
Varchar
Varchar
Varchar
Varchar
Varchar
Varchar
Char
Char
Varchar
int
Tamaño Propiedad
int Identity
30
30
60
25
25
30
30
8
8
40
a. En el explorador de objetos expanda la carpeta base de datos y seleccione la base que se creó en el
paso anterior, expanda la base de datos y seleccione la carpeta de Tablas, haga clic derecho sobre
ella y seleccione del menú emergente Nueva Tabla…, y aparecerá el editor para crear la tabla
donde especificaremos el nombre de la columna, el tipo de datos, permitir valores nulos.
b. Agregar la propiedad Identity al campo IdContacto:
a. Hacer clic sobre el campo IdContacto
b. En la opción de Propiedad de la columna seleccione la opción Identity Specification
c. Hacer clic sobre el símbolo + y seleccione la opción Is Identity, y cambie su valor de No a
Yes
c. Una vez especificados toda la estructura de la tabla hacer clic en guardar y especificar el nombre de
la tabla que será: Contactos
9
d.
Ingresar registros a la tabla. Una vez que las tablas han sido creadas se procederá a ingresar la
información en cada una de ellas.
Paso a seguir para la inserción de información en las tablas.
a. Seleccione la tabla en la cual se desee ingresar información, luego hacer clic derecho sobre ella y
seleccionar del menú emergente Edit Top 200 Rows, Seguidamente se mostrará un nuevo editor,
que por su apariencia se podría comparar con una hoja electrónica (Filas y Columnas) donde en la
parte superior están los nombres de los campos, y en la otra área se podrán agregar los registros a
la tabla
NOTA: Para los campos definidos como Identity no es necesario especificar un número el se asigna
Automáticamente.
b. Si desea ubicarse en el siguiente campo solo presione Enter o la tecla Tab y de esa forma se irá
desplazando hacia los siguientes campos.
c. Adicione 5 registros a la tabla.
d. Luego hacer clic en guardar para que queden guardados los registros.
Modificar registros de una tabla.
Paso a seguir para modificar la información en las tablas.
a. Hacer clic derecho sobre la tabla en donde se desee modificar los registros y seleccionar Edit Top
200 Rows.
b. Modifique el contenido de un registro solamente, busque el registro y el dato a modificar coloque
el cursor en dicha celda y borre y escriba el nuevo contenido.
c. Guarde el cambio cierre la tabla y vuelva abrirla para que verifique que realmente se ha efectuado
la modificación.
Eliminar un registro.
a. Para borrar un registro, selecciónelo haciendo clic sobre su selector de fila a continuación elija
Eliminar registro del menú Edición, o haga clic con el botón derecho sobre el registro que desea
eliminar y seleccione del menú emergente la opción de eliminar.
b. Haga la prueba eliminando uno de los registros que ingreso anteriormente.
Crear una llave primaria
a. Haga clic derecho sobre el campo IdContacto y seleccione la opción Set Primary Key
b. Y el campo seleccionado aparecerá un icono igual al de una llave
Tabla TipoContacto
Nombre del campo Tipo de dato Tamaño Restricción
IdTipoContacto
Int
Llave Primaria
Nombre_Tipo
Varchar
25
10
Tabla Llamadas
Nombre del campo
IdLlamada
Duración
IdContacto
Tipo de dato Tamaño Restricción
Int
Llave Primaria
Decimal
(18, 0)
int
Crear relación entre tablas
a. En la carpeta Database Diagrams haga clic derecho New Database Diagram
b. En el cuadro de dialogo hacer clic en la opción Yes
c. En la ventana Add Table haga clic en Add hasta que las tres tablas se hayan agregado
d. Y aparece la siguiente ventana con las tres tablas agregadas
e.
Hacer clic sobre el campo IdContacto de la tabla Contactos y arrastrar el campo hasta la tabla
Llamadas y se abrirá la siguiente ventana:
11
f.
Revise que los nombres de las tablas y los nombres de los campos sean correctos y haga clic en Ok,
y haga clic en Ok en la siguiente ventana activa.
g. Ahora seleccione el campo IdTipoContacto de la tabla TipoContacto y arrástrelo hasta la tabla
Contactos, revise las tablas y los campos como se ve a continuación:
h. Al final le quedara el siguiente diagrama:
12
V. Análisis de resultados
Para la próxima semana entregar en pareja la siguiente investigación:
a. Crear una base de datos con tres tablas: una para llevar los datos del alumno, otra para llevar los
datos del profesor y otra que contenga las materias que se imparten en Ingeniería (Nombre de
materia, código, unidades valorativas). Después modifique el tamaño de la base de datos, para que
ahora mida 15MB.
b. Cree una nueva base de datos la cual tendrá el nombre el número de su carnet solamente. El
tamaño inicial para la base de datos será de 5 MB y el de el log de transacciones de 3 MB.
c. Luego cree las siguientes tablas:
TABLA: CLIENTE
Campo
Numcli
Nomcli
Dircli
Fax
Correo_E_Mail
Sald_0_30
Sald_31_60
Sald_61_90
Tipo de Dato
Int
Char
Char
Int
Char
Decimal
Decimal
Decimal
Longitud Valores
Not Null
30
Not Null
30
Restricción
Llave Primaria
Tipo de Dato
Int
Char
Char
Char
Int
Char
Decimal
Decimal
Longitud Valores Restricción
Not Null Llave Primaria
20
Not Null
20
Not Null
30
30
(10,2)
(10,2)
(10,2)
TABLA: VENDEDOR
Campo
Numvend
Nomvend
Apellvend
Dirvend
Telvend
E-Mail
Cuota
Ventas
30
(10,2)
(10,2)
TABLA: ARTICULO
Campo
Numart
Descripcion
Precio
Existencia
Categoria_Art
Tipo de Dato
Char
Char
Decimal
Int
Char
Longitud Valores Restricción
4
Not Null Llave Primaria
30
(10,2)
Not Null
30
13
TABLA: PEDIDO
Campo
Numped
Numcli
Numvend
Fecha_Ped
Total_desc
Tipo de Dato Longitud Valores Restricción
Int
Not Null Llave Primaria
Int
Not Null
Int
Not Null
Datetime
Decimal
(10,2)
TABLA: DETALLE PEDIDO
Campo
Numped
Numart
Cantidad
Tipo de Dato Longitud Valores
Int
Not Null
Char
4
Not Null
Int
d. Agregar por lo menos 3 registros para cada tabla
e. Crear el diagrama de la base de datos y relacione las siguientes tablas:




El campo NumCli de la tabla Cliente con el campo NumCli de la tabla Pedido
El camp Numart de la tabla Articulo con el campo Numart de la tabla Detalle Pedido
El campo Numvend de la tabla Vendedor con el campo Numvend de la tabla Pedido
El campo Numped de la tabla Pedido con el campo Numped de la tabla Detalle Pedido
VI. Referencia Bibliográfica
Microsoft SQL Server 2008, Guía Práctica, Francisco Charte Ojeda; Anaya Multimedia.
14
Descargar