Código de la base de datos
create database Prueba
go
use Prueba
go
create table Menores
(
ID_Menores int primary key identity(1,1),
Nombre_M varchar(30) not null,
Apellp_M varchar(20) not null,
Apellm_M varchar(20) not null,
Sexo_M char(1) not null,
Fecha_Reg_M date not null
)
insert into Menores(Nombre_M,Apellp_M,Apellm_M,Sexo_M,Fecha_Reg_M)values('pepito','pica','papas','M','02-12-13')
insert into Menores(Nombre_M,Apellp_M,Apellm_M,Sexo_M,Fecha_Reg_M)values('Miguel','Hidalgo',' y Costilla','M','02-12-13')
insert into Menores(Nombre_M,Apellp_M,Apellm_M,Sexo_M,Fecha_Reg_M)values('Benito','Juárez','García','M','02-12-13')
insert into Menores(Nombre_M,Apellp_M,Apellm_M,Sexo_M,Fecha_Reg_M)values('Josefa','Ortiz',' de Domínguez','F','02-12-13')
insert into Menores(Nombre_M,Apellp_M,Apellm_M,Sexo_M,Fecha_Reg_M)values('María','la del','Barrio','F','02-12-13')
Diseño de la aplicación
Código
de la aplicación
Se puede reducir el código pero para la explicación se
muestra de la siguiente manera:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;/*libreríapara manejo de SQL*/
namespace textenlabel
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
/*variables globales*/
string cadenaconexion = @"Data Source=HUGUITO;Initial Catalog=Prueba;Integrated
Security=True";
/*método para la consulta individual,
recibe como parámetro el id que ingresa el usuario
en el
TextBox txt_id, esto para traer un registro en específico*/
public void consulta_individual(int id)
{
/*objeto de conexión*/
SqlConnection con = new SqlConnection();
/* asignamos la cadena de conexión*/
con.ConnectionString = cadenaconexion;
/*objeto para el comando*/
SqlCommand cmd = new SqlCommand();
/*asignamos el comando de texto
(consulta, puede ser select, insert, update o delete), en este caso un select
que
trae los campos de un sólo registro de la tabla Menores, así ejemplificamos la
consulta individual*/
cmd.CommandText = "select
Nombre_M,Apellp_M,Apellm_M from Menores where ID_Menores="+id+"";
/*especificamos el tipo de comando,
en este caso de texto, puede ser del tipo procedimiento almacenado*/
cmd.CommandType = CommandType.Text;
/*asignamos al comando el objeto de
conexión*/
cmd.Connection = con;
/*declaramos un obeto datareader,
para leer sobre la base de datos*/
SqlDataReader rdr;
/*abrimos la conexión con la base de
datos*/
con.Open();
/*asignamos al datareader el comando
y executamos la lectura*/
rdr =
cmd.ExecuteReader();
/*con un if y else condicionamos la
lectura*/
if (rdr.Read())
{
/*si lee mostramos el resultado de la
consulta en el label lb_consulta_individual*/
lb_consulta_individual.Text = rdr.GetString(rdr.GetOrdinal("Nombre_M")) + " " + rdr.GetString(rdr.GetOrdinal("Apellp_M")) + " " + rdr.GetString(rdr.GetOrdinal("Apellm_M"));
}
/*sino lee mostramos un mensaje*/
else lb_consulta_individual.Text = "No se encontró la persona";
/*cerramos la conexión*/
con.Close();
}
/*método para la consulta múltiple,
para hacerlo fácil de comprender dejamos los mismos nombres los objetos de
conexión */
public void consulta_multiple()
{
/*objeto de conexión*/
SqlConnection con = new SqlConnection();
/* asignamos la cadena de conexión*/
con.ConnectionString = cadenaconexion;
/*objeto para el comando*/
SqlCommand cmd = new SqlCommand();
/*asignamos el comando de texto
(consulta, puede ser select, insert, update o delete),
en
este caso un select que trae todos los campos de la tabla Menores*/
cmd.CommandText = "select
Nombre_M,Apellp_M,Apellm_M from Menores";
/*especificamos el tipo de comando,
en este caso de texto, puede ser del tipo procedimiento almacenado*/
cmd.CommandType = CommandType.Text;
/*asignamos al comando el objeto de
conexión*/
cmd.Connection = con;
/*declaramos un obeto datareader,
para leer sobre la base de datos*/
SqlDataReader rdr;
/*abrimos la conexión con la base de
datos*/
con.Open();
/*asignamos al datareader el comando
y executamos la lectura*/
rdr = cmd.ExecuteReader();
/*Limpiamos el ListBox*/
lbox_consulta_multiple.Items.Clear();
/*con el siguiente ciclo while
mientras lea en la base de datos traemos el registro*/
while(rdr.Read())
{
/*agregamos al ListBox cada registro
que lee en la base de datos*/
lbox_consulta_multiple.Items.Add(rdr.GetString(rdr.GetOrdinal("Nombre_M")) + " " + rdr.GetString(rdr.GetOrdinal("Apellp_M")) + " " + rdr.GetString(rdr.GetOrdinal("Apellm_M")));
}
/*cerramos la conexión*/
con.Close();
}
/*evento Click del botón
btn_consulta_individual*/
private void btn_consulta_individual_Click(object sender, EventArgs e)
{
/*llamamos al método que realiza la
consulta individual,
* le
pasamos como parámetro el id que ingresa el usuario en el TextBox txt_id*/
consulta_individual(Convert.ToInt32(txt_id.Text));
}
/*evento Click del botón
btn_consulta_multiple*/
private void btn_consulta_multiple_Click(object sender, EventArgs e)
{
/*llamamos al método que realiza la
consulta múltiple*/
consulta_multiple();
}
}
}
Pruebas de la aplicación
No hay comentarios:
Publicar un comentario