You are on page 1of 24

UNIVERSIDAD AUTONOMA DEL ESTADO DE HIDALGO ESCUELA SUPERIOR HUEJUTLA INSTITUTO DE CIENCIAS BASICAS E INGENIERIAS LICENCIATURA EN SISTEMAS COMPUTACIONALES

Sistema de SysAgenda
MATERIA:Base de Datos II

CATEDRATICO: MC Felipe de Jesus Nuez Cardenas

INTEGRANTES:

Anabel Reyes cruz Marisol Perez San Juan Petra Mogica Martnez Leticia Hernadez Hernandez Maria Cruz Trinidad Dulce Maythe del Angel Trinidad

Huejutla de Reyes, Hidalgo. Mayo de 2011

METODO PASO A

PASO

VISUAL STUDIO 2010 SQL SERVER 2005

DESARROLLANDO UN MINI SISTEMA

PRACTICA DE PROGRAMACION VISUAL STUDIO 2010 PASO A PASO

1. Introduccin 2. Herramientas Necesarias 3. Anlisis Bsico del Sistema 4. Base de Datos SQL Server 2005 5. Tablas 6. Procedimientos Almacenados 7. Conexin Visual Basic.NET con SQL Server 2005 XE 8. Interfaz del usuario Windows Forms con Visual Basic .NET 9. Formulario de Inicio de Sesin (usuario & Password) 10. Formulario Principal 11. Formulario de Mantenimiento de Datos 12. Reportes Crystal Report 13. Pruebas de Funcionalidad

INTRODUCCIN

El presente trabajo trata de un mini sistema de Agenda que consideramos que es una prctica completa para aprender a manejar las siguientes herramientas: SQL SERVER 2005 y Visual Studio 2010. Va dirigido a todas las personas que comienzan a trabajar con el Desarrollo de la Programacin de Aplicaciones. En este sistema describiremos de manera detallada la secuencia de pasos que nos llevan a obtener un sistema Cliente / Servidor; sysAgenda. Para ello nuestro sistema registrar a Contactos de Diferentes Carreras Profesionales, Pases; los cuales los tendremos registrados ante una necesidad de obtener sus datos. Para hacerlo sencillo y ser comprensible trabajaremos con 3 tablas en la Base de Datos y una tabla de registro de Usuarios.

HERRAMIENTAS NECESARIAS

Microsoft Visual Studio 2010 Microsoft SQL Server 2005

ANLISIS BSICO DEL SISTEMA


sysAgenda ser analizada bsicamente como si Ud. guardara un Contacto que tiene en su telfono mvil; con la finalidad de hacer un modelo Entidad Relacin y trabajar con ms de una tabla es que incrementamos los detalles de Profesin y Pas.

Base de Datos SQL Server 2005 XE


Ejecutamos el MS SQL Server Management Studio:

La primera vez que iniciamos nos mostrar lo siguiente:

FALTA IMAGEN
Click en el botn Conectar: Click en el botn Conectar: Asignaremos un Password al usuario sa Con el fin de conectarnos a travs de ste usuario. - Click Botn derecho >> Propiedades - Asignar la Contrasea. - Al lado izquierdo click en Estado y Habilitar inicio de sesin. - Click en Aceptar.

Luego de Aceptar Desconectamos Nuestro SQL Server.

Iniciaremos nuevamente SQL Server 2005 con el usuario sa y Password. - Si nos muestra un error cuando intentamos Ingresar.

Debemos ingresar nuevamente con Autentificacin Windows y hacer lo siguiente: Click derecho sobre el Server >> Propiedades :

Click en Seguridad >> Seleccionar Modo de autentificacion de Windows y SQL Server Reiniciamos

Reiniciamos el Servicio de SQL Server ( Click >> Inicio>> Programas >> MS SQL Server >> Configuration tools
>> SQL Server Configuration Manager )

Ahora si nuevamente nos loguearemos con el usuario sa y el password (inicio este es mi PASS)

Ahora crearemos la Base de Datos: Click Derecho: Nueva Base de Datos Nombre: sysAgenda

Luego Cick en Aceptar

Tablas:

Tb_profesion

Ingresar los campos , seleccionar CodigoProfesion

Click en la LLAVE Primary Key, propiedades (identidad) : SI Guardar nombre : tb_profesion

Tb_pais

Tb_contacto

Tb_Usuario

Relacionando las Tablas:

Click en >> Diagramas de Base de datos

Luego de dar un Click a YES; crearemos el Modelo de la Base de Datos.

Agregar todas las Tablas:

Diagrama de la Base de Datos

De un determinado Pais tenemos Muchos Contactos (Relacin de 1 a muchos) De una determinada Profesion tenemos Muchos Contactos (Relacin de 1 a muchos)

Procedimientos Almacenados

(Porciones de Cdigo Reutilizable en el Servidor se programan a travs del lenguaje Transact SQL)

Borrar el cdigo generado por la plantilla, enfocaremos Nuestro Procedimiento Almacenado a cuestiones muy bsicas con fines didcticos. sp_tbPaisListar (Procedimiento que la usaremos para rellenar un lista de Pases) >> En SQL Server Ejecutar con F5 (ejecuta la consulta)
create procedure sp_tbPaisListar as begin set nocount on; select * from tb_pais order by NombrePais

end go

Nota: Haremos un ingreso manual de valores para la tabla tb_pais (Mexico, Ecuador, Chile, Peru) sp_tbProfesionListar (Procedimiento que la usaremos para rellenar un lista de Profesiones) create procedure sp_tbProfesionListar as begin set nocount on; select * from tb_profesion order by NombreProfesion end go Nota: Haremos un ingreso manual de valores para la tabla tb_profesion (Medicina, Ingeniera, Administracin, Economa) sp_tbUsuarioListar (Procedimiento que la usaremos para rellenar un lista de Usuarios) create procedure sp_tbUsuarioLista as begin set nocount on; select nick from tb_usuario order by nick end go Nota: Haremos un ingreso manual de valores para la tabla tb_usuario. Nick Password Nombres

Nick Admin Invitado

Password Password Guest

Nombres Administrador del sistema Invitado a usar el sistema

Los Procedimientos Almacenados para el Mantenimiento de la tabla tb_contacto a continuacin. sp_tbContactoInsertar (Procedimiento para insertar un nuevo Contacto) create procedure [dbo].[sp_tbContactoInsertar] @nombreContacto varchar(45), @direccionContacto varchar(45), @telefonoContacto varchar(12), @celularContacto varchar(12), @emailContacto varchar(20), @fechaRegistro smallDateTime, @fotoContacto varbinary(MAX), @codigoProfesion int, @codigoPais int, @nick varchar(15), @codigo int output as set @codigo=(select top 1 CodigoContacto from tb_contacto order by CodigoContacto desc)+1 begin set nocount on; insert into tb_contacto(NombreContacto,DireccionContacto,TelefonoContacto,CelularCont acto,Email Contacto,FechaRegistro,FotoContacto,CodigoProfesion,CodigoPais,nick) values(@nombreContacto,@direccionContacto,@telefonoContacto,@celularConta cto,@email Contacto,@fechaRegistro,@fotoContacto,@codigoProfesion,@codigoPais,@nick) end sp_tbContactoModificar (Procedimiento para modificar un Contacto) CREATE procedure [dbo].[sp_tbContactoModificar] @codigoContacto int, @nombreContacto varchar(45), @direccionContacto varchar(45), @telefonoContacto varchar(12), @celularContacto varchar(12), @emailContacto varchar(20), @fechaRegistro smallDateTime, @fotoContacto varbinary(MAX), @codigoProfesion int, @codigoPais int, @nick varchar(15) as begin set nocount on; update tb_contacto set NombreContacto=@nombreContacto,DireccionContacto=@direccionContacto,Telef onoContact o=@telefonoContacto,CelularContacto=@celularContacto,EmailContacto=@email Contacto,F echaRegistro=@fechaRegistro,FotoContacto=@fotoContacto,CodigoProfesion=@c odigoProfe sion,CodigoPais=@codigoPais,nick=@nick where(CodigoContacto=@codigoContacto) end sp_tbContactoEliminar (Procedimiento para Elimina un Contacto) CREATE procedure [dbo].[sp_tbContactoEliminar] @codigoContacto int

as begin set nocount on; delete from tb_contacto where(CodigoContacto=@CodigoContacto) end sp_tbContactoListar (Procedimiento para Listar Contactos) create procedure sp_tbContactoListar as begin set nocount on; select tb_contacto.CodigoContacto, tb_contacto.NombreContacto,tb_contacto.DireccionContacto, tb_contacto.TelefonoContacto,tb_contacto.CelularContacto, tb_contacto.EmailContacto, tb_contacto.FechaRegistro,tb_contacto.FotoContacto, tb_pais.NombrePais,tb_profesion.NombreProfesion,tb_contacto.nick from tb_contacto,tb_pais,tb_profesion where(tb_contacto.CodigoProfesion=tb_profesion.CodigoProfesion and tb_contacto.CodigoPais=tb_pais.CodigoPais) end sp_tbContactoListarPorPais (Procedimiento para Listar Contactos por Paises) create procedure sp_tbContactoListarPorPais @CodigoPais int as begin set nocount on; select tb_contacto.CodigoContacto, tb_contacto.NombreContacto,tb_contacto.DireccionContacto, tb_contacto.TelefonoContacto,tb_contacto.CelularContacto, tb_contacto.EmailContacto, tb_contacto.FechaRegistro,tb_contacto.FotoContacto, tb_pais.NombrePais,tb_profesion.NombreProfesion,tb_contacto.nick from tb_contacto,tb_pais,tb_profesion where(tb_contacto.CodigoProfesion=tb_profesion.CodigoProfesion and tb_contacto.CodigoPais=tb_pais.CodigoPais and tb_contacto.CodigoPais=@CodigoPais) order by tb_pais.NombrePais end sp_tbContactoListarPorProfesion (Procedimiento para Listar Contactos por Profesion) create procedure sp_tbContactoListarPorProfesion @CodigoProfesion int as begin set nocount on; select tb_contacto.CodigoContacto, tb_contacto.NombreContacto,tb_contacto.DireccionContacto, tb_contacto.TelefonoContacto,tb_contacto.CelularContacto, tb_contacto.EmailContacto, tb_contacto.FechaRegistro,tb_contacto.FotoContacto, tb_pais.NombrePais,tb_profesion.NombreProfesion,tb_contacto.nick from tb_contacto,tb_pais,tb_profesion where(tb_contacto.CodigoProfesion=tb_profesion.CodigoProfesion and tb_contacto.CodigoPais=tb_pais.CodigoPais and tb_contacto.CodigoProfesion=@CodigoProfesion) order by tb_profesion.NombreProfesion,tb_contacto.NombreContacto

Desarrollando la aplicacin en Visual Studio 2010

Iniciamos >> Visual Studio 2010

Click Archivo >> Nuevo proyecto Asignarle nombre >> ok. (Crear una carpeta en C:\) sysAgenda

Click >> Save All >> Guardar el Proyecto

Guardar el Proyecto >> c:\sysAgenda

Ahora Iniciaremos la Conexin Visual Studio 2010 y SQL Server 2005 XE Click >> Menu Datos >> Mostrar origenes de Datos Click >> Agregar Nuevo Origen de Datos

Click >> Siguiente

Click >> Siguiente

Click >> Siguiente

Click >> Botn Nueva Conexin

Seleccionamos SQL Server

El nombre del servidor lo obtenemos desde nuestro SQL Server. (TRINIDAD-PC\SQLSERVER 9.0.1399)

FALTA IMAGEN PAG 14

Form1 Name Text Start Position ControlBox FormBorderStyle GrouBox1 Text Label1 Text Label2 Text ComboBox1 Name DropDownStyle TextBox1 Name PasswordChar Button1 Name Text Button2 Name Text

frmInicio Acceso CenterScreen False FixedSingle

Usuario: Password CboUsuario DropDownList txtPassword * btnIngresar &Ingresar btnCancelar &Cancelar