Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Gua 6B 1
Facultad: Ingeniera
Escuela: Computacin
Asignatura: Sistemas Expertos e
Inteligencia Artificial
Objetivo
Especfico
Crear una interfaz grafica con Visual C#.NET de manera bsica
Utilizar las sentencias de DML de base de datos en Visual C#.NET
Materiales
Equipo
Computadora con SQL Server 2008.
Gua Nmero 6
Bases de ejemplo.
Introduccin
Terica
Introduccin
Hay seis espacios bsicos de ADO.NET, pero solo veremos los concernientes a
SQL Server y se recogen en la siguiente tabla. Adems de estos espacios de
nombres, cada nuevo proveedor de datos tiene su propio espacio de nombre.
Como ejemplo, el proveedor de datos Oracle .NET aade un espacio de nombre
de Microsoft.Data.OracleClient.
Conexin
A simple vista, las conexiones pueden parecer uno de los objetos ms sencillos de
utilizar en ADO.NET. Sin embargo, tomar las decisiones correctas al momento de
su uso puede ser la diferencia entre una aplicacin de altas prestaciones y otra de
bajas. Existe una serie de premisas fundamentales que servirn para favorecer un
rendimiento ptimo, las cuales se vern a lo largo de la gua de laboratorio.
En primer lugar, el objeto Connection es un .NET Data Provider, y nos permite
establecer la comunicacin fsica entre nuestra aplicacin y la base de datos. El
.NET Framework posee la interfaz IDBConnection, la cual es implementada por las
clases sqlConnection, oledbConnection y OracleConnection en sus versiones 1.x
(1.0 y 1.1), y en el caso de su versin 2.0, es implementada por la clase
DBConnection, que sirve como la base de los .NET Data Providers.
Cadena de conexin
Comandos
Ya hemos visto que las conexiones nos brindan el vnculo entre las bases de
datos y las aplicaciones, pero para poder establecer y ejecutar instrucciones
necesitamos de los comandos, los cuales llamaremos indistintamente como
xxxCommand. Una de las propiedades fundamentales de los comandos es
CommandText que, como veremos ms adelante, puede tener sentencias SQL o
nombres de objetos de las bases de datos. Otra propiedad fundamental es
Connection, a la cual le asignaremos una instancia de tipo xxxConnection. Las
clases xxxCommand tienen constructores sobrecargados que nos permiten
6 Sistemas Expertos e Inteligencia Artificial, Gua 6B
declarar, instancias e inicializar nuestros objetos en una sola lnea de forma
alternativa.
Primero vamos a examinar algunas propiedades tiles de la clase sqlCommand
que incluye la siguiente tabla:
Sistemas Expertos e Inteligencia Artificial. Gua 6B 7
Ahora vamos a examinar los diversos mtodos Execute que se pueden llamar en
un objeto Command.
El proveedor OLE DB de Microsoft SQL Native Client proporciona una interfaz OLE DB a
las bases de datos de Microsoft SQL Server 2008. Este proveedor permite que las
consultas distribuidas de SQL Server puedan consultar datos de instancias remotas de
SQL Server.
8 Sistemas Expertos e Inteligencia Artificial, Gua 6B
Sintaxis:
Provider=SQLOLEDB.1;Server=myServerName\theInstanceName; Database=myDataBase;
Uid=myUsername;Pwd=myPassword;
Dataset
DataAdapter (Clase)
OleDbCommand (Clase)
DataGridView
DataGridView.DataSource (Propiedad)
Obtiene o establece el origen de datos cuyos datos se estn mostrando en el control
DataGridView.
Sintaxis:
DataGridView1.DataMember = "MiTabla"
Sistemas Expertos e Inteligencia Artificial. Gua 6B 9
Procedimiento
Propiedades
Elemento
Name Visible
textBox1 textcod1 true
textBox2 textnom1 False
textBox3 textapel1 False
10 Sistemas Expertos e Inteligencia Artificial, Gua 6B
textBox4 textedad1 False
Button1 buscar1 true
Button2 modificar1 false
Propiedades
Elemento
Name Visible
textBox1 textcod2 true
textBox2 textnom2 true
textBox3 textapel2 true
textBox4 textedad2 true
Button1 insertar2 true
Button2 buscar2 true
5. Haremos dos tipos de conexin una haciendo uso de OLEDB y otra por
medio de SqlClient.
6. Ubcate en el Explorador de soluciones y dando clic derecho sobre el
proyecto Practica 6, selecciona la opcin agregar y luego selecciona nuevo
elemento.
7. En cuadro de dialogo nuevo elemento selecciona Clase y colcale el
nombre de conexion.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
namespace Practica62
{
class conexion
{
public string servidor, usuario, clave, db;//Para metros para la cadena
conexion
public string cadena;
}
}
Sistemas Expertos e Inteligencia Artificial. Gua 6B 11
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
namespace Practica6
{
public partial class Form2 : Form
{
private SqlConnection conn;
private SqlCommand insert1;
private string sCn;
insert1.ExecuteNonQuery();
//Limpiamos los textBox
textcod2.Text = "";
textnom2.Text = "";
textapel2.Text = "";
textedad2.Text = "";
MessageBox.Show("Registro agregado");
conn.Close();
}
catch {
MessageBox.Show("Error");
}
11. Damos doble clic sobre el botn Buscar del Form2 y digitamos lo siguiente:
12. Ahora modificaremos el Form1, dar clic derecho sobre este y seleccionar la opcin
ver cdigo y digita las siguientes lneas antes de la namespace Practica6
using System.Data.OleDb;
using System.Data.SqlClient;
while(dr1.Read()){
textnom1.Text = dr1["Nombres"].ToString().Trim();
textapel1.Text = dr1["Apellidos"].ToString().Trim();
textedad1.Text = dr1["Edad"].ToString().Trim();
}
if (dr1 != null)
{
MessageBox.Show("Datos Encontrados");
dr1.Close();
}
string actualizar;
actualizar = "update Participantes set ";
actualizar += " Nombres= '" + textnom1.Text + "', Apellidos= '" +
textapel1.Text;
actualizar += "', Edad=" + textedad1.Text + " where Codigo= '" +
textcod1.Text+"'";
OleDbCommand datos = new OleDbCommand(actualizar, cnn);
cnn.Open();
//mandando sql a base de datos
datos.ExecuteNonQuery();
cnn.Close();
MessageBox.Show("REGISTRO ACTUALIZADO");
Reset();
textedad1.Visible = false;
textnom1.Visible = false;
textapel1.Visible = false;
modificar1.Visible = false;
Form2 formu2 = new Form2();
formu2.Show();//Mostramos el Form2
this.Hide();// ocultamos el Form1
}
14 Sistemas Expertos e Inteligencia Artificial, Gua 6B
18. Por ltimo abre el archive Program.cs del proyecto y modifica la siguiente lnea
para que cargue automticamente el Form2.
Application.Run(new Form2());
Investigacin
Complementaria
La tarea de esta prctica ser asignada por el instructor.
Gua 3
Bibliografa
fa
Gua 4
fa
Sistemas Expertos e Inteligencia Artificial. Gua 6B 15
Hoja de cotejo: 6
Docente: 1
Gua 6: Conexin a Base de Mquina No:
dato
GL:
Alumno:
Tema: Presentacin del programa Mquina No:
a
Alumno: Mquina No:
Docente: GL: Fecha:
Docente: GL:
EVALUACION
ACTITUD
Del 15% No tiene Actitud Tiene actitud
al 30% actitud propositiva y proactiva y sus
proactiva con propuestas son
. propuestas no concretas.
aplicables al
contenido de
la gua.
TOTAL 100%