Publicado en Programacion, Tutoriales, VB. NET

Mini Ejemplo de VB NET y Access

vbnet-access-oledb

Dejo un mini proyecto VB NET con ACCESS para programadores que se inician en este campo.

El Ejemplo es muy simple: se trata de hacer un par de busquedas sobre la tabla Empleados de NEPTUNO.MDB, la cual consiste en buscar empleados por su año de nacimiento.

La conexion se hace mediante la libreria OLEDB.

Hay dos versiones para hacer la busqueda: Mediante un parseo de variable STRING y otro con conversion de tipo FECHA.

Version 1

Private Sub btnAño_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAño.Click
Dim stringConexion As String
Dim sql As String
Dim item As String
stringConexion = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\itc\neptuno.mdb;User Id=admin;Password=;"
sql = "SELECT Nombre,Apellidos,Cargo,FechaNacimiento FROM Empleados"
Try
'declaro conexion a base de datos Access
Dim cnn As New OleDbConnection(stringConexion)
Dim cmd As New OleDbCommand(sql, cnn)
Dim reader As OleDbDataReader
'abro la conexion
cnn.Open()
'ejecutar con resultados
reader = cmd.ExecuteReader()
lstAñoNacimiento.Items.Clear()
'recorremos el objeto reader hasta el final
While reader.Read
Dim año As String
año = reader("FechaNacimiento").ToString().Substring(6, 4)
If año = txtAño.Text Then
item = reader("Nombre") & " " & reader("Apellidos")
item &= " " & reader("cargo") & " " & reader("FechaNacimiento")
lstAñoNacimiento.Items.Add(item)
End If
End While
reader.Close() 'cerrar los datos
cnn.Close() 'cerrar conexion
MessageBox.Show("Fin Carga Datos")

Catch ex As Exception
MessageBox.Show(ex.Message)
End Try

End Sub

Version 2

Private Sub btnBuscar2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBuscar2.Click
Dim stringConexion As String
Dim sql As String
Dim item As String
stringConexion = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\itc\neptuno.mdb;User Id=admin;Password=;"
sql = "SELECT Nombre,Apellidos,Cargo,FechaNacimiento FROM Empleados"

'declaro conexion a base de datos Access
Dim cnn As New OleDbConnection(stringConexion)
Dim cmd As New OleDbCommand(sql, cnn)
Dim reader As OleDbDataReader

Try

'abro la conexion
cnn.Open()
'ejecutar con resultados
reader = cmd.ExecuteReader()
lstAñoNacimiento.Items.Clear()
'recorremos el objeto reader hasta el final
While reader.Read
Dim fecha As Date
fecha = reader("FechaNacimiento").ToString()
If fecha.Year = txtAño.Text Or txtAño.Text = String.Empty Then
item = reader("Nombre") & " " & reader("Apellidos")
item &= " " & reader("cargo") & " " & reader("FechaNacimiento")
lstAñoNacimiento.Items.Add(item)
End If
End While

MessageBox.Show("Fin Carga Datos")

Catch ex As Exception
MessageBox.Show(ex.Message)
Finally
reader.Close() 'cerrar los datos
cnn.Close() 'cerrar conexion

End Try
End Sub

Una vez hecha la consulta, se llena el LISTBOX como muestra la figura.

vbnet-access-oledb

vbnet-access-oledb

Si no ingresan el año, arroja un error … queda de Tarea 🙂

mini-ejemplo-vbnet

3 comentarios sobre “Mini Ejemplo de VB NET y Access

  1. Este ejercicio es una prueba de operaciones matemáticas, codificado en Small Basic y convertido a VB.NET con la función “graduar”

    matModule

    Dim endl, aux, e, pi, rad, i AsPrimitive

    Sub Main()

    ‘ Prueba con operaciones matemáticas

    ‘—————————————————-

    TextWindow.Title = “Prueba con operaciones matemáticas”

    endl =

    Text.GetCharacter(13) ‘\n

    endl = endl +

    Text.GetCharacter(10) ‘\r

    ‘—————————————————-

    aux =

    “Abs(8) = “ + Microsoft.SmallBasic.Library.Math.Abs(8)

    TextWindow.WriteLine(aux)

    aux =

    “Abs(-8) = “ + Microsoft.SmallBasic.Library.Math.Abs(-8)

    TextWindow.WriteLine(aux)

    TextWindow.Write(endl)

    ‘—————————————————-

    aux =

    “Round(4.4) = “ + Microsoft.SmallBasic.Library.Math.Round(4.4)

    TextWindow.WriteLine(aux)

    aux =

    “Round(4.6) = “ + Microsoft.SmallBasic.Library.Math.Round(4.6)

    TextWindow.WriteLine(aux)

    aux =

    “Round(4.5) = “ + Microsoft.SmallBasic.Library.Math.Round(4.5)

    TextWindow.WriteLine(aux)

    aux =

    “Round(5.5) = “ + Microsoft.SmallBasic.Library.Math.Round(5.5)

    TextWindow.WriteLine(aux)

    aux =

    “Ceiling(3.5) = “ + Microsoft.SmallBasic.Library.Math.Ceiling(3.5)

    TextWindow.WriteLine(aux)

    aux =

    “Floor(3.5) = “ + Microsoft.SmallBasic.Library.Math.Floor(3.5)

    TextWindow.WriteLine(aux)

    TextWindow.Write(endl)

    ‘—————————————————-

    e = 2.7182818284590452354

    aux =

    “e = “ + e

    TextWindow.WriteLine(aux)

    aux =

    “Ln(e) = “ + Microsoft.SmallBasic.Library.Math.NaturalLog(e)

    TextWindow.WriteLine(aux)

    aux =

    “Log(10) = “ + Microsoft.SmallBasic.Library.Math.Log(10.0)

    TextWindow.WriteLine(aux)

    TextWindow.Write(endl)

    ‘—————————————————-

    aux =

    ” 7 ^ 11 = “ + Microsoft.SmallBasic.Library.Math.Power(7, 11)

    TextWindow.WriteLine(aux)

    aux =

    “23 ^ (1/2) = “ + Microsoft.SmallBasic.Library.Math.SquareRoot(23)

    TextWindow.WriteLine(aux)

    TextWindow.Write(endl)

    TextWindow.Pause()

    TextWindow.Clear()

    ‘—————————————————-

    pi = Microsoft.SmallBasic.Library.

    Math.Pi

    aux =

    “Pi = “ + pi

    TextWindow.WriteLine(aux)

    TextWindow.Write(endl)

    ‘—————————————————-

    rad = 0

    aux =

    “0 radianes = “ + Microsoft.SmallBasic.Library.Math.GetDegrees(rad)

    TextWindow.WriteLine(aux)

    rad = pi / 2

    aux =

    “Pi / 2 radianes = “ + Microsoft.SmallBasic.Library.Math.GetDegrees(rad)

    TextWindow.WriteLine(aux)

    rad = pi

    aux =

    “Pi radianes = “ + Microsoft.SmallBasic.Library.Math.GetDegrees(rad)

    TextWindow.WriteLine(aux)

    rad = pi * 3 / 2

    aux =

    “3 Pi / 2 radianes = “ + Microsoft.SmallBasic.Library.Math.GetDegrees(rad)

    TextWindow.WriteLine(aux)

    rad = pi * 2

    aux =

    “2 Pi radianes = “ + Microsoft.SmallBasic.Library.Math.GetDegrees(rad)

    TextWindow.WriteLine(aux)

    TextWindow.Write(endl)

    ‘—————————————————-

    aux =

    “ 0 º = “ + Microsoft.SmallBasic.Library.Math.GetRadians(0)

    TextWindow.WriteLine(aux)

    aux =

    ” 90 º = “ + Microsoft.SmallBasic.Library.Math.GetRadians(90)

    TextWindow.WriteLine(aux)

    aux =

    “180 º = “ + Microsoft.SmallBasic.Library.Math.GetRadians(180)

    TextWindow.WriteLine(aux)

    aux =

    “270 º = “ + Microsoft.SmallBasic.Library.Math.GetRadians(270)

    TextWindow.WriteLine(aux)

    aux =

    “360 º = “ + Microsoft.SmallBasic.Library.Math.GetRadians(360)

    TextWindow.WriteLine(aux)

    TextWindow.Write(endl)

    TextWindow.Pause()

    TextWindow.Clear()

    ‘—————————————————-

    For i = 0 To 360 Step 18

    rad = Microsoft.SmallBasic.Library.

    Math.GetRadians(i)

    If i < 10 Then

    aux =

    “Cos(“ + i + “) = “

    ElseIf i < 100 Then

    aux =

    “Cos(“ + i + “) = “

    Else

    aux =

    “Cos(“ + i + “) = “

    EndIf

    aux = aux + Microsoft.SmallBasic.Library.

    Math.Cos(rad)

    TextWindow.WriteLine(aux)

    Next

    TextWindow.Write(endl)

    TextWindow.Pause()

    TextWindow.Clear()

    For i = 0 To 360 Step 18

    rad = Microsoft.SmallBasic.Library.

    Math.GetRadians(i)

    If i < 10 Then

    aux =

    “Sin(“ + i + “) = “

    ElseIf i < 100 Then

    aux =

    “Sin(“ + i + “) = “

    Else

    aux =

    “Sin(“ + i + “) = “

    EndIf

    aux = aux + Microsoft.SmallBasic.Library.

    Math.Sin(rad)

    TextWindow.WriteLine(aux)

    Next

    TextWindow.Write(endl)

    TextWindow.Pause()

    TextWindow.Clear()

    For i = 0 To 360 Step 18

    If (i 90) And (i 270) Then

    rad = Microsoft.SmallBasic.Library.

    Math.GetRadians(i)

    If i < 10 Then

    aux =

    “Tan(“ + i + “) = “

    ElseIf i < 100 Then

    aux =

    “Tan(“ + i + “) = “

    Else

    aux =

    “Tan(“ + i + “) = “

    EndIf

    aux = aux + Microsoft.SmallBasic.Library.

    Math.Tan(rad)

    Else

    If i = 90 Then

    aux =

    “Tan(90) = Infinito”

    Else

    aux =

    “Tan(270) = -Infinito”

    EndIf

    EndIf

    TextWindow.WriteLine(aux)

    Next

    TextWindow.Write(endl)

    TextWindow.Pause()

    TextWindow.Clear()

    ‘—————————————————-

    aux =

    “37 % 42 = “ + Microsoft.SmallBasic.Library.Math.Remainder(37, 42)

    TextWindow.WriteLine(aux)

    TextWindow.Write(endl)

    ‘—————————————————-

    aux =

    “Max(9, 8) = “ + Microsoft.SmallBasic.Library.Math.Max(9, 8)

    TextWindow.WriteLine(aux)

    aux =

    “Max(4, 6) = “ + Microsoft.SmallBasic.Library.Math.Max(4, 6)

    TextWindow.WriteLine(aux)

    TextWindow.Write(endl)

    aux =

    “Min(9, 8) = “ + Microsoft.SmallBasic.Library.Math.Min(9, 8)

    TextWindow.WriteLine(aux)

    aux =

    “Min(4, 6) = “ + Microsoft.SmallBasic.Library.Math.Min(4, 6)

    TextWindow.WriteLine(aux)

    TextWindow.Write(endl)

    ‘—————————————————-

    For i = 1 To 10

    aux =

    “Random() = “ + Microsoft.SmallBasic.Library.Math.GetRandomNumber(10)

    TextWindow.WriteLine(aux)

    Next

    TextWindow.Write(endl)

    EndSub

    End

    Module

    http://empiezoinformatica.wordpress.com/2013/04/13/visual-basic-module-graduado-desde-small-basic/

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s