26 de enero de 2012

VB y ACCESS 1/3

Para conecar ACCESS 2010 con VB 2010 primero se crea la base de datos(si es que no esta creada), en este ejemplo me conecto a una base llamada img que tiene una tabla llamada imagen, luego se crea un nuevo proyecto, en mi caso lo llame ACCESS, después nos vamos al Solution Explorer y click derecho sobre el proyecto para poder acceder a las propiedades


Ahora en el campo settings colocar los valores deseados, en mi caso en name le puse conexión, en type deben escoger Connection String, en Scope no tocar nada y en Value le dan al botón examinar del final



En la pantalla que se abrirá deberán especificar la fuente de datos o Data Source para conectar con la base, si ya trabajaban con otro motor de base de datos (como es mi caso) deben cambiarlo



y la ventana de propiedades de conexión quedara con el siguiente Data Source: Microsoft Access Database File (OLE DB) luego se debe buscar la base creada en la ubicación en la cual se guardo, asi que en Database File name le dan al botón Browse...


y buscan la dirección de su base, en mi caso se llama img y la guarde en el escritorio así que obtengo esta pantalla


Prueban la conexion y si todo esta bien les aparecera algo como esto:


y dentro de la pestaña settings de properties que es la que abrimos al principio tendremos los valores así:


Guardamos y regresamos al form, le vamos a añadir un DataGridView y un BindingNavigator



tal que el form nos quede así:


Ahora creamos un modulo en nuestra plicacion, para esto se da click derecho al proyecto desde Solution Explorer y se selecciona add --> modulo


le ponen el nombre que quieren, en mi caso le deje el nombre por defecto, luego ponemos este código:

Imports System.Data
Imports System.Data.OleDb

Module Module1
    Public cnn As New OleDbConnection(My.Settings.yo)
End Module

y ahora nos vamos al formulario y dentro del evento load colcamos este codigo:

Imports System.Data.OleDb
Imports System.Data
Public Class Form1
    Dim bs As New BindingSource
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Try
            Using oda As New OleDbDataAdapter("select * from imagen", cnn)
                Dim dt As New DataTable("imagen")
                oda.Fill(dt)
                bs.DataSource = dt
                BindingNavigator1.BindingSource = bs
                DataGridView1.DataSource = bs
            End Using

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

        End Try
    End Sub
End Class

Compilamos y ejecutamos y listo