Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Conectar a una base de datos access desde visual basic

Estas en el tema de Conectar a una base de datos access desde visual basic en el foro de Visual Basic clásico en Foros del Web. Hola a todos, He creado una aplicación en access, en la que tengo las tablas y las ventanas. Decidí hacer la BD en access ya ...
  #1 (permalink)  
Antiguo 22/03/2007, 15:02
 
Fecha de Ingreso: marzo-2007
Mensajes: 10
Antigüedad: 17 años, 8 meses
Puntos: 0
Conectar a una base de datos access desde visual basic

Hola a todos,
He creado una aplicación en access, en la que tengo las tablas y las ventanas. Decidí hacer la BD en access ya que para la persona que lo estoy haciendo no almacenará miles de registros al final del año. En el trabajo uso siempre oracle, y al crear una BD en access siempre he usado java.
Alguien me podría decir cómo conectarme a la base de datos para que pueda lanzar sentencias de actualización de tablas?
Lo que he hecho es
Dim conexion as new adodb.connection
Pero luego no sé qué pasarle al conexion.open
Sé que me he enrollado... lo siento ;)
Saludos y gracias!
  #2 (permalink)  
Antiguo 22/03/2007, 15:23
 
Fecha de Ingreso: enero-2007
Ubicación: Tingo María - Perú
Mensajes: 399
Antigüedad: 17 años, 10 meses
Puntos: 13
Re: Conectar a una base de datos access desde visual basic

Dim sPathBase As String
Dim rst As ADODB.Recordset
Dim cnn As ADODB.Connection

Set cnn = New ADODB.Connection
Set rst = New ADODB.Recordset


sPathBase = "C:\Program Files\Microsoft Visual Studio\VB98\BIBLIO.MDB"

cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.3.51; Data Source=" & sPathBase & ";"
cnn.Open



rst.Open "SELECT * FROM Authors", cnn, adOpenDynamic, adLockOptimistic


Para mayor información:
http://www.elguille.info/VB/cursos_v...o/basico41.htm
__________________
Vivir para ser buenos y ser buenos para servir mejor.
  #3 (permalink)  
Antiguo 23/03/2007, 00:59
 
Fecha de Ingreso: marzo-2007
Mensajes: 10
Antigüedad: 17 años, 8 meses
Puntos: 0
Re: Conectar a una base de datos access desde visual basic

Hola,
Ante todo muchas gracias por responderme. Pero meto la ruta de mi base de datos y me da el siguiente error:

No se reconoce el formato de base de datos 'y la ruta'
Si alguien podría echarme una mano se lo agradecería.
Muchas gracias
Un saludo!
  #4 (permalink)  
Antiguo 23/03/2007, 02:09
 
Fecha de Ingreso: noviembre-2005
Mensajes: 751
Antigüedad: 19 años
Puntos: 13
Re: Conectar a una base de datos access desde visual basic

Hola

Con las últimas versiones del access tienes que tener instalado el SP6 del visual basic.

--Saludos--
  #5 (permalink)  
Antiguo 23/03/2007, 08:40
 
Fecha de Ingreso: enero-2007
Ubicación: Tingo María - Perú
Mensajes: 399
Antigüedad: 17 años, 10 meses
Puntos: 13
Re: Conectar a una base de datos access desde visual basic

Otra opcion seria convertir tu base de datos al formato ACESS 97

Herramientas / Utilidades de base de datos / Convertir base de datos / A formato de archvio de Access 97...
__________________
Vivir para ser buenos y ser buenos para servir mejor.
  #6 (permalink)  
Antiguo 29/04/2007, 16:41
 
Fecha de Ingreso: abril-2007
Ubicación: Trabajando
Mensajes: 7
Antigüedad: 17 años, 6 meses
Puntos: 1
Conectar a una base de datos access desde visual basic

Hola, mira te cuento, conforme fueron evolucionando las BD, Visual basic fue mejorando y creando nuevos tipos de conexión ADO, DAO Y RDO. el mas potente es Ado le sigue Dao y el Primero fue RDO, cada uno tiene ventajas y desventajas yo aprndi hace alguno años DAO e incluso hice pruebas y logre parametrizarlo.


Ejemplo
1.-En la barra de herramientas de VB seleccionas el datacontrol
(por defaul te da el nombre data1)
2.-En el menu de propiedades seleccionas el data1 y buscas las propiedades [databasename]:- ahi pones el nombre de la base de datos que deseas utilizar, junto con la ruta ejemplo: \\servidor\BaseDatosEmpleados.mdb
3.-Seleccionas en el mismo menu de propiedades la opcion [recordsourse]:- y ahi seleccionas la tabla con la que deseas trabajar.
* puedes utilizar tandos controldata como necesites e incluso puedes parametrizarlos para que cambien de tabla o incluso de base de datos.
una vez hecho esto los combos, text flexgrid y varios controles mas estaran enlazados con la tabla de la base de datos que declaraste.

Espero te sirva el tip... Suerte
  #7 (permalink)  
Antiguo 07/02/2008, 07:48
 
Fecha de Ingreso: septiembre-2007
Mensajes: 54
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Conectar a una base de datos access desde visual basic

hola mi nombre es fernando , estoy haciendo coneccion con acceess , para mi es un caos en estos momentos ya que programo en visual.net y por cosas de la vida ahora tengo que hacerla en visual basic 6 .... coneccion con ADO es mucho mas facil pero en visual 6 ya las cosas me marean estoy haciendo un modulo de coneccion y estado buscando mas infomacion ya que mi access le puse usuario y password , necesito saber dos cosas fundamental ya tengo el ODBC conectado a al acces me falta

*una funcion que me conecte a al access
usuario y password

* la sentencia como como leer el access
* y como agregar un valor

y que me pueda explicar de forma facil yo tengo algo pero no se si esta bien y si me va funcionar

MODULO

Option Explicit
Public enlace As New ADODB.Connection

Public Function AbrirConexion(NombreBD As String)
Dim ErrorBD As ADODB.Error
On Error GoTo Error

Set AccessConexion = New ADODB.Connection
With AccessConexion

.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" _
& "Data Source=" & App.Path & "c:\MI_ACCESS.mdb" & NombreBD & ";Jet OLEDB:Database Password= **** "
.Open

End With

Exit Function

Error:
For Each ErrorBD In AccessConexion.Errors
MsgBox ("Error VB:" & ErrorBD.Number & vbCrLf _
& "Error Access:" & ErrorBD.NativeError & vbCrLf _
& "Error SQL:" & ErrorBD.SQLState & vbCrLf _
& "Generado Por:" & ErrorBD.Source & vbCrLf _
& "Descripción:" & ErrorBD.Description)
Next

End Function

-------------------------------------------------------------------------------
FORMULARIO

???????????????? aqui tengo duras y quiero saver si me falta en el modulo algo

gracias
  #8 (permalink)  
Antiguo 23/09/2008, 08:45
 
Fecha de Ingreso: septiembre-2008
Mensajes: 4
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Conectar a una base de datos access desde visual basic

Me parece muy util todo esto pero tengo una pregunta, esto es para abrir la BD pero como le hago para cerrarla, para quitar el archivo .ldb porque me esta causando problemas. Genero un reporte en Crystal y me sale bien solo la primera vez porque cuando lo genero otravez me sale mal la información pero en la BD si esta alamacenada la información.

Alguien podria ayudarme, quizas el reporte este mal o como puedo cerrar la BD desde el reporte se puede?

Gracias.
  #9 (permalink)  
Antiguo 27/10/2008, 08:11
 
Fecha de Ingreso: octubre-2008
Mensajes: 2
Antigüedad: 16 años
Puntos: 0
Respuesta: Conectar a una base de datos access desde visual basic

Hola a todos por favor al q pueda ayudarme tengo una base de datos hecha en Access con contraseña pero no puedo conectarme con ella desde un formulario como puedo hacer la conexion? estoy trabajando en .Net
Alguien podria ayudarme.
Gracias
  #10 (permalink)  
Antiguo 27/10/2008, 08:18
 
Fecha de Ingreso: octubre-2008
Mensajes: 2
Antigüedad: 16 años
Puntos: 0
Conectar a una base de datos access con clave desde visual basic.net

Hola a todos, si alguien puede ayudarme de antemano gracias, tengo una base de datos en Access pero esta esta con contraseña el problema es q tengo una conexion normal utilizando:

Dim conecta As New OleDbConnection
Dim dt As New DataSet
Dim da As New OleDbDataAdapter
Dim cmd As New OleDbCommand

ya sea para insertar datos o para consultar pero me sale un mensaje de error q dice q no puedo accerder a ella por estar cerrada por la contraseña, ahora si le quito la contraseña la conexion de hace correctamente, si alguien me puede ayudar con esa conexion de antemano gracias.
  #11 (permalink)  
Antiguo 18/12/2010, 09:29
 
Fecha de Ingreso: diciembre-2010
Mensajes: 1
Antigüedad: 13 años, 11 meses
Puntos: 0
Respuesta: Conectar a una base de datos access desde visual basic

Imports system.Data
Imports system.Data.Oledb

Public Class agregardatoss

Dim SistemaConnection As OleDbConnection
Dim UsuariosCommand As OleDbCommand
Dim UsuariosAdapter As OleDbDataAdapter
Dim UsuariosTable As DataTable
Dim UsuariosManager As CurrencyManager
Dim UsuariosBuilder As OleDbCommandBuilder
Dim MiEstado As String
Dim RegActual As Integer


' este es una neuva accion en formclosing para ordenar la coneccion

Private Sub agregardatoss_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing


SistemaConnection.Close()
SistemaConnection.Dispose()
UsuariosCommand.Dispose()
UsuariosAdapter.Dispose()
UsuariosTable.Dispose()

End Sub

' aki esta la coneccion con la base de datos

Private Sub agregardatoss_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

SistemaConnection = New OleDbConnection("Provider= Microsoft.ACE.OLEDB.12.0; Data Source =" & AppDomain.CurrentDomain.BaseDirectory & "base de datos aki .accdb")
SistemaConnection.Open()
UsuariosCommand = New OleDbCommand("Select * from Usuarios ORDER BY codigo", SistemaConnection)

UsuariosAdapter = New OleDbDataAdapter()
UsuariosAdapter.SelectCommand = UsuariosCommand
UsuariosTable = New DataTable()
UsuariosAdapter.Fill(UsuariosTable)

UsuariosManager = DirectCast(Me.BindingContext(UsuariosTable), CurrencyManager)

End Sub



ahora mi duda es en agregar un usuario a la base de datos ... no c si es con


NO C si es asi



Try
If contactos.ExisteContacto(NumeroUsuario, Me.txtNombre.Text, Me.txtApellido.Text, Me.txtApodo.Text, Me.txtEmail.Text, Me.txtTelf1.Text, Me.txtTelf2.Text, Me.txtTelf3.Text) = True Then
MessageBox.Show("Este contacto ya existe", "Agenda", MessageBoxButtons.OK, MessageBoxIcon.Error)
Me.txtNombre.Text = ""
Me.txtApellido.Text = ""
Me.txtApodo.Text = ""
Me.txtEmail.Text = ""
Me.txtTelf1.Text = ""
Me.txtTelf2.Text = ""
Me.txtTelf3.Text = ""
Me.txtNombre.Focus()
Exit Sub
Else
If contactos.CrearContactos(NumeroUsuario, Me.txtNombre.Text, Me.txtApellido.Text, Me.txtApodo.Text, Me.txtEmail.Text, Me.txtTelf1.Text, Me.txtTelf2.Text, Me.txtTelf3.Text) = True Then
MessageBox.Show("Se a creado exitosamente el contacto", "Agenda", MessageBoxButtons.OK, MessageBoxIcon.Information)
Me.txtNombre.Text = ""
Me.txtApellido.Text = ""
Me.txtApodo.Text = ""
Me.txtEmail.Text = ""
Me.txtTelf1.Text = ""
Me.txtTelf2.Text = ""
Me.txtTelf3.Text = ""
Me.txtNombre.Focus()
Else
MessageBox.Show("Hubo un problema creando el contacto", "Agenda", MessageBoxButtons.OK, MessageBoxIcon.Error)
Me.txtNombre.Text = ""
Me.txtApellido.Text = ""
Me.txtApodo.Text = ""
Me.txtEmail.Text = ""
Me.txtTelf1.Text = ""
Me.txtTelf2.Text = ""
Me.txtTelf3.Text = ""
Me.txtNombre.Focus()
End If
End If
Catch ex As Exception
MessageBox.Show(ex.Message, "Agenda", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try



o se usa las sentencias como en el mysql add :s no me sale el agregar alguien ayudeme !!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 4 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 23:56.