debug_mode=ON

Buscar en

 
 

Cadena de conexion apuntando una bd ms access

TeMiL
TeMiL escribió
hace 9 meses

hola a todos ^^

bueno mi consulta es la siguiente. estoy haciendo una pequeña aplicacion asp con bd en access. la cadena de conexion localmente me funciona:

return "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=/Users/.../Documents/Visual Studio 2008/WebSites/WebApp1/db/.mdb;User Id=;Password=;";

pero lo q necesito es q la bd apunte a la raiz de mi programa (ejm: WebApp1) ya q ella se encuentra ahi. no quiero dejar fija la ruta C:/... ya q luego al mover mi aplicacion traeria problemas.

por favor una ayuda

 

11 respuestas en "Cadena de conexion apuntando una bd ms access"

alexherrera22
alexherrera22 escribió
hace 9 meses

#1   

muy facil, simplemente no le pongas la ruta completa en la cadena de conexion, pon el puro nombre del archivo, automaticamente lo buscará en la misma ruta donde se encuentra tu ejecutable:

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=miBD.mdb;User Id=;Password=;

 

TeMiL
TeMiL escribió
hace 9 meses

#2   

y si esta en una carpeta pondria

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=/carpeta/miBD.mdb;User Id=;Password=;

? xq en un primer momento no me funciono

 

TeMiL
TeMiL escribió
hace 9 meses

#3   

al correr mi aplicacion sale:

'C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\db\miDV.mdb' no es una ruta de acceso válida. Asegúrese de que la ruta está escrita correctamente y que está conectado al servidor donde se encuentra el archivo.

 

alexherrera22
alexherrera22 escribió
hace 9 meses

#4   

si lo estas haciendo en código, puedes utilizar la propiedad Application.ExecutablePath con el inconveniente de que tendrías que quitarle a mano el nombre de tu ejecutable y sustituirlo por carpeta/miBD.mdb

Una de las prácticas recomendadas para este tipo de situaciones es incluir la cadena de conexion en tu app.config, así es posible modificarla en la máquina de tu usuario sin tocar para nada el código. Esto es más util en Vista que por las restricciones que tiene no puedes modificar así nomas porque si la base de datos de access si está en la carpeta de Archivos de Programa.

 

TeMiL
TeMiL escribió
hace 9 meses

#5   

te recuerdo q es una web app asp.net c#

 

alexherrera22
alexherrera22 escribió
hace 9 meses

#6   

cierto, perdon por la confusion. De cualquier manera, puedes poner la cadena de conexion en el web.config:

    <connectionStrings>
      <add name="miConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\inetpub\wwwroot\miwebapp\carpeta\miDB.mdb"/>
    </connectionStrings>

y mandarla llamar desde tu código mediante:

ConnectionString = System.Web.Configuration.WebConfigurationManager.ConnectionStrings("miConnectionString").ConnectionString;

Con esto puedes modificar el connection string de acuerdo a la implementación que estés haciendo, y es más sencillo ya que en la configuracion de ASP en el IIS puedes editar la cadena de conexion sin meterte en lios del XML

 

Shirase
Shirase escribió
hace 9 meses

#7   

Prueba a meter el archivo en la carpeta App_Data de aspnet y hacer referencia a ella en el webconfig con Data Source=|DataDirectory|\miBD.mdb

 

TeMiL
TeMiL escribió
hace 9 meses

#8   

lo q sucede es q testeando en un free hosting, me pide q coloq la base de datos en una carpeta db q se encuentra en la raiz y a su lado estoy copiando toda la aplicacion web

 

Shirase
Shirase escribió
hace 9 meses

#9   

He estado un rato pensando, pero no se me ocurre cómo. Cuando mi bd estaba en un archivo la he metido siempre en App_Data porque el resto de soluciones nunca me funcionaron

 

jdjapon
jdjapon escribió
hace 8 meses

#10   

quisiera que me ayuden con algo
estoy haciendo una aplicacion en la cual quiero acer la coneccion a una base de datos en hecha en acces, pero la coneccion la debo hacer con el archivo app.config y de alli llamarla desde el formulario a este archivo.

 
 

« Anterior 1 2 Siguiente »

 
 

© Copyright 2008-2009 debug_mode=ON | Aviso legal | Contacto | FAQ | ¿Quiénes somos? |