Guia-1 de Diseño e Impem De Aplicac.pdf
Transcript of Guia-1 de Diseño e Impem De Aplicac.pdf
Curso : Visual .Net II Pág. 1
Guia de Diseño e Implem. De Aplicaciones Desktop
Fecha: 17-12-2014
Profesor: Arturo Florián
Ciclo:_III__ Turno:__Mañana___
Tema. Diseño de una Aplicación de 3 capas en VB Net
Revisión de T-SQL SQL SERVER
El lenguaje de consulta estructurado (SQL) es un lenguaje de base de datos
normalizado, utilizado por el motor de base de datos de Microsoft Jet. SQL Permite
crear y manipular directamente las bases de datos Jet y crear consultas SQL de paso
a través para manipular bases de datos remotas cliente - servidor.
1.1. Componentes del SQL
El lenguaje SQL está compuesto por comandos, cláusulas, operadores y
funciones de agregado. Estos elementos se combinan en las instrucciones para
crear, actualizar y manipular las bases de datos.
1.2 Comandos
Existen dos tipos de comandos SQL:
los DLL que permiten crear y definir nuevas bases de datos, campos e índices.
los DML que permiten generar consultas para ordenar, filtrar y extraer
datos de la base de datos.
Comandos DLL
Comando Descripción
CREATE Utilizado para crear nuevas tablas, campos e índices
DROP Empleado para eliminar tablas e índices
ALTER Utilizado para modificar las tablas agregando campos o cambiando la definición
de los campos.
Comandos DML
Comando Descripción
SELECT Utilizado para consultar registros de la base de datos que satisfagan un criterio
determinado
INSERT Utilizado para cargar lotes de datos en la base de datos en una única operación.
UPDATE Utilizado para modificar los valores de los campos y registros especificados
DELETE Utilizado para eliminar registros de una tabla de una base de datos
Curso : Visual .Net II Pág. 2
1.3 Cláusulas
Las cláusulas son condiciones de modificación utilizadas para definir los datos que
desea seleccionar o manipular.
Cláusula Descripción
FROM Utilizada para especificar la tabla de la cual se van a seleccionar los registros
WHERE Utilizada para especificar las condiciones que deben reunir los registros que se
van a seleccionar
GROUP
BY
Utilizada para separar los registros seleccionados en grupos específicos
HAVING Utilizada para expresar la condición que debe satisfacer cada grupo
ORDER
BY
Utilizada para ordenar los registros seleccionados de acuerdo con un orden
específico
1.4 Operadores Lógicos
Operador Uso
AND Es el "y" lógico. Evalua dos condiciones y devuelve un valor de verdad sólo si
ambas son ciertas.
OR Es el "o" lógico. Evalúa dos condiciones y devuelve un valor de verdar si alguna
de las dos es cierta.
NOT Negación lógica. Devuelve el valor contrario de la expresión.
Operadores de Comparación
Operador Uso
< Menor que
> Mayor que
<> Distinto de
<= Menor ó Igual que
>= Mayor ó Igual que
= Igual que
BETWEEN Utilizado para especificar un intervalo de valores.
LIKE Utilizado en la comparación de un modelo
In Utilizado para especificar registros de una base de datos
Curso : Visual .Net II Pág. 3
Aplicación
Ejecutar el Sql Management Studio de Microsoft SQL Server 2008. Crear la BD
denominada sistemacont que contiene las siguientes tablas:
Ingresarle 5 registros a la tabla personal , productos y ventas
utilizando el mandato INSERT INTO
Curso : Visual .Net II Pág. 4
Conexiones Ado.Net Conceptos Generales: En muchas ocasiones nos hemos preguntado cómo es posible
las conexiones y cuantas veces puedo hacer una, la respuesta es sencilla, las
codificaciones de Visual .Net con respecto a este tema con muy cortas, es decir solo
es suficiente tener la cadena de conexión lista para que inmediatamente tengamos
una conexión directa con la base de datos (SQL) y realizar las transacciones
necesarios en un proyecto basado en Visual Net.
Curso : Visual .Net II Pág. 6
Después de observar los conceptos general acerca del .Net Procederemos a realizar
nuestras conexiones, es decir aprenderemos de diversas formas y optaremos por la
mejor, con la cual las usaremos en nuestros proyectos.
Conexión a Nivel de Formulario: es decir solo el formulario donde se defina la
cadena de conexión podrá usarlo, si otro formulario desea usar una conexión, este
deberá definir su propia cadena y así sucesivamente.
EJEMPLO Nº 1
Este ejemplo es simple, pero cumple las expectativas de conectarse y desconectarse
de una base de datos.
Este formulario solo tiene dos objetos
Buttons: BTNConectar y BTNDEsconectar,
cada uno de ellos posee un código de
conexión y desconexión, para garantizar el
éxito del ejemplo siga los pasos al pie de la
letra y saque sus propias conclusiones.
Curso : Visual .Net II Pág. 7
PROGRAMANDO EL FORMULARIO.
Formulario Clase Form1 Public Class Form1
Dim CN As New SqlClient.SqlConnection("Server=Apolo;" + _
"DataBase=SysAdoNet;Uid=sa;Password=123")
Private Sub BtnConectar_Click CN.Open()
If CN.State = ConnectionState.Open Then
MsgBox("Conexion Estalecida con Exito")
Else
MsgBox("Error al Conectar")
End If
Private Sub BtnDesconectar_Click CN.Close()
If CN.State = ConnectionState.Closed Then
MsgBox("Conexion Cerrada !!")
Else
MsgBox("Error al Cerrar !!")
End If
SEGUN LAS CARACTERISTICAS DE NUESTRA BASE DE DATOS, DEBEMOS
TOMAR EN CUENTA:
ACLARACIONES:
En el form Class definimos la cadena de conexión, con todas las
características acerca de la misma, más no su apertura.
El botón conectar solo invitara a SQL a conectarse a su entorno, usando el
método OPEN, toda conexión debe ser verificada, por esa razón se usa el
método STATE que verifica el estado de la conexión, los estados pueden ser:
“ConnectionState.Open” o “ConnectionState.Closed” (Abierto o
Cerrado). Y los mensajes respectivamente.
Nombre del Servidor: En este caso “APOLO”
Nombre de Base de datos: SysAdoNet
Inicio de Sesión: SA
Password: 123 (Esto es interno ***)
Curso : Visual .Net II Pág. 8
DESVENTAJAS:
Que pasaría si en la ejecución de este formulario, presiono dos o mas veces
el botón CONECTAR ?, lo lógico es que obtengamos un error, ya que no nos
podemos conectar otra vez (estaríamos usando la misma cadena de
conexión 2 veces), por que existe una conexión aun vigente o abierta, es
decir, la ya se abrió antes.
El botón DESCONECTAR puede ser usado muchas veces ya no solo
desconecta.
SOLUCION:
Agregar la siguiente línea al código del botón CONECTAR. CN.Open()
BtnConectar.Enabled = False If CN.State = ConnectionState.Open Then
MsgBox("Conexion Estalecida con Exito")
Else
MsgBox("Error al Conectar")
End If
Agregar la siguiente línea al código del botón DESCONECTAR. CN.Close()
If CN.State = ConnectionState.Closed Then
BtnConectar.Enabled = True MsgBox("Conexion Cerrada !!")
Else
MsgBox("Error al Cerrar !!")
End If
EJEMPLO Nº 2 (Conexiones a Nivel Público o Proyecto)
Agregue a su proyecto un nuevo formulario (form2) y que ejecute como objeto inicial,
diséñelo con el siguiente aspecto:
Agregue a su proyecto un módulo (Modulo1), este estará codificado con la
declaración de una variable pública sobre el proyecto llamado CN2, y aparte dos
procedimientos (CONECTAR y DESCONECTAR) el primero de ellos llevará
parámetros de entrada hacia el procedimiento, observe el código en la siguiente
tabla: Module Module1
'Declaracion de Variable Public sobre el proyecto
Public CN2 As New SqlClient.SqlConnection
Primer Procedimiento (Conectar 2 parámetro de entrada usuario y clave )
Este formulario solo tiene dos objetos
Buttons: BTNConectar y BTNDEsconectar,
cada uno de ellos posee un código de
conexión y desconexión, para garantizar el
éxito del ejemplo siga los pasos al pie de la
letra y saque sus propias conclusiones.
Curso : Visual .Net II Pág. 9
Public Sub Conectar(ByVal Usuario As String, ByVal Clave As String)
If CN2.State = ConnectionState.Closed Then
CN2.ConnectionString = "Server=APOLO;" + _
"Database=SysAdoNet;Uid='" + Usuario + _
"';Password='" + Clave + "';"
' Abrir Conexión
CN2.Open()
If CN2.State = ConnectionState.Open Then
MsgBox("Conexion Establecida..!!")
Else
MsgBox("Error al Conectar..!!")
End If
End If
End Sub
Segundo Procedimiento (Desconectar) Sin Párametros. Public Sub DesConectar()
If CN2.State = ConnectionState.Open Then
' Cerrar Conexión
CN2.Close()
If CN2.State = ConnectionState.Closed Then
MsgBox("Conexion Cerrada..!!")
End If
Else
MsgBox("No se Hizo una Conexion ..!!")
End If
End Sub
AHORA VOLVAMOS AL FORMULARIO Y PROGRAMAREMOS LOS BOTONES
CONECTAR Y DESCONECTAR.
Private Sub BtnConectar_Click 'Aquí solo se le envia los parametros de usuario y clave
Conectar("sa", "123")
Private Sub BtnDesconectar_Click DesConectar()
ACLARACIONES:
Aquí se están agregando dos nuevos objetos al proyecto: un nuevo formulario
(Form2) y un modulo (Modulo1), como observaremos empezamos a programar
el modulo, aquí definimos una variable publica CN2, es decir la variable de
conexión podrá ser usada en todo el proyecto, por cuantos formularios tenga
el proyecto, esta podrá ser utilizada sin prejuicios. 'Declaracion de Variable Public sobre el proyecto
Public CN2 As New SqlClient.SqlConnection
En el modulo existen dos procedimientos CONECTAR, este usara dos
parámetros de entrada (el usuario y el password) el segundo procedimiento
llamado DESCONECTAR solo permitirá desconectarse de la base de datos.
No usa parámetros. Public Sub Conectar(ByVal Usuario As String, ByVal Clave As String)
Public Sub DesConectar()
Curso : Visual .Net II Pág. 10
Por ultimo los botones CONECTAR y DESCONECTAR solo hacen las llamadas de los
procedimientos y enviando los parametros, ya que son publicos.
EJEMPLO Nº 3 (Conexiones a Nivel Público o Proyecto)
Agregue a su proyecto un nuevo formulario (form3), este ejemplo es parecido al
anterior, solo que aquí controlaremos los errores vía excepciones.
Agregue a su proyecto un módulo (Modulo2), este estará codificado con la
declaración de una variable pública sobre el proyecto llamado CN3, y aparte dos
procedimientos (CONECTAR2 y DESCONECTAR2) el primero de ellos llevará
parámetros de entrada, observe el código en la siguiente tabla: Module Module2
'Aqui se define la variable publica
Public CN3 As New SqlClient.SqlConnection Public Sub Conectar2(ByVal Usuario As String, ByVal Clave As String)
Try
If CN3.State = ConnectionState.Closed Then
CN3.ConnectionString = "Server=APOLO;" + _
"Database=SysAdoNet;Uid='" + Usuario + _
"';Password='" + Clave + "';"
' abrir conexión
CN3.Open()
If CN3.State = ConnectionState.Open Then
MsgBox("Conexion Establecida..!")
End If
End If
Catch Excep As SqlClient.SqlException
' si se produce algun error,
' lo capturamos mediante el objeto
' de excepciones particular para
' el proveedor de SQL Server
MessageBox.Show("Error al conectar con datos" & _
ControlChars.CrLf & _
Excep.Message & ControlChars.CrLf & _
Excep.Server)
End Try
End Sub Public Sub DesConectar2()
If CN3.State = ConnectionState.Open Then
' Cerrar Conexión
CN3.Close()
If CN3.State = ConnectionState.Closed Then
MsgBox("Conexion Cerrada..!!")
End If
Else
MsgBox("No se Hizo una Conexion ..!!")
End If
End Sub
Este formulario solo tiene dos objetos
Buttons: BTNConectar y BTNDEsconectar,
cada uno de ellos posee un código de
conexión y desconexión, para garantizar el
éxito del ejemplo siga los pasos al pie de la
letra y saque sus propias conclusiones.
Curso : Visual .Net II Pág. 11
AHORA VOLVAMOS AL FORMULARIO Y PROGRAMAREMOS LOS BOTONES
CONECTAR Y DESCONECTAR.
Private Sub BtnConectar_Click 'Aquí solo se le envia los parametros de usuario y clave
Conectar2("sa", "123")
Private Sub BtnDesconectar_Click DesConectar2()
ACLARACIONES:
Aquí se están agregando dos nuevos objetos al proyecto: un nuevo formulario
(form3) y un modulo (Modulo2), como observaremos empezamos a programar
el modulo, aquí definimos una variable publica CN3, es decir la variable de
conexión podrá ser usada en todo el proyecto, por cuantos formularios tenga
el proyecto, esta podrá ser utilizada sin prejuicios. 'Declaracion de Variable Public sobre el proyecto
Public CN3 As New SqlClient.SqlConnection
En el modulo existen dos procedimientos CONECTAR2, este usara dos
parámetros de entrada (el usuario y el password) el segundo procedimiento
llamado DESCONECTAR2 solo permitirá desconectarse de la base de datos.
No usa parámetros. Public Sub Conectar2(ByVal Usuario As String, ByVal Clave As String)
Public Sub DesConectar2() Por ultimo los botones CONECTAR y DESCONECTAR solo hacen las llamadas de los
procedimientos y enviando los parámetros, ya que son públicos.