Autor Tema: Problemas con Base de Datos ACCESS 2007  (Leído 6050 veces)

0 Usuarios y 1 Visitante están viendo este tema.

wolf_kof

  • Visitante
Problemas con Base de Datos ACCESS 2007
« en: Diciembre 10, 2009, 10:48:15 pm »
Bueno primero lo primero, Me da un gusto pertenecer a un lugar tan distinguido como este, espero que pueda ayudar tambien y que me ayuden. Me llamo Abner Velasco mi email es wolf_kof@hotmail.com (lo de wolf_kof es por que tengo el correo desde hace demasiados años y no quiero cambiarlo)

MI PREGUNTA ES:

estoy utilizando ADODC para conectar mis bases de datos y la verdad es que me estan quedando los programas excelentes. EL PROBLEMA ES QUE LO NECESITO EN RED.

como le ago ya que la propiedad adodc1.connectionstring es estatica

y quiero cambiarla cada vez que se recarge un formulario.

GRAXIAS SERIA DE MUCHA AYUDA ;) ;) ;)

ssccaann43

  • Terabyte
  • *****
  • Mensajes: 970
  • Reputación: +97/-58
    • Ver Perfil
    • Sistemas Nuñez, Consultores y Soporte, C.A.
Re:Problemas con Base de Datos ACCESS 2007
« Respuesta #1 en: Diciembre 11, 2009, 10:46:17 am »
Bien, puedes hacer lo siguiente...

En un archivo de texto plano o INI, como mejor te parezca, puedes colocar el connectionstring y al cargar el aplicativo, pues lo lees y lo asignas a los adodc que tengas en tú formulario, ya que por lo visto puede variar mucho.

Eso es lo que antiguamente se hacía antes de usar SQL. Actualmente aunque uses SQL, el archivo sigue siendo imprescindible, ya que el nombre del servidor o la pc que tienes como server puede cambiar.

Espero puedas resolverlo. Saludos
Miguel Núñez.

wolf_kof

  • Visitante
Re:Problemas con Base de Datos ACCESS 2007
« Respuesta #2 en: Diciembre 11, 2009, 09:25:11 pm »
Graxias por el dato pero me gustaria tambien (si no es mucha la molestia) de que me pusieras un codigo de ejemplo:

YO YA LO HABIA TRATADO DE ESA FORMA PERO...............

CUANDO EN EL FORMULARIO

FORM1_LOAD

CARGO UN ARCHIVO ME DICE QUE NO PUEDO

BUENO ME GUSTARIA DE VERDAD UN EJEMPLO

LO ESTOY PIDIENDO A GRITOS  :-\ :-\ :-\

 :) :) :) :)

seba123neo

  • Terabyte
  • *****
  • Mensajes: 763
  • Reputación: +88/-5
    • Ver Perfil
Re:Problemas con Base de Datos ACCESS 2007
« Respuesta #3 en: Diciembre 12, 2009, 02:03:40 am »
Hola, si como te dijo ssccaann43, usa un INI para guardar ahi la cadena de conexion, entonces la podes editar cuando quieras, porque suponete que las dudas te cambia algun dia el servidor de la base de datos entonces editas el archivo y listo te sigue funcionando.simplemente pones la cadena de conexion en la primer linea del archivo, y cuando cargas tu programa se la asignas a el ADODC.las validaciones que deberias hacer serian:

1 - fijarte si existe el archivo .ini
2 - si existe lees la primer linea y la guardas en una variable y se la asignas al ADODC.para leerlo usas el Open de visual basic.
3 - si no existe mostras un mensaje que se te ocurra y finalizas el programa.

tambien seria bueno que no inicies el programa con el formulario, sino que se inicie con el Sub_Main del modulo principal,por lo menos asi lo hago antes de que se carge algo.

saludos.

wolf_kof

  • Visitante
Re:Problemas con Base de Datos ACCESS 2007
« Respuesta #4 en: Diciembre 12, 2009, 01:28:10 pm »
Es una muy buena solución pero veran yo soy un programador de objetos jejejeje que no esta muy acostumbrado a usar codigo avansado
por eso mis conexiones ado las ago por medio del adodc y no por codigo

y no puedu utilizar muchos fragmentos de codigo avanzado que deveria para los programas que hago y me averguenza pero lo importante es programar sustancioso y bien ya sea con codigo y con graficos y quisiera pedirles ayuda con esto

NO PUEDO ABRIR UN DOCUMENTO INI Y NO SE EL PROCEDIMIENTO QUISIERA UN EJEMPLO POR FAVOR

zxs23

  • Megabyte
  • ***
  • Mensajes: 146
  • Reputación: +5/-2
    • Ver Perfil
Re:Problemas con Base de Datos ACCESS 2007
« Respuesta #5 en: Diciembre 13, 2009, 04:48:45 pm »
Con este codigo puedes leer un archivo de texto y recuperas el contenido en textbox o donde quieras
Código: [Seleccionar]
Dim vArchivo As Integer
Dim vCadenaConexion As String
    vArchivo = FreeFile
    Open App.Path & "\ruta.txt" For Input As vArchivo
    Line Input #vArchivo, vCadenaConexion
    Close #vArchivo
    Text1 = vCadenaConexion

wolf_kof

  • Visitante
Re:Problemas con Base de Datos ACCESS 2007
« Respuesta #6 en: Diciembre 13, 2009, 07:26:04 pm »
MIREN SI ESO YA LO PUEDO HACER GRAXIAS, YA PUEDO LEER UN DOC DE TXT Y OBTENER EN UNA VARIABLE LA CADENA DE CONEXIÓN

PERO CUANDO CARGO EL FORMULARIO CON EL ADODC1.CONECTIONSTRING ME DICE QUE NO ENCUENTRA NADA

POR FAVOR EL PROBLEMA ES QUE NO CAMBIA LA CADENA DE CONECCIÓN EN ADODC1.CONECTIONSTRING

QUIERO AYUDA
 ;D ;D ;D ;D ;D ;D ;D

ssccaann43

  • Terabyte
  • *****
  • Mensajes: 970
  • Reputación: +97/-58
    • Ver Perfil
    • Sistemas Nuñez, Consultores y Soporte, C.A.
Re:Problemas con Base de Datos ACCESS 2007
« Respuesta #7 en: Diciembre 17, 2009, 10:07:43 am »
Veamos... Un ejemplo facil y sencillo... A ver si asi logras comprenderlo... De esta manera lo uso en mi project...

Codigo en un módulo bas. Y asignas que el proyecto se ejecute desde Sub Main.

Código: [Seleccionar]

Option Explicit

' variables para la conexión y el recordset
''''''''''''''''''''''''''''''''''''''''''''
Public cnn As New ADODB.Connection
Public rs As New ADODB.Recordset
Public xRuta As String

Private Sub open_Ruta()
On Error GoTo ruta
Dim sRuta As String
Open App.Path & "\" & "ruta.TXT" For Input As #1
Do While Not EOF(1)
Input #1, sRuta
xRuta = sRuta
Loop
Close #1

Exit Sub
On Error GoTo 0
ruta:
MsgBox "Error no se encontro el archivo Ruta.txt" & vbCrLf & "La aplicación se cerrará por medidas de Seguridad", vbCritical, "InvenSoft"
End
End Sub

Sub Main()
    On Error Resume Next
    open_Ruta 'Abro el archivo
    IniciarConexion 'Le asigno el string de conex al Adodb
    FrmPrincipal.Show 'Ejecuto mi form principal
End Sub

' abre
Public Sub IniciarConexion()

    With cnn
        .CursorLocation = adUseClient
        .Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
              App.Path & "\" & xRuta & ";Persist Security Info=False"
    End With

End Sub

' cierra
Sub Desconectar()
    On Local Error Resume Next
    rs.Close
    Set rs = Nothing
    cnn.Close
    Set cnn = Nothing
End Sub

Miguel Núñez.

wolf_kof

  • Visitante
Re:Problemas con Base de Datos ACCESS 2007
« Respuesta #8 en: Diciembre 17, 2009, 10:46:51 am »
SI ES CIERTO ASI SE PUEDE HACER SI TIENES UNA CONEXION ADO POR MEDIO DE CODIGO VISUAL, PERO YO UTILIZO UN CONTROL GRAFICO EL ADODC1


LA PROPIEDAD DE ESE CONTROL NO ME DEJA CAMBIAR LA RUTA DE BASES DE LA BASE DE DATOS. ME DICE QUE NO SE PUEDE. JEJEJEJEJEJEJE PERO ERES UN GENIO Y MUXAS GRAXIAS POR TU RESPUESTA QUISIEIRA SI FUERAS TAN AMABLE DE PODER RESOLVER ESTE PROBLEMA TAMBIEN.  ;)

ssccaann43

  • Terabyte
  • *****
  • Mensajes: 970
  • Reputación: +97/-58
    • Ver Perfil
    • Sistemas Nuñez, Consultores y Soporte, C.A.
Re:Problemas con Base de Datos ACCESS 2007
« Respuesta #9 en: Diciembre 17, 2009, 11:37:12 am »
Bien lo que debes hacer con ese control es lo siguiente...

Código: [Seleccionar]
Adodc1.ConnectionString=Variable
Adodc1.RecordSource="Select * From Tabla Where Campo=condicion"
Adodc1.Refresh

Asignas el ConnectionString
Luego ejecutas el Query
Y por ultimo refrescas el Adodc. Con eso basta.
Miguel Núñez.

wolf_kof

  • Visitante
Re:Problemas con Base de Datos ACCESS 2007
« Respuesta #10 en: Diciembre 17, 2009, 09:37:11 pm »
ERES UN GENIO COMPADRE ME SIRVIO DE REAHUEVO  :D :D :D :D

ssccaann43

  • Terabyte
  • *****
  • Mensajes: 970
  • Reputación: +97/-58
    • Ver Perfil
    • Sistemas Nuñez, Consultores y Soporte, C.A.
Re:Problemas con Base de Datos ACCESS 2007
« Respuesta #11 en: Diciembre 18, 2009, 11:51:33 am »
ERES UN GENIO COMPADRE ME SIRVIO DE REAHUEVO  :D :D :D :D
Jajajaja... Ok, de nada!
Miguel Núñez.