Download - Guia-1 de Diseño e Impem de Aplicac
-
7/23/2019 Guia-1 de Diseo e Impem de Aplicac
1/11
Curso : Diseo e Implem de Aplicaciones Desktop Pg. 1
Guia de Diseo e Implem. De Aplicaciones Desktop
Fecha: 17-12-2014
Profesor: Arturo Florin
Ciclo:_III__ Turno:__Maana___
Tema : Revisin de mandatos T-SQL y Conexin a una BD SQL Server
Revisin 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 travs para manipular bases de datos remotas cliente - servidor.
1.1. Componentes del SQL
El lenguaje SQL est compuesto por comandos, clusulas, operadores y
funciones de agregado. Estos elementos se combinan en las instrucciones para
crear, actualizar y manipular las bases de datos.
1.2ComandosExisten dos tipos de comandos SQL:
los DDL 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 DDL
Comando Descripcin
CREATE Utilizado para crear nuevas tablas, campos e ndices
DROP Empleado para eliminar tablas e ndices
ALTERUtilizado para modificar las tablas agregando campos o cambiando la definicin
de los campos.
Comandos DML
Comando Descripcin
SELECTUtilizado 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 operacin.
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
-
7/23/2019 Guia-1 de Diseo e Impem de Aplicac
2/11
Curso : Diseo e Implem de Aplicaciones Desktop Pg. 2
1.3Clusulas
Las clusulas son condiciones de modificacin utilizadas para definir los datos que
desea seleccionar o manipular.
Clusula Descripcin
FROM Utilizada para especificar la tabla de la cual se van a seleccionar los registros
WHEREUtilizada para especificar las condiciones que deben reunir los registros que sevan a seleccionar
GROUP
BYUtilizada para separar los registros seleccionados en grupos especficos
HAVING Utilizada para expresar la condicin que debe satisfacer cada grupo
ORDER
BY
Utilizada para ordenar los registros seleccionados de acuerdo con un orden
especfico
1.4Operadores Lgicos
Operador Uso
ANDEs el "y" lgico. Evalua dos condiciones y devuelve un valor de verdad slo si
ambas son ciertas.
OREs el "o" lgico. Evala dos condiciones y devuelve un valor de verdar si algunade las dos es cierta.
NOT Negacin lgica. Devuelve el valor contrario de la expresin.
Operadores de Comparacin
Operador Uso
< Menor que
> Mayor que
Distinto de
= Mayor Igual que
= Igual que
BETWEEN Utilizado para especificar un intervalo de valores.
LIKE Utilizado en la comparacin de un modelo
InUtilizado para especificar registros de una base de datos
-
7/23/2019 Guia-1 de Diseo e Impem de Aplicac
3/11
Curso : Diseo e Implem de Aplicaciones Desktop Pg. 3
Aplicacin
Ejecutar el Sql Management Studio de Microsoft SQL Server 2012. Crear la BD
denominada sistemacontque contiene las siguientes tablas:
Ingresarle 5 registros a la tabla personal , productos y ventas
utilizando el mandato INSERT INTO
-
7/23/2019 Guia-1 de Diseo e Impem de Aplicac
4/11
Curso : Diseo e Implem de Aplicaciones Desktop Pg. 4
Conexiones Ado.NetConceptos Generales:En muchas ocasiones nos hemos preguntado cmo 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 conexin lista para que inmediatamente tengamos
una conexin directa con la base de datos (SQL) y realizar las transacciones
necesarios en un proyecto basado en Visual Net.
-
7/23/2019 Guia-1 de Diseo e Impem de Aplicac
5/11
Curso : Diseo e Implem de Aplicaciones Desktop Pg. 5
-
7/23/2019 Guia-1 de Diseo e Impem de Aplicac
6/11
Curso : Diseo e Implem de Aplicaciones Desktop Pg. 6
Despus 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.
Conexin a Nivel de Formulario:es decir solo el formulario donde se defina la
cadena de conexin podr usarlo, si otro formulario desea usar una conexin, estedeber 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 objetosButtons: BTNConectary BTNDEsconectar,
cada uno de ellos posee un cdigo de
conexin y desconexin, para garantizar el
xito del ejemplo siga los pasos al pie de la
letra y saque sus propias conclusiones.
-
7/23/2019 Guia-1 de Diseo e Impem de Aplicac
7/11
Curso : Diseo e Implem de Aplicaciones Desktop Pg. 7
PROGRAMANDO EL FORMULARIO.
Formulario Clase Form1PublicClassForm1
DimCN AsNewSqlClient.SqlConnection("Server=(local);"+ _"DataBase=Sistemacont;Uid=sa;Password=123")
Private Sub BtnConectar_ClickCN.Open()IfCN.State = ConnectionState.Open Then
MsgBox("Conexion Estalecida con Exito")Else
MsgBox("Error al Conectar")EndIf
Private Sub BtnDesconectar_ClickCN.Close()IfCN.State = ConnectionState.Closed Then
MsgBox("Conexion Cerrada !!")Else
MsgBox("Error al Cerrar !!")EndIf
SEGUN LAS CARACTERISTICAS DE NUESTRA BASE DE DATOS, DEBEMOS
TOMAR EN CUENTA:
ACLARACIONES:
En el form Class definimos la cadena de conexin, con todas las
caractersticas acerca de la misma, ms no su apertura.
El botn conectar solo invitara a SQL a conectarse a su entorno, usando el
mtodo OPEN, toda conexin debe ser verificada, por esa razn se usa el
mtodo STATE que verifica el estado de la conexin, los estados pueden ser:
ConnectionState.Open o ConnectionState.Closed (Abierto o
Cerrado). Y los mensajes respectivamente.
Nombre del Servidor: En este caso (local)
Nombre de Base de datos: Sistemacont
Inicio de Sesin: SA
Password: 123 (Esto es interno ***)
-
7/23/2019 Guia-1 de Diseo e Impem de Aplicac
8/11
Curso : Diseo e Implem de Aplicaciones Desktop Pg. 8
DESVENTAJAS:
Que pasara si en la ejecucin de este formulario, presiono dos o mas veces
el botn CONECTAR ?, lo lgico es que obtengamos un error, ya que no nos
podemos conectar otra vez (estaramos usando la misma cadena de
conexin 2 veces), por que existe una conexin aun vigente o abierta, esdecir, la ya se abri antes.
El botn DESCONECTAR puede ser usado muchas veces ya no solo
desconecta.
SOLUCION:
Agregar la siguiente lnea al cdigo del botn CONECTAR.CN.Open()
BtnConectar.Enabled = False
IfCN.State = ConnectionState.Open ThenMsgBox("Conexion Estalecida con Exito")
ElseMsgBox("Error al Conectar")
EndIf
Agregar la siguiente lnea al cdigo del botn DESCONECTAR.CN.Close()IfCN.State = ConnectionState.Closed Then
BtnConectar.Enabled = TrueMsgBox("Conexion Cerrada !!")
ElseMsgBox("Error al Cerrar !!")
EndIf
EJEMPLO N 2 (Conexiones a Nivel Pblico o Proyecto)
Agregue a su proyecto un nuevo formulario (form2) y que ejecute como objeto inicial,
diselo con el siguiente aspecto:
Agregue a su proyecto un mdulo (Modulo1), este estar codificado con la
declaracin de una variable pblica sobre el proyecto llamado CN2, y aparte dos
procedimientos (CONECTAR y DESCONECTAR) el primero de ellos llevar
parmetros de entrada hacia el procedimiento, observe el cdigo en la siguiente
tabla:ModuleModule1
'Declaracion de Variable Public sobre el proyecto
PublicCN2AsNewSqlClient.SqlConnection
Primer Procedimiento (Conectar 2 parmetro de entrada usuario y clave )
Este formulario solo tiene dos objetos
Buttons: BTNConectary BTNDEsconectar,
cada uno de ellos posee un cdigo de
conexin y desconexin, para garantizar el
xito del ejemplo siga los pasos al pie de la
letra y saque sus propias conclusiones.
-
7/23/2019 Guia-1 de Diseo e Impem de Aplicac
9/11
Curso : Diseo e Implem de Aplicaciones Desktop Pg. 9
PublicSubConectar(ByValUsuarioAsString, ByValClaveAsString)
IfCN2.State = ConnectionState.Closed Then
CN2.ConnectionString = "Server=(local);"+ _
"Database=sistemacont;Uid='"+ Usuario + _"';Password='"+ Clave + "';"
' Abrir ConexinCN2.Open()
IfCN2.State = ConnectionState.Open Then
MsgBox("Conexion Establecida..!!")Else
MsgBox("Error al Conectar..!!")EndIf
EndIfEndSub
Segundo Procedimiento (Desconectar) Sin Prametros.PublicSubDesConectar()
IfCN2.State = ConnectionState.Open Then
' Cerrar ConexinCN2.Close()IfCN2.State = ConnectionState.Closed Then
MsgBox("Conexion Cerrada..!!")EndIf
ElseMsgBox("No se Hizo una Conexion ..!!")
EndIfEndSub
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 claveConectar("sa", "123")
Private Sub BtnDesconectar_ClickDesConectar()
ACLARACIONES:
Aqu se estn 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
conexin 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
PublicCN2AsNewSqlClient.SqlConnection
En el modulo existen dos procedimientos CONECTAR, este usara dos
parmetros de entrada (el usuario y el password) el segundo procedimiento
llamado DESCONECTARsolo permitir desconectarse de la base de datos.
No usa parmetros.
PublicSubConectar(ByValUsuarioAsString, ByValClaveAsString)
PublicSubDesConectar()
-
7/23/2019 Guia-1 de Diseo e Impem de Aplicac
10/11
Curso : Diseo e Implem de Aplicaciones Desktop Pg. 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 Pblico o Proyecto)
Agregue a su proyecto un nuevo formulario (form3), este ejemplo es parecido alanterior, solo que aqu controlaremos los errores va excepciones.
Agregue a su proyecto un mdulo (Modulo2), este estar codificado con la
declaracin de una variable pblica sobre el proyecto llamado CN3, y aparte dos
procedimientos (CONECTAR2 y DESCONECTAR2) el primero de ellos llevar
parmetros de entrada, observe el cdigo en la siguiente tabla:ModuleModule2
'Aqui se define la variable publicaPublicCN3 AsNewSqlClient.SqlConnection
PublicSubConectar2(ByValUsuario AsString, ByValClave AsString)Try
IfCN3.State = ConnectionState.Closed ThenCN3.ConnectionString = "Server=(local);"+ _"Database=sistemacont;Uid='"+ Usuario + _"';Password='"+ Clave + "';"' abrir conexinCN3.Open()IfCN3.State = ConnectionState.Open Then
MsgBox("Conexion Establecida..!")EndIf
EndIfCatchExcep AsSqlClient.SqlException
' si se produce algun error,' lo capturamos mediante el objeto' de excepciones particular para' el proveedor de SQL ServerMessageBox.Show("Error al conectar con datos"& _ControlChars.CrLf & _Excep.Message & ControlChars.CrLf & _
Excep.Server)EndTry
EndSubPublicSubDesConectar2()
IfCN3.State = ConnectionState.Open Then' Cerrar ConexinCN3.Close()IfCN3.State = ConnectionState.Closed Then
MsgBox("Conexion Cerrada..!!")EndIf
ElseMsgBox("No se Hizo una Conexion ..!!")
EndIf
EndSub
Este formulario solo tiene dos objetos
Buttons: BTNConectary BTNDEsconectar,
cada uno de ellos posee un cdigo de
conexin y desconexin, para garantizar el
xito del ejemplo siga los pasos al pie de la
letra y saque sus propias conclusiones.
-
7/23/2019 Guia-1 de Diseo e Impem de Aplicac
11/11
Curso : Diseo e Implem de Aplicaciones Desktop Pg. 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 claveConectar2("sa", "123")
Private Sub BtnDesconectar_ClickDesConectar2()
ACLARACIONES:
Aqu se estn 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
conexin 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
PublicCN3AsNewSqlClient.SqlConnection
En el modulo existen dos procedimientos CONECTAR2, este usara dos
parmetros de entrada (el usuario y el password) el segundo procedimiento
llamado DESCONECTAR2solo permitir desconectarse de la base de datos.
No usa parmetros. PublicSubConectar2(ByValUsuarioAsString, ByValClaveAsString)
PublicSubDesConectar2() Por ultimo los botones CONECTAR y DESCONECTAR solo hacen las llamadas de los
procedimientos y enviando los parmetros, ya que son pblicos.