Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Visual 2010 SQLserver 2008
Visual 2010 SQLserver 2008
UNC
Programacin Aplicada I
I.
.1.
.2.
SqlConnection (Clase):
Representa una conexin abierta con una base de datos de SQL
Server. Esta clase no se puede heredar.
Pgina 2
.3.
SqlDataAdapter (Clase):
Representa un conjunto de comandos de datos y una conexin de
base de datos que se utilizan para rellenar un DataSet y actualizar
una base de datos de SQL Server. Esta clase no se puede heredar.
SqlDataAdapter, se utiliza como un puente entre DataSet y SQL
Server
para
recuperar
guardar
datos.
SqlDataAdapter
.4.
SqlDataAdapter.Fill (Mtodo):
Rellena un objeto DataSet o un objeto DataTable. Agrega filas a
DataSet o las actualiza para hacerlas coincidir con las filas del
origen de datos utilizando los nombres de DataSet y DataTable.
Sintaxis:
SqlDataAdapter.Fill(DataSet, String)
.5.
DataSet (Clase):
Representa una cach de memoria interna de datos. DataSet, que
es una cach de memoria interna de datos recuperados de un
origen de datos, representa un componente fundamental de la
arquitectura de ADO.NET. DataSet est compuesto por una
coleccin de objetos DataTable que se pueden relacionar entre
ellos mediante objetos DataRelation.
Pgina 3
.6.
Pgina 4
PRCTICA I
1. VISUALIZAR LOS ESTUDIANTES QUE ESTN EN UNA BASE DE
DATOS.
Se tiene la informacin en una hoja de Excel y es necesario trasferir
esos datos a SQL, para ello seguiremos los siguientes pasos:
Pgina 5
Pgina 6
BULK
INSERT ESTUDIANTES
FROM 'F:\UNc\PAI\alumnos.csv' ruta del archivo
with(
FIELDTERMINATOR=',', Indica que al encontrar una coma ste termina e inicia otro.
ROWTeRMINATOR='\n'
)
Pgina 7
Imports System.Data.SqlClient
Public Class Form1
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles
MyBase.Load
Dim conex As New SqlConnection("server=.;database = Northwind;
trusted_connection=true")
Dim datos As New SqlDataAdapter("select * from estudiantes", conex)
Dim ds As New Data.DataSet
datos.Fill(ds, "Alumnos")
DGV1.DataSource = ds.Tables("alumnos")
End Sub
End Class
Pgina 8
Pgina 9
Imports System.Data.SqlClient
Public Class WebForm1
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
Handles Me.Load
Dim conex As New SqlConnection("server=.;database = Northwind;
trusted_connection=true")
Dim datos As New SqlDataAdapter("select * from estudianTes", conex)
Dim ds As New Data.DataSet
datos.Fill(ds, "Alumnos")
GridView1.DataSource = ds.Tables("Alumnos")
GridView1.DataBind()
End Sub
End Class
Pgina 10
Cdigo en visual:
Imports System.Data.SqlClient
Public Class Form3
Private Sub TextBox1_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs)
Handles TextBox1.KeyPress
If e.KeyChar = Chr(13) Then
Dim conex2 As New SqlConnection("server=.; database=northwind;
trusted_connection=true ")
Dim traerdatos As New SqlDataAdapter("select
idestudiante=@id ", conex2)
traerdatos.SelectCommand.Parameters.Add("@id", SqlDbType.Char,10).Value =
TextBox1.Text
Dim contenedordatos As New Data.DataSet
traerdatos.Fill(contenedordatos, "Alumnos")
DataGridView1.DataSource = contenedordatos.Tables("Alumnos")
End If
End Sub
End Class
Pgina 11
Pgina 12
Pgina 13
Module GLOBALES
Public conex As New
System.Data.SqlClient.SqlConnection("server=.;database=northwind;trusted_connection=true")
End Module
Pgina 14
Pgina 15
lista
Pgina 16
b)
c)
Pgina 17
d)
Pgina 18
f)
Pgina 19
Cdigo SQL:
Cdigo en visual:
Imports System.Data.SqlClient
Public Class Form3
Private Sub ListBox1_SelectedIndexChanged(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
ListBox1.SelectedIndexChanged
Dim datos As New SqlDataAdapter("query2", conex)
datos.SelectCommand.CommandType = CommandType.StoredProcedure
datos.SelectCommand.Parameters.Add("@cate", SqlDbType.Int).Value =
ListBox1.SelectedValue
Dim ds As New Data.DataSet
datos.Fill(ds, "tablas")
DataGridView1.DataSource = ds.Tables("tablas")
End Sub
End Class
Pgina 20
Cdigo en visual:
Imports System.Data.SqlClient
Public Class Form4
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
Dim datos As New SqlDataAdapter("query3", conex)
datos.SelectCommand.CommandType = CommandType.StoredProcedure
datos.SelectCommand.Parameters.Add("@menor", SqlDbType.Int).Value = TextBox1.Text
datos.SelectCommand.Parameters.Add("@mayor", SqlDbType.Int).Value = TextBox2.Text
Dim ds As New Data.DataSet
datos.Fill(ds, "t")
DataGridView1.DataSource = ds.Tables(0)
End Sub
End Class
Pgina 21
Pgina 22
Cdigo en Visual:
Imports System.Data.SqlClient
Public Class Form5
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e
As System.Windows.Forms.KeyPressEventArgs) Handles
TextBox1.KeyPress
Dim datos As New SqlDataAdapter("query4", conex)
datos.SelectCommand.CommandType =
CommandType.StoredProcedure
datos.SelectCommand.Parameters.Add("@nom",
SqlDbType.NVarChar, 10).Value = TextBox1.Text
Dim ds As New Data.DataSet
datos.Fill(ds, "productitos")
DataGridView1.DataSource = ds.Tables(0)
End Sub
Pgina 23
Cdigo en Visual:
Imports System.Data.SqlClient
Public Class Form6
Private Sub Form6_Load(sender As System.Object, e As System.EventArgs)
Handles MyBase.Load
'TODO: esta lnea de cdigo carga datos en la tabla
'PAIDataSet1.Suppliers' Puede moverla o quitarla segn sea necesario.
Me.SuppliersTableAdapter1.Fill(Me.PAIDataSet1.Suppliers)
End Sub
Private Sub ListBox1_SelectedIndexChanged(sender As System.Object, e As
System.EventArgs) Handles ListBox1.SelectedIndexChanged
Dim datos As New SqlDataAdapter("query5", conex)
datos.SelectCommand.CommandType = CommandType.StoredProcedure
datos.SelectCommand.Parameters.Add("@id", SqlDbType.Int).Value =
ListBox1.SelectedValue
Dim ds As New Data.DataSet
datos.Fill(ds, "prod")
DataGridView1.DataSource = ds.Tables(0)
End Sub
End Class
Pgina 24
Pgina 25
Cdigo en visual:
Imports System.Data.SqlClient
Public Class Form7
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles
Button1.Click
Dim datos As New SqlDataAdapter("query6", conex)
datos.SelectCommand.CommandType = CommandType.StoredProcedure
datos.SelectCommand.Parameters.Add("@oid", SqlDbType.Int).Value = TextBox1.Text
Dim ds As New Data.DataSet
datos.Fill(ds, "p")
DataGridView1.DataSource = ds.Tables(0)
End Sub
End Class
Pgina 26
Cdigo en Visual:
Imports System.Data.SqlClient
Public Class Form8
Private Sub RadioButton1_CheckedChanged(sender As System.Object, e As
System.EventArgs) Handles RadioButton1.CheckedChanged
Dim datos As New SqlDataAdapter("query7", conex)
datos.SelectCommand.CommandType = CommandType.StoredProcedure
Dim ds As New Data.DataSet
datos.Fill(ds, "p")
DataGridView1.DataSource = ds.Tables(0)
End Sub
Private Sub RadioButton2_CheckedChanged(sender As System.Object, e As
System.EventArgs) Handles RadioButton2.CheckedChanged
Dim datos As New SqlDataAdapter("query8", conex)
datos.SelectCommand.CommandType = CommandType.StoredProcedure
Dim ds As New Data.DataSet
datos.Fill(ds, "p")
DataGridView1.DataSource = ds.Tables(0)
End Sub
Private Sub Form8_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles MyBase.Load
End Sub
End Class
Pgina 27
Pgina 28
10. MOSTRAR
LOS
DESCONTINUADOS:
PRODUCTOS
VIGENTES
LOS
Cdigo SQL:
Cdigo Visual:
Public Class Form9
Private Sub CheckBox1_CheckedChanged(sender As System.Object, e As System.EventArgs)
Handles CheckBox1.CheckedChanged
Dim datos As New SqlDataAdapter("query9", conex)
datos.SelectCommand.CommandType = CommandType.StoredProcedure
datos.SelectCommand.Parameters.Add("@value", SqlDbType.Bit).Value = CheckBox1.Checked
Dim ds As New Data.DataSet
datos.Fill(ds, "a")
DataGridView1.DataSource = ds.Tables("a")
End Sub
End Class
Imports System.Data.SqlClient
Public Class Form9
Private Sub CheckBox1_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles
CheckBox1.CheckedChanged
Dim valor As Integer
If CheckBox1.Checked Then
valor = 1
Else
valor = 0
End If
Dim datos As New SqlDataAdapter("query9", conex)
datos.SelectCommand.CommandType = CommandType.StoredProcedure
datos.SelectCommand.Parameters.Add("@value", SqlDbType.Bit).Value = valor
Dim ds As New Data.DataSet
datos.Fill(ds, "a")
DataGridView1.DataSource = ds.Tables("a")
End Sub
End Class
Pgina 29
Pgina 30
PRCTICA III
CREACIN DE LA CONEXIN:
Module CONEXIN
Public conex As New
System.Data.SqlClient.SqlConnection("server=.;database=northwind;trusted_connection=true")
End Module
Pgina 31
b) CONSULTA SQL:
Pgina 32
c) CDIGO EN VISUAL:
d) PANTALLAS:
Pgina 33
Pgina 34
Pgina 35
a) DISEO:
Pgina 36
b) CONSULTAS SQL:
Pgina 37
c) CDIGO EN VISUAL:
Imports System.Data.SqlClient
Public Class SEGUNDO
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs)
Handles Button1.Click
If RadioButton1.Checked Then
Dim datos As New SqlDataAdapter("CONSULTA6", conex)
datos.SelectCommand.CommandType = CommandType.StoredProcedure
Dim ds As New Data.DataSet
datos.Fill(ds, "p")
DataGridView1.DataSource = ds.Tables(0)
ElseIf RadioButton2.Checked Then
Dim datos As New SqlDataAdapter("CONSULTA7", conex)
datos.SelectCommand.CommandType = CommandType.StoredProcedure
Dim ds As New Data.DataSet
datos.Fill(ds, "p")
DataGridView1.DataSource = ds.Tables(0)
ElseIf RadioButton3.Checked Then
Dim datos As New SqlDataAdapter("CONSULTA8", conex)
datos.SelectCommand.CommandType = CommandType.StoredProcedure
datos.SelectCommand.Parameters.Add("@CAT", SqlDbType.Int).Value =
TextBox1.Text
Dim ds As New Data.DataSet
datos.Fill(ds, "p")
DataGridView1.DataSource = ds.Tables(0)
Else
Dim datos As New SqlDataAdapter("CONSULTA9", conex)
datos.SelectCommand.CommandType = CommandType.StoredProcedure
Dim ds As New Data.DataSet
datos.Fill(ds, "p")
DataGridView1.DataSource = ds.Tables(0)
End If
End Sub
End Class
Pgina 38
d) PANTALLAS:
Pgina 39
Pgina 40
b) CONSULTAS SQL:
Pgina 41
c) CDIGO EN VISUAL:
Imports System.Data.SqlClient
Public Class TERCERO
Private Sub RadioButton1_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles
RadioButton1.CheckedChanged
If RadioButton1.Checked Then
Dim datos As New SqlDataAdapter("CONSULTA6", conex)
datos.SelectCommand.CommandType = CommandType.StoredProcedure
Dim ds As New Data.DataSet
datos.Fill(ds, "p")
DataGridView1.DataSource = ds.Tables(0)
End If
End Sub
Private Sub RadioButton2_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles
RadioButton2.CheckedChanged
If RadioButton2.Checked Then
Dim datos As New SqlDataAdapter("CONSULTA7", conex)
datos.SelectCommand.CommandType = CommandType.StoredProcedure
Dim ds As New Data.DataSet
datos.Fill(ds, "p")
DataGridView1.DataSource = ds.Tables(0)
End If
End Sub
Private Sub TextBox1_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles
TextBox1.KeyPress
If e.KeyChar = ChrW(13) Then
If RadioButton3.Checked Then
Dim datos As New SqlDataAdapter("CONSULTA8", conex)
datos.SelectCommand.CommandType = CommandType.StoredProcedure
datos.SelectCommand.Parameters.Add("@CAT", SqlDbType.Int).Value = TextBox1.Text
Dim ds As New Data.DataSet
datos.Fill(ds, "p")
DataGridView1.DataSource = ds.Tables(0)
End If
End If
End Sub
Private Sub RadioButton4_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles
RadioButton4.CheckedChanged
If RadioButton4.Checked Then
Dim datos As New SqlDataAdapter("CONSULTA19", conex)
datos.SelectCommand.CommandType = CommandType.StoredProcedure
Dim ds As New Data.DataSet
datos.Fill(ds, "p")
DataGridView1.DataSource = ds.Tables(0)
End If
End Sub
End Class
Pgina 42
d) PANTALLAS:
Pgina 43
Pgina 44
Pgina 45
b) CDIGO SQL:
c) CDIGO VISUAL:
Imports System.Data.SqlClient
Public Class CUARTO
Private Sub MonthCalendar1_DateSelected(sender As
Object, e As System.Windows.Forms.DateRangeEventArgs)
Handles MonthCalendar1.DateSelected
TextBox1.Text = CStr(MonthCalendar1.SelectionStart)
End Sub
Private Sub MonthCalendar1_DateChanged(sender As
System.Object, e As
System.Windows.Forms.DateRangeEventArgs) Handles
MonthCalendar1.DateChanged
Dim datos As New SqlDataAdapter("CONSULTA10",
conex)
datos.SelectCommand.CommandType =
CommandType.StoredProcedure
datos.SelectCommand.Parameters.Add("@FECHA",
SqlDbType.DateTimeOffset).Value =
MonthCalendar1.SelectionStart
Dim ds As New Data.DataSet
datos.Fill(ds, "p")
DataGridView1.DataSource = ds.Tables(0)
End Sub
End Class
Pgina 46
d) PANTALLAS:
Pgina 47
II.
Pgina 48
Cdigo en visual:
Pgina 49
Pgina 50
Pgina 51
Pgina 52
Cdigo SQL:
Pgina 53
Cdigo en Visual:
Imports System.Data.SqlClient
Public Class Form15
Private Sub Form15_Load(sender As System.Object, e As System.EventArgs) Handles
MyBase.Load
Dim datos As New SqlDataAdapter("QUERY15", conex)
Dim ds As New Data.DataSet
datos.SelectCommand.CommandType = CommandType.StoredProcedure
datos.Fill(ds, "prod1")
dgv_cab.DataSource = ds.Tables(0)
End Sub
Private Sub dgv_cab_CellEnter(sender As Object, e As
System.Windows.Forms.DataGridViewCellEventArgs) Handles dgv_cab.CellEnter
Dim datos As New SqlDataAdapter("QUERY15i", conex)
Dim ds As New Data.DataSet
datos.SelectCommand.CommandType = CommandType.StoredProcedure
datos.SelectCommand.Parameters.Add("@IDE", SqlDbType.Int).Value =
dgv_cab.Rows(e.RowIndex).Cells(0).Value
datos.Fill(ds, "prod2")
dgv_det.DataSource = ds.Tables(0)
End Sub
End Class
Pgina 54
Pgina 55
Cdigo en Visual:
Imports System.Data.SqlClient
Public Class Form16
Private Sub Form16_Load(sender As System.Object, e As System.EventArgs) Handles
MyBase.Load
Dim datos As New SqlDataAdapter("QUERY16", conex)
Dim ds As New Data.DataSet
datos.SelectCommand.CommandType = CommandType.StoredProcedure
datos.Fill(ds, "QUERY16")
dgv_cab.DataSource = ds.Tables(0)
End Sub
Private Sub dgv_cab_CellContentClick(sender As System.Object, e As
System.Windows.Forms.DataGridViewCellEventArgs) Handles dgv_cab.CellContentClick
Dim datos As New SqlDataAdapter("QUERY16i", conex)
Dim ds As New Data.DataSet
datos.SelectCommand.CommandType = CommandType.StoredProcedure
Dim index As Integer
index = dgv_cab.Rows(e.RowIndex).Cells(0).Value
datos.SelectCommand.Parameters.Add("@ID", SqlDbType.Int).Value = index
datos.Fill(ds, "QUERY16i")
PictureBox1.Image = Image.FromFile("C:\Documents and Settings\IRIS
NOHELY\Escritorio\imag msica\n_n\" + CStr(index) + ".jpg")
End Sub
End Class
Pgina 56
Pgina 57
Pgina 58
Pgina 59
Pgina 60
Cdigo en Visual:
Imports System.Data.SqlClient
Public Class Form17
Private Sub Form17_Load(sender As System.Object, e As System.EventArgs) Handles
MyBase.Load
Dim datos As New SqlDataAdapter("QUERY17", conex)
Dim ds As New Data.DataSet
datos.SelectCommand.CommandType = CommandType.StoredProcedure
datos.Fill(ds, "QUERY17")
dgv_cab.DataSource = ds.Tables(0)
End Sub
Private Sub dgv_cab_CellEnter(sender As Object, e As
System.Windows.Forms.DataGridViewCellEventArgs) Handles dgv_cab.CellEnter
Dim datos As New SqlDataAdapter("QUERY17i", conex)
Dim ds As New Data.DataSet
datos.SelectCommand.CommandType = CommandType.StoredProcedure
datos.SelectCommand.Parameters.Add("@IDE", SqlDbType.Int).Value =
dgv_cab.Rows(e.RowIndex).Cells(0).Value
datos.Fill(ds, "QUERY17i")
dgv_det.DataSource = ds.Tables(0)
Label2.Text = dgv_cab.Rows(e.RowIndex).Cells(1).Value + " " +
dgv_cab.Rows(e.RowIndex).Cells(2).Value
End Sub
End Class
Nota: para poder ir a un nuevo datagried view a partir de uno debemos tener
en cuenta la siguiente sentencia:
Datagriedview1.Rows(valor).Cells(valor).Value
En donde:
Rows hace referencia a la fila.
Cells hace referencia a la columna.
Pgina 61
Pgina 62
Pgina 63
Pgina 64
Cdigo en Visual:
Imports System.Data.SqlClient
Public Class Form18
Private Sub Form18_Load(sender As System.Object, e As
System.EventArgs) Handles MyBase.Load
Dim datos As New SqlDataAdapter("QUERY17", conex)
Dim ds As New Data.DataSet
datos.SelectCommand.CommandType =
CommandType.StoredProcedure
datos.Fill(ds, "QUERY17")
dgv_cab.DataSource = ds.Tables(0)
End Sub
Private Sub dgv_cab_CellContentClick(sender As System.Object, e
As System.Windows.Forms.DataGridViewCellEventArgs) Handles
dgv_cab.CellContentClick
Dim datos As New SqlDataAdapter("QUERY17i", conex)
Dim ds As New Data.DataSet
datos.SelectCommand.CommandType =
CommandType.StoredProcedure
datos.SelectCommand.Parameters.Add("@IDE",
SqlDbType.Int).Value = dgv_cab.Rows(e.RowIndex).Cells(0).Value
datos.Fill(ds, "QUERY17i")
dgv_det.DataSource = ds.Tables(0)
Label2.Text = dgv_cab.Rows(e.RowIndex).Cells(1).Value + " "
+ dgv_cab.Rows(e.RowIndex).Cells(2).Value
End Sub
Private Sub dgv_det_CellContentClick(sender As System.Object, e
As System.Windows.Forms.DataGridViewCellEventArgs) Handles
dgv_det.CellContentClick
Dim datos As New SqlDataAdapter("QUERY17ii", conex)
Dim ds As New Data.DataSet
datos.SelectCommand.CommandType =
CommandType.StoredProcedure
datos.SelectCommand.Parameters.Add("@iden",
SqlDbType.Int).Value = dgv_det.Rows(e.RowIndex).Cells(0).Value
datos.Fill(ds, "QUERY17ii")
DataGridView1.DataSource = ds.Tables(0)
Label4.Text = dgv_det.Rows(e.RowIndex).Cells(0).Value
End Sub
Pgina 65
Pgina 66
Pgina 67
III.
FORMULARIOS HEREDADOS
Visual Studio 2010 nos permite crear formularios que hereden las
caractersticas que puede poseer otro formulario; a este tipo de
formularios se les denomina Formularios Heredados.
Para crear este tipo de formularios debemos seguir los siguientes pasos:
Pgina 68
Pgina 69
Pgina 70
Pgina 71
PRCTICA V
Crear una tabla en la base de datos Northwind llamada Personas, la tabla
debe contener los siguientes atributos y sus respectivos tipos de datos:
ATRIBUTO
Idperso (clave primaria)
TIPO DE DATO
Char (8)
REFERENCIA
Cdigo
nomperso
Varchar (30)
Nombres
apeperso
Varchar (40)
Apellidos
Varchar (50)
Correo Electrnico
genero
Char (1)
Gnero
estadocivil
Char (1)
Estado civil
fechanac
datetime
Fecha de Nacimiento
Stored Procedure:
create procedure insertar
@id char(10) ,
@NOMBRE VARCHAR(30) ,
@APELLIDOS VARCHAR(40) ,
@CORREO VARCHAR(50) ,
@GEN CHAR(1) ,
@ESTCIV CHAR(1),
@NAC DATETIME
as
insert into personas
VALUES (@id, @NOMBRE,@APELLIDOS, @CORREO, @GEN , @ESTCIV,
@NAC)
SELECT *
FROM personas
Pgina 72
Cdigo en Visual:
Imports System.Data.SqlClient
Public Class Form19
Sub LIMPIAR_INGRESO() ' SUBPROGRAMA QUE VA A LIMPIAR TDAS LAS CAJAS
'For Each objeto In Me.Controls
'
If TypeOf objeto Is TextBox Then
'
objeto.text = Space(0)
'
End If
'Next
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
TextBox4.Text = ""
TextBox5.Text = ""
TextBox6.Text = ""
TextBox7.Text = ""
TextBox1.Focus()
End Sub
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs)
Handles Button1.Click
Dim insert_per As New SqlCommand("insertar", conex)
Dim respuesta As Integer ' si es 1 se ejecuta si es 2 no se ejecuta el
insert
insert_per.CommandType = CommandType.StoredProcedure
insert_per.Parameters.Add("@id", SqlDbType.Char, 8).Value =
TextBox1.Text
insert_per.Parameters.Add("@N", SqlDbType.VarChar, 30).Value
TextBox2.Text
insert_per.Parameters.Add("@A", SqlDbType.VarChar, 40).Value
TextBox3.Text
insert_per.Parameters.Add("@C", SqlDbType.VarChar, 50).Value
TextBox4.Text
insert_per.Parameters.Add("@G", SqlDbType.Char, 1).Value =
TextBox5.Text
insert_per.Parameters.Add("@EC", SqlDbType.Char, 1).Value =
TextBox6.Text
insert_per.Parameters.Add("@FN", SqlDbType.DateTime).Value =
TextBox7.Text
conex.Open()
respuesta = insert_per.ExecuteNonQuery ' devuelve el numero
registros afectados.
=
=
=
de filas o
If respuesta = 1 Then
MessageBox.Show("SE GRAB EL REGISTRO")
LIMPIAR_INGRESO()
Pgina 73
Pgina 74
Stored Procedure:
create procedure insertar
@id char(10) ,
@NOMBRE VARCHAR(30) ,
@APELLIDOS VARCHAR(40) ,
@CORREO VARCHAR(50) ,
@GEN CHAR(1) ,
@ESTCIV CHAR(1),
@NAC DATETIME
as
insert into personas
VALUES (@id, @NOMBRE,@APELLIDOS, @CORREO, @GEN
, @ESTCIV, @NAC)
SELECT *
FROM personas
Pgina 75
Cdigo en Visual:
Imports System.Data.SqlClient
Public Class Form20
Sub LIMPIAR_INGRESO() ' SUBPROGRAMA QUE VA A LIMPIAR TDAS LAS CAJAS
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
TextBox4.Text = ""
TextBox7.Text = ""
TextBox1.Focus()
End Sub
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles
Button1.Click
Dim insert_per As New SqlCommand("insertar", conex)
Dim respuesta As Integer ' si es 1 se ejecuta si es 2 no se ejecuta el insert
Dim genero As Char
If RadioButton1.Checked Then
genero = "F"
Else
genero = "M"
End If
Dim SC As Integer
Dim ESTADO As Char
SC = ListBox1.SelectedIndex
Select Case SC
Case 0
ESTADO
Case 1
ESTADO
Case 2
ESTADO
Case 3
ESTADO
= "S"
= "C"
= "V"
= "D"
End Select
insert_per.CommandType = CommandType.StoredProcedure
insert_per.Parameters.Add("@id", SqlDbType.Char, 8).Value = TextBox1.Text
insert_per.Parameters.Add("@N", SqlDbType.VarChar, 30).Value = TextBox2.Text
insert_per.Parameters.Add("@A", SqlDbType.VarChar, 40).Value = TextBox3.Text
insert_per.Parameters.Add("@C", SqlDbType.VarChar, 50).Value = TextBox4.Text
insert_per.Parameters.Add("@G", SqlDbType.Char, 1).Value = genero
insert_per.Parameters.Add("@EC", SqlDbType.Char, 1).Value = ESTADO
insert_per.Parameters.Add("@FN", SqlDbType.DateTime).Value = TextBox7.Text
conex.Open()
respuesta = insert_per.ExecuteNonQuery
If respuesta = 1 Then
MessageBox.Show("SE GRAB EL REGISTRO")
LIMPIAR_INGRESO()
End If
End Sub
End Class
Pgina 76
ATRIBUTO
Idperso (clave primaria)
TIPO DE DATO
int
REFERENCIA
Cdigo
nomperso
Varchar (30)
Nombres
apeperso
Varchar (40)
Apellidos
Varchar (50)
Correo Electrnico
genero
Char (1)
Gnero
estadocivil
Char (1)
Estado civil
fechanac
datetime
Fecha de Nacimiento
Pgina 77
Pgina 78
Pgina 79
Pgina 80
Cdigo en Visual:
Imports System.Data.SqlClient
Public Class Form21
Sub LIMPIAR_INGRESO()
TextBox2.Text = ""
TextBox3.Text = ""
TextBox4.Text = ""
TextBox7.Text = ""
End Sub
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles
Button1.Click
Dim insert_per As New SqlCommand("insertar", conex)
Dim respuesta As Integer
Dim SC As Integer
Dim ESTADO As Char
Dim genero As Char
If RadioButton1.Checked Then
genero = "F"
Else
genero = "M"
End If
SC = ListBox1.SelectedIndex
Select Case SC
Case 0
ESTADO
Case 1
ESTADO
Case 2
ESTADO
Case 3
ESTADO
= "S"
= "C"
= "V"
= "D"
End Select
insert_per.CommandType = CommandType.StoredProcedure
insert_per.Parameters.Add("@N", SqlDbType.VarChar, 30).Value = TextBox2.Text
insert_per.Parameters.Add("@A", SqlDbType.VarChar, 40).Value = TextBox3.Text
insert_per.Parameters.Add("@C", SqlDbType.VarChar, 50).Value = TextBox4.Text
insert_per.Parameters.Add("@G", SqlDbType.Char, 1).Value = genero
insert_per.Parameters.Add("@EC", SqlDbType.Char, 1).Value = ESTADO
insert_per.Parameters.Add("@FN", SqlDbType.DateTime).Value = TextBox7.Text
conex.Open()
respuesta = insert_per.ExecuteNonQuery
conex.Close()
If respuesta = 1 Then
MessageBox.Show("SE GRAB EL REGISTRO")
LIMPIAR_INGRESO()
End If
End Sub
End Class
Pgina 81
Pgina 82
Cdigo en Visual:
Imports System.Data.SqlClient
ublic Class Form22
Sub cargar_datos()
Dim datos As New SqlDataAdapter("select * from personas", conex)
Dim ds As New Data.DataSet
datos.Fill(ds, "prod1")
DataGridView1.DataSource = ds.Tables(0)
End Sub
Sub LIMPIAR_INGRESO() ' SUBPROGRAMA QUE VA A LIMPIAR TDAS LAS CAJAS
TextBox2.Text
TextBox3.Text
TextBox4.Text
TextBox7.Text
End Sub
Private
Dim
Dim
Dim
Dim
Dim
=
=
=
=
""
""
""
""
If RadioButton1.Checked Then
genero = "F"
Else
genero = "M"
End If
SC = ListBox1.SelectedIndex
Select Case SC
Case 0
ESTADO
Case 1
ESTADO
Case 2
ESTADO
Case 3
ESTADO
= "S"
= "C"
= "V"
= "D"
End Select
insert_per.CommandType = CommandType.StoredProcedure
insert_per.Parameters.Add("@N", SqlDbType.VarChar, 30).Value = TextBox2.Text
insert_per.Parameters.Add("@A", SqlDbType.VarChar, 40).Value = TextBox3.Text
insert_per.Parameters.Add("@C", SqlDbType.VarChar, 50).Value = TextBox4.Text
insert_per.Parameters.Add("@G", SqlDbType.Char, 1).Value = genero
insert_per.Parameters.Add("@EC", SqlDbType.Char, 1).Value = ESTADO
insert_per.Parameters.Add("@FN", SqlDbType.DateTime).Value = TextBox7.Text
conex.Open()
respuesta = insert_per.ExecuteNonQuery ' devuelve el numero de filas o registros afectados.
conex.Close()
If respuesta = 1 Then
MessageBox.Show("SE GRAB EL REGISTRO")
LIMPIAR_INGRESO()
cargar_datos()
End If
End Sub
End Class
Pgina 83
Pgina 84
TIPO DE DATO
IdLibro
int
Titulo
Varchar (30)
IdEditorial
int
REFERENCIA
Cdigo
Ttulo del Libro
Cdigo de la Editorial
Edicion
Char (10)
Nmero de Edicin
Ao_Publicacion
datetime
Ao de Publicacin
IdAutor
int
AUTOR
ATRIBUTO
TIPO DE DATO
IdAutor
int
Nombre
Varchar (50)
REFERENCIA
Cdigo
Nombre del Autor
Fecha_Nac
datetime
Fecha de Nacimiento
Pais
Char (10)
Pas de Origen
EDITORIAL
ATRIBUTO
TIPO DE DATO
IdEditorial
int
REFERENCIA
Cdigo
Nombre
Varchar (50)
Nombre de la Editorial
Pais
VarChar (20)
Pgina 85
Cdigo en Visual:
Imports System.Data.SqlClient
Public Class Form23
Sub LIMPIAR_INGRESO()
End Sub
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
Dim insert_per As New SqlCommand("libro", conex)
Dim respuesta As Integer ' si es 1 se ejecuta si es 2 no se ejecuta el insert
insert_per.CommandType = CommandType.StoredProcedure
insert_per.Parameters.Add("@t", SqlDbType.VarChar, 30).Value = TextBox1.Text
insert_per.Parameters.Add("@ed", SqlDbType.Char, 10).Value = TextBox3.Text
insert_per.Parameters.Add("@ap", SqlDbType.Char, 10).Value = TextBox4.Text
insert_per.Parameters.Add("@edit", SqlDbType.Int).Value = ListBox1.SelectedValue
insert_per.Parameters.Add("@idau", SqlDbType.Int).Value = ListBox2.SelectedValue
conex.Open()
respuesta = insert_per.ExecuteNonQuery
conex.Close()
If respuesta = 1 Then
MessageBox.Show("SE REGISTR")
LIMPIAR_INGRESO()
End If
End Sub
Private Sub Form23_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'TODO: esta lnea de cdigo carga datos en la tabla 'PAIDataSet5.EDITORIAL' Puede moverla o quitarla
segn sea necesario.
Me.EDITORIALTableAdapter.Fill(Me.PAIDataSet5.EDITORIAL)
'TODO: esta lnea de cdigo carga datos en la tabla 'PAIDataSet4.AUTOR' Puede moverla o quitarla segn
sea necesario.
Me.AUTORTableAdapter.Fill(Me.PAIDataSet4.AUTOR)
End Sub
End Class
Pgina 86
Pgina 87
Pgina 88
Probamos la conexin:
Pgina 89
Luego cargarn los datos y seleccionaremos slo los que vamos a utilizar, en este
caso es la tabla AUTOR y de ella slo necesitaremos los atributos IdAutor y
Nombre, luego clic en finalizar:
Pgina 90
Pgina 91
PRCTICA VI
1. MOSTRAR EN UN FORMULARIO INFORMACIN DE LAS CATEGORAS DE LA
BASE DE DATOS NORTHWIND; SE PERMITIR AGREGAR OTRAS
CATEGORAS; MS NO ELIMINARLAS.
Nota: Un Origen de
datos se crea para
todo el proyecto.
Pgina 92
Pgina 93
Pgina 94
Pgina 95
siguiente:
Pgina 96
Para agregar una nueva categora debemos hacer clic en el siguiente botn:
Escribiremos los datos que nos solicitan, y para guardar dicha informacin
debemos hacer clic en el botn:
Pgina 97
Imports System.Data.SqlClient
Public Class Form26
Sub cargar_datos()
Dim datos As New SqlDataAdapter("select productname, unitprice, unitsinstock, categoryid
from products where categoryid=@cate", conex)
datos.SelectCommand.Parameters.Add("@cate", SqlDbType.Int).Value =
CInt(CategoryIDTextBox.Text)
Dim ds As New Data.DataSet
datos.Fill(ds, "detalle")
DataGridView1.DataSource = ds.Tables("detalle")
End Sub
Private Sub CategoriesBindingNavigatorSaveItem_Click(sender As System.Object, e As
System.EventArgs)
Me.Validate()
Me.CategoriesBindingSource.EndEdit()
Me.TableAdapterManager.UpdateAll(Me.NorthwindDataSet11)
End Sub
Private Sub CategoriesBindingNavigatorSaveItem_Click_1(sender As System.Object, e As
System.EventArgs)
Me.Validate()
Me.CategoriesBindingSource.EndEdit()
Me.TableAdapterManager.UpdateAll(Me.NorthwindDataSet11)
End Sub
Private Sub Form26_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
Me.CategoriesTableAdapter.Fill(Me.NorthwindDataSet11.Categories)
cargar_datos()
End Sub
Private Sub BindingNavigatorMoveNextItem_Click(sender As System.Object, e As System.EventArgs)
Handles BindingNavigatorMoveNextItem.Click, BindingNavigatorMoveLastItem.Click,
BindingNavigatorMovePreviousItem.Click, BindingNavigatorMoveFirstItem.Click
cargar_datos()
End Sub
Private Sub CategoryIDTextBox_TextChanged(sender As System.Object, e As System.EventArgs)
Handles CategoryIDTextBox.TextChanged
cargar_datos()
End Sub
Pgina 98
Pgina 99
Pgina 100
Cdigo Visual:
Imports System.Data.SqlClient
Public Class Form27
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
Dim comando As New SqlCommand("select productname, unitprice, unitsinstock, categoryid from
products where productid= @id", conex)
comando.Parameters.Add("@id", SqlDbType.Int).Value = CInt(TextBox1.Text)
Dim registro As SqlDataReader
conex.Open()
registro = comando.ExecuteReader()
trae una variable y la alamcena en registro
registro.Read()
If registro.HasRows = True Then ' utilizado para contar el nmero de filas (registros)
existentes
TextBox2.Text = registro.Item(0) ' referencia al primer campo que se desea mostrar
(productname)
TextBox3.Text = registro.Item(1) ' referencia al segundo campo que se desea mostrar
(unitprice)
TextBox4.Text = registro.Item(2) ' referencia al tercer campo que se desea mostrar
(unitsinstock)
TextBox5.Text = registro.Item(3) ' referencia al cuarto campo que se desea mostrar
(categoryid)
Else
MessageBox.Show("NO EXISTE ESTE PRODUCTO!")
End If
registro.Close()
conex.Close()
End Sub
End Class
Pgina 101
Pgina 102
Pgina 103
Imports System.Data.SqlClient
Public Class Form28
Private Sub Button1_Click(sender As System.Object, e As
System.EventArgs) Handles Button1.Click
Dim comando As New SqlCommand("select productname,
unitprice, unitsinstock from products where supplierid= @id",
conex)
comando.Parameters.Add("@id", SqlDbType.Int).Value =
CInt(TextBox1.Text)
Dim registro As SqlDataReader
conex.Open()
registro = comando.ExecuteReader()
Do While registro.Read()
MessageBox.Show(registro.Item(0) + " - " +
CStr(registro.Item(1)) + " - " + CStr(registro.Item(2)))
Loop
registro.Close()
conex.Close()
End Sub
Pgina 104
Pgina 105
Imports System.Data.SqlClient
Public Class Form29
Private Sub Button1_Click(sender As System.Object, e As
System.EventArgs) Handles Button1.Click
Dim comando As New SqlCommand("select productname,
unitprice, unitsinstock from products where supplierid= @id",
conex)
comando.Parameters.Add("@id", SqlDbType.Int).Value =
CInt(TextBox1.Text)
Dim registro As SqlDataReader
conex.Open()
registro = comando.ExecuteReader()
Do While registro.Read()
ListBox1.Items.Add(registro.Item(0) + " - " +
CStr(registro.Item(1)) + " - " + CStr(registro.Item(2)))
Loop
registro.Close()
conex.Close()
End Sub
End Class
Pgina 106
Pgina 107
CLAVE:
Para resolver este ejercicio necesitamos un formulario especial, denominado
Formulario de Inicio de Sesin.
Para obtener este formulario debemos seguir los siguientes pasos:
Clic derecho sobre el nombre del proyecto, en el Explorador de
Soluciones, para poder agregar un nuevo formulario:
Pgina 108
Cdigo Visual:
Imports System.Data.SqlClient
Public Class LoginForm30
Private Sub OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK.Click
conex)
Dim QUERY As New SqlCommand("SELECT COUNT(*) FROM USUARIO WHERE IDUSUARIO= @U AND PASSWORD = @P",
QUERY.Parameters.Add("@U", SqlDbType.VarChar, 20).Value = UsernameTextBox.Text
QUERY.Parameters.Add("@P", SqlDbType.VarChar, 20).Value = PasswordTextBox.Text
conex.Open()
Dim VALOR As Integer
VALOR = QUERY.ExecuteScalar '
ES UN SLO VALOR
conex.Close()
If VALOR = 1 Then
Form1.Show()
Me.Hide()
Else
End If
End Sub
Private Sub Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Cancel.Click
Me.Close()
End Sub
End Class
Pgina 109
Pgina 110
Imports System.Data.SqlClient
Public Class Form31
Private Sub Button1_Click(sender As System.Object, e As
System.EventArgs) Handles Button1.Click
If TextBox3.Text = TextBox4.Text Then
Dim comando As New SqlCommand("update usuario set password =
@NUEVAC where IDusuario = @USER and password=@CA", conex)
comando.Parameters.Add("@NUEVAC", SqlDbType.VarChar,
20).Value = TextBox3.Text
comando.Parameters.Add("@USER", SqlDbType.VarChar, 20).Value
= TextBox1.Text
comando.Parameters.Add("@CA", SqlDbType.VarChar, 20).Value =
TextBox2.Text
conex.Open()
comando.ExecuteNonQuery()
conex.Close()
End If
End Sub
End Class
Pgina 111
IV.
Pgina 112
Pgina 113
Pgina 114
Pgina 115
Pgina 116
Probamos la conexin:
Pgina 117
Pgina 118
Pgina 119
Pgina 120
Pgina 121
Pgina 122
Pgina 123
Pgina 124
PRCTICA VII
1. MOSTRAR LAS RDENES REALIZADAS POR UN EMPLEADO:
Cdigo SQL:
create procedure sp1
@id int
as
select e.employeeid, orderid, orderdate, customerid
from Employees as e inner join Orders as o
on e.EmployeeID = o.EmployeeID
where e.EmployeeID = @id
Cdigo en Visual:
Imports System.Data.SqlClient
Public Class Form1
Private Sub EmployeesBindingNavigatorSaveItem_Click(sender As System.Object, e As
System.EventArgs) Handles EmployeesBindingNavigatorSaveItem.Click
Me.Validate()
Me.EmployeesBindingSource.EndEdit()
Me.TableAdapterManager.UpdateAll(Me.NorthwindDataSet)
End Sub
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles
MyBase.Load
Me.EmployeesTableAdapter.Fill(Me.NorthwindDataSet.Employees)
End Sub
Private Sub TabPage2_Click(sender As System.Object, e As System.EventArgs) Handles
TabPage2.Click
End Sub
Private Sub EmployeeIDTextBox_TextChanged(sender As System.Object, e As
System.EventArgs) Handles EmployeeIDTextBox.TextChanged
Dim datos As New SqlDataAdapter("sp1", conex)
Dim ds As New Data.DataSet
datos.SelectCommand.CommandType = CommandType.StoredProcedure
datos.SelectCommand.Parameters.Add("@id", SqlDbType.Int).Value =
EmployeeIDTextBox.Text
datos.Fill(ds, "s")
DataGridView1.DataSource = ds.Tables(0)
End Sub
End Class
Pgina 125
Pgina 126
Cdigo Visual:
Pgina 127
Pgina 128
MANTENIMIENTO DE CONFERENCIAS:
Pgina 129
CDIGO SQL:
Pgina 130
Cdigo Visual:
Imports System.Data.SqlClient
Public Class NUEVOS_PARTICIPANTES
Private Sub NUEVOS_PARTICIPANTES_Load(sender As System.Object, e As System.EventArgs) Handles
MyBase.Load
Me.INSTITUCIONESTableAdapter.Fill(Me.SEMANASISTEMICADataSet2.INSTITUCIONES)
End Sub
Sub LIMPIAR_INGRESO()
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
TextBox4.Text = ""
TextBox5.Text = ""
TextBox1.Focus()
End Sub
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
Dim datos As New SqlCommand("insertar", conex)
Dim respuesta As Integer
Dim genero As Integer
If RadioButton1.Checked Then
genero = 1
Else
genero = 2
End If
datos.CommandType = CommandType.StoredProcedure
datos.Parameters.Add("@id", SqlDbType.Char, 10).Value = TextBox1.Text
datos.Parameters.Add("@ap", SqlDbType.VarChar, 25).Value = TextBox2.Text
datos.Parameters.Add("@am", SqlDbType.VarChar, 25).Value = TextBox3.Text
datos.Parameters.Add("@n", SqlDbType.VarChar, 25).Value = TextBox4.Text
datos.Parameters.Add("@e", SqlDbType.Char, 45).Value = TextBox5.Text
datos.Parameters.Add("@s", SqlDbType.Char, 1).Value = genero
datos.Parameters.Add("@ii", SqlDbType.Int).Value = ComboBox1.SelectedValue
conex.Open()
respuesta = datos.ExecuteNonQuery
If respuesta = 1 Then
MessageBox.Show("SE GRAB EL REGISTRO")
LIMPIAR_INGRESO()
End If
Dim dat As New SqlDataAdapter("ver", conex)
Dim ds As New Data.DataSet
dat.SelectCommand.CommandType = CommandType.StoredProcedure
dat.Fill(ds, "ver")
DataGridView1.DataSource = ds.Tables(0)
End Sub
Private Sub LinkLabel1_LinkClicked(sender As System.Object, e As
System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel1.LinkClicked
Buscar_Participantes.Show()
End Sub
Pgina 131
BUSCAR UN PARTICIPANTE:
Pgina 132
Cdigo SQL:
Bsqueda por cdigo:
create procedure cod
@id varchar(20)
as
select *
from PARTICIPANTES
where IdParticipante like
@id+'%'
Cdigo en Visual:
Imports System.Data.SqlClient
Public Class Buscar_Participantes
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles TextBox1.TextChanged
If RadioButton1.Checked Then
Dim datos As New SqlCommand("cod", conex)
datos.CommandType = CommandType.StoredProcedure
Dim dat As New SqlDataAdapter("cod", conex)
Dim ds As New Data.DataSet
dat.SelectCommand.CommandType = CommandType.StoredProcedure
dat.SelectCommand.Parameters.Add("@id", SqlDbType.VarChar, 20).Value =
TextBox1.Text
dat.Fill(ds, "T")
DataGridView1.DataSource = ds.Tables(0)
Else
Dim datos As New SqlCommand("apepaternito", conex)
datos.CommandType = CommandType.StoredProcedure
Dim dat As New SqlDataAdapter("apepaternito", conex)
Dim ds As New Data.DataSet
dat.SelectCommand.CommandType = CommandType.StoredProcedure
dat.SelectCommand.Parameters.Add("@a", SqlDbType.VarChar, 25).Value = TextBox1.Text
dat.Fill(ds, "T")
DataGridView1.DataSource = ds.Tables(0)
End If
End Sub
Pgina 133
REGISTRAR ASISTENTES:
Pgina 134
Cdigo SQL:
Pgina 135
Cdigo en Visual:
Imports System.Data.SqlClient
Public Class Asistencia
Private Sub Asistencia_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
Me.CONFERENCIASTableAdapter.Fill(Me.SEMANASISTEMICADataSet3.CONFERENCIAS)
End Sub
Sub registrar()
Dim insert_per As New SqlCommand("reg", conex)
Dim respuesta As Integer
insert_per.CommandType = CommandType.StoredProcedure
insert_per.Parameters.Add("@f", SqlDbType.DateTime).Value = DateTime.Now
insert_per.Parameters.Add("@idp", SqlDbType.VarChar, 10).Value = TextBox1.Text
insert_per.Parameters.Add("@idc", SqlDbType.Int).Value = ComboBox1.SelectedValue
conex.Open()
respuesta = insert_per.ExecuteNonQuery
conex.Close()
If respuesta = 1 Then
MessageBox.Show("SE GRAB EL REGISTRO")
End If
Dim datos As New SqlDataAdapter("v", conex)
Dim ds As New Data.DataSet
datos.SelectCommand.CommandType = CommandType.StoredProcedure
datos.SelectCommand.Parameters.Add("@i", SqlDbType.Int).Value = ComboBox1.SelectedValue
datos.Fill(ds, "i")
DataGridView1.DataSource = ds.Tables(0)
End Sub
Private Sub TextBox1_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs)
Handles TextBox1.KeyPress
If e.KeyChar = ChrW(13) Then
registrar()
End If
End Sub
Private Sub ComboBox1_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles
ComboBox1.SelectedIndexChanged
Label4.Text = CStr(ComboBox1.Text)
End Sub
Private Sub TextBox2_TextChanged(sender As System.Object, e As System.EventArgs) Handles
TextBox2.TextChanged
Dim datos As New SqlDataAdapter("rr", conex)
Dim ds As New Data.DataSet
datos.SelectCommand.CommandType = CommandType.StoredProcedure
datos.SelectCommand.Parameters.Add("@text", SqlDbType.VarChar, 25).Value = TextBox2.Text
datos.Fill(ds, "i")
DataGridView2.DataSource = ds.Tables(0)
End Sub
Private Sub DataGridView2_CellContentClick(sender As System.Object, e As
System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView2.CellContentClick
TextBox1.Text = DataGridView2.Rows(e.RowIndex).Cells(0).Value
End Sub
End Class
Pgina 136
Pgina 137
Cdigo SQL:
alter procedure asist
as
select IdParticipante, ApePat+' '+ApeMat+'
'+Nombres as Nombre, Email,IdInsti
from PARTICIPANTES
order by ApePat+ApeMat+Nombres
Cdigo SQL:
Pgina 138
Cdigo SQL:
Pgina 139