Error al acceder a la base de datos

Estoy haciendo una pequeña aplicación web utilizando asp + access. Cuando trabajo en local todo funciona perfectamente, pero cuando subo la base de datos al servidor me da siempre el siguiente error:Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][Controlador ODBC Microsoft Access] El motor de base de datos Microsoft Jet no puede abrir el archivo '(desconocido)'. Está abierto en modo exclusivo por otro usuario o bien necesita permiso para ver sus datos.
He probado a hacer la conexión con odbc, oledb y dns y siempre da este error, sin embargo ya digo que en local funciona perfectamente, por lo que descarto un error de código.
En el servidor (win NT) no está instalado el access, pero según tengo entendido no hace falta.
Me inclino más por un problema de permisos pero esto no lo manejo bien. ¿Es posible que sea eso o es por otra cosa? ¿Cómo lo soluciono?

1 respuesta

Respuesta
1
Si bien yo no he utilizado ASP + Access, el tipo de conexión que utilizo en mis programas es a través de ADO con los objetos Connection y sus parámetros indicando el tipo de driver, nombre del servidor, usuario, contraseña, nombre de la mdb y por supuesto comprobando que tanto la carpeta como el archivo mdb en el servidor tienen permisos de e/s.
Con respecto a tu pregunta lo único que puedo hacer es mostrarte una serie de ejemplos que encontrado. (Lo siento) :-(.
'--------------------------------------------------------------
Dim oConn
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("\webestilo\db\datos.mdb"))
Response.Write("Conexión con la base de datos conseguida.
")
oConn.Close
set oConn = nothing
'----------------------------------------------------------------
' Creamos el RecordSet
set rs=Server.CreateObject("adodb.Recordset")
' Especificamos la cadena de conexión
connectme="DSN=equipo"
' Elaboramos la cadena de consulta
sqlstmt = "SELECT * FROM SOLICITUDES INNER JOIN direcciones ON SOLICITUDES.AREA = direcciones.cve_area "
' Conectamos la BDD y ejecutamos el query
rs.open sqlstmt, connectme
'-------------------------------------------------------------------
<HTML>
<HEAD>
<%set conn=Server.CreateObject("ADODB.Connection")
conn.Open "DRIVER={Microsoft Access Driver
(*.mdb)};"&"DBQ="&Server.MapPath("Correo.mdb")
%>
</HEAD>
<BODY text="#000000" background="fondo1.jpg">
<%
set RS=conn.execute("select * from Lista")
set RT=server.CreateObject("ADODB.Recordset")
RT.open RS,conn,2,3
if not rt.eof then
rt.movefirst
%>
<p align="center"><font size="7">Página de listas</font></p>
<p> </p>
<p> </p>
<TABLE border=1 bordercolor=black color=black align="center">
<TR>
<TH> Nombre </TH><TH>Descripcion del creador de la lista</TH>
</TR><%
while not rt.eof
%><TR><TD><%=rt("Nombre")%></TD><TD>
<%=rt("descripcion")%>
</TD></TR><%
rt.movenext
wend
%></TABLE><%
else
%>
<H1><CENTER>
No existen listas
</CENTER> </H1>
<%
end if
rt.close
rs.close
conn.close
%>
</BODY>
</HTML>
'-------------------------------------------------------------
De todas formas en la siguiente dirección de microsoft tienes toda la información disponible sobre este error.
http://support.microsoft.com/default.aspx?scid=kb;EN-US;q306269
Hasta luego, y siento no poder darte más información sobre el tema. Query

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas