Hola, siguiendo con los articulos hoy dia veremos una sencilla aplicacion que inserta datos en una tabla llamada alumnos empleando para ello el objeto command que hace uso de parametros lo cual nos permite brindar un nivel adecuado de seguridad a nuestras aplicaciones ya que estamos estableciendo el tipo de datos y mejor aun el tamnaño del campo para asi evitar ataques de inyeccion a nuestras aplicaciones, como ya te comente es una aplicacion muy sencilla pero te mostrara la forma correcta de usar la coleccion sqlparameter y tambien a interctuar con los objetos sqlcommand y sqldataadapter, bueno como siempre lo hago esta es la estructura de nuestra aplicacion:
La estructura de la Tabla es la siguiente, te lo presento para que veas por que de los tipos que utilizo en la creacion de los parametros:
El codigo te lo muestro a continuacion:
Imports System
Imports System.Data.SqlClient
Public Class Form1
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Me.Close()
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'declaramos la variable de conexion e la instanciamos a la vez
Dim cn As New SqlConnection("data source=familia; initial catalog=colegio;integrated security=sspi;")
'declaramos cadena de consulta
Dim cad As String
'realizamos una simple validacion aunque no es la mejor forma de hacerlo.
If TextBox1.Text.Trim = "" Then
MessageBox.Show("Ingrese Nombre")
End If
If TextBox2.Text.Trim = "" Then
MessageBox.Show("Ingrese Grado")
End If
If TextBox3.Text.Trim = "" Then
MessageBox.Show("Ingrese Seccion")
End If
If TextBox4.Text.Trim = "" Then
MessageBox.Show("Ingrese sancion")
End If
'le damos a la variable el string de consulta a la base de datos
cad = "insert into alumnos(Nombre,Grado,seccion,IdSancion)values "
cad += "(@nom,@grado,@seccion,@sancion)"
'declaramos el objeto command y le pasamos los valores correspondientes
Dim cmd As New SqlCommand(cad, cn)
'creamos el dataadapter
Dim da As New SqlDataAdapter
'le indicamos al dataadapter que se se realizara una operacion de insercion y le
'damos el objeto command que contiene el insert
da.InsertCommand = cmd
'creamos los parametros necesarios segun los campos
Dim nombre As New SqlParameter("@nom", SqlDbType.VarChar, 50)
Dim grado As New SqlParameter("@grado", SqlDbType.TinyInt, 1)
Dim seccion As New SqlParameter("@seccion", SqlDbType.Char, 1)
Dim sancion As New SqlParameter("@sancion", SqlDbType.SmallInt, 2)
' insertamos los parametros al objeto dataadapter
da.InsertCommand.Parameters.Add(nombre)
' indicamos el destino de los parametros
da.InsertCommand.Parameters(0).Value = TextBox1.Text
da.InsertCommand.Parameters.Add(grado)
da.InsertCommand.Parameters(1).Value = TextBox2.Text
da.InsertCommand.Parameters.Add(seccion)
da.InsertCommand.Parameters(2).Value = TextBox3.Text
da.InsertCommand.Parameters.Add(sancion)
da.InsertCommand.Parameters(3).Value = TextBox4.Text
Try
Using cn
cn.Open()
' ejecutamos el comando mediante su metodo executeNonQuery
da.InsertCommand.ExecuteNonQuery()
cmd.Dispose()
da.Dispose()
' enviamos un mensaje
MessageBox.Show("registro Guardado con exito")
End Using
Catch ex As Exception
MessageBox.Show(ex.Message.ToString)
End Try
End Sub
End Class
Bueno el codigo no creo que te traiga muchos problemas asi, te muestro la aplicacion corriendo

Bueno espero que te haya sido de ayuda.
Luis Ramirez G.
Net Developer Specialist
DCE2005 2 estrellas

No hay comentarios:
Publicar un comentario