Microsoft OLE DB Provider for ODBC Drivers error "80004005"

Microsoft OLE DB Provider for ODBC Drivers error "80004005"

am 13.07.2005 20:31:12 von johnzur

A quick question. I have two access dbf files in the same directory
structure. I can access them via ASP separately but when I try to
access a table in one which has been linked using the link manager
I get kicked out. If I just go into access I can access the linked
table.

For instance:

info.dbf has a link table (tbluser) to users.dbf

I can access both info.dbf and users.dbf over the net but when I
try to get to the linked table (tblusers) in info.dbf I
get the above error.

Thanks for any help.

Re: Microsoft OLE DB Provider for ODBC Drivers error "80004005"

am 13.07.2005 20:51:00 von unknown

What's the entire error?

Ray at work

wrote in message
news:1121279472.482600.221020@g44g2000cwa.googlegroups.com.. .
> A quick question. I have two access dbf files in the same directory
> structure. I can access them via ASP separately but when I try to
> access a table in one which has been linked using the link manager
> I get kicked out. If I just go into access I can access the linked
> table.
>
> For instance:
>
> info.dbf has a link table (tbluser) to users.dbf
>
> I can access both info.dbf and users.dbf over the net but when I
> try to get to the linked table (tblusers) in info.dbf I
> get the above error.
>
> Thanks for any help.
>

Re: Microsoft OLE DB Provider for ODBC Drivers error "80004005"

am 14.07.2005 05:08:53 von johnzur

Here's the entire error:

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][ODBC Microsoft Access Driver] The Microsoft Jet database
engine cannot open the file '\\15.40.4.241\NETDRIVE\incoming.mdb'. It
is already opened exclusively by another user, or you need permission
to view its data.

I put in the IP address in the link because I access the database from
other machines and if I use a drive letter I get an error when
accessing
via a networked drive. The links work fine when using a network
drive.

Re: Microsoft OLE DB Provider for ODBC Drivers error "80004005"

am 14.07.2005 05:26:13 von unknown

This code is running under the context of your anonymous IIS user, probably,
which is most likely IUSR_machinename. This is an account local to that
machine. A server sitting next to it, in the same domain or not, will not
know who this user is that is trying to access this NETDRIVE share, so that
remote server will deny acccess to it. I'm guessing this is what the
problem is. See here: http://www.aspfaq.com/show.asp?id=2168

Ray at home

wrote in message
news:1121310533.494928.57540@g43g2000cwa.googlegroups.com...
> Here's the entire error:
>
> Microsoft OLE DB Provider for ODBC Drivers error '80004005'
>
> [Microsoft][ODBC Microsoft Access Driver] The Microsoft Jet database
> engine cannot open the file '\\15.40.4.241\NETDRIVE\incoming.mdb'. It
> is already opened exclusively by another user, or you need permission
> to view its data.
>
> I put in the IP address in the link because I access the database from
> other machines and if I use a drive letter I get an error when
> accessing
> via a networked drive. The links work fine when using a network
> drive.
>

Re: Microsoft OLE DB Provider for ODBC Drivers error "80004005"

am 14.07.2005 12:20:01 von reb01501

johnzur@hotmail.com wrote:
> Here's the entire error:
>
> Microsoft OLE DB Provider for ODBC Drivers error '80004005'
>
> [Microsoft][ODBC Microsoft Access Driver] The Microsoft Jet database
> engine cannot open the file '\\15.40.4.241\NETDRIVE\incoming.mdb'. It
> is already opened exclusively by another user, or you need permission
> to view its data.
>
> I put in the IP address in the link because I access the database from
> other machines and if I use a drive letter I get an error when
> accessing
> via a networked drive. The links work fine when using a network
> drive.

Just to add to what Ray said (which is completely correct): all users of an
access databse must have read/write permissions for the folder containing
the database file, not just the file. This is because they need to be able
to create, modify and delete the database lock control file (dbname.ldb) in
order to allow multiuser activity. Without the lock file, only one user will
be able to connect to the database at a time.


Bob Barrows

--
Microsoft MVP - ASP/ASP.NET
Please reply to the newsgroup. This email account is my spam trap so I
don't check it very often. If you must reply off-line, then remove the
"NO SPAM"

Re: Microsoft OLE DB Provider for ODBC Drivers error "80004005"

am 14.07.2005 22:35:39 von johnzur

I am having no problem getting both the database with the linked table
USERS
and the database that actually holds the unlinked USERS table
on a network drive so I don't see permissions as a problem since the
web can access the files fine as long as it isn't trying to access
the linked tables in other database.

For instance:

If I change the link table USERS in the SALES database to a non-link
table the asp pages over the web work fine.

I can access the original USERS table in the ALLUSERS database
find over the web.

I run into problems with I try to access the linked USERS table
through the SALES database over the web. This link works fine
from a networked drive.

Everything works fine except when accessing the linked tables from
the database employing the link when using the web.

Thanks.

John Z.




Bob Barrows [MVP] wrote:
> johnzur@hotmail.com wrote:
> > Here's the entire error:
> >
> > Microsoft OLE DB Provider for ODBC Drivers error '80004005'
> >
> > [Microsoft][ODBC Microsoft Access Driver] The Microsoft Jet database
> > engine cannot open the file '\\15.40.4.241\NETDRIVE\incoming.mdb'. It
> > is already opened exclusively by another user, or you need permission
> > to view its data.
> >
> > I put in the IP address in the link because I access the database from
> > other machines and if I use a drive letter I get an error when
> > accessing
> > via a networked drive. The links work fine when using a network
> > drive.
>
> Just to add to what Ray said (which is completely correct): all users of an
> access databse must have read/write permissions for the folder containing
> the database file, not just the file. This is because they need to be able
> to create, modify and delete the database lock control file (dbname.ldb) in
> order to allow multiuser activity. Without the lock file, only one user will
> be able to connect to the database at a time.
>
>
> Bob Barrows
>
> --
> Microsoft MVP - ASP/ASP.NET
> Please reply to the newsgroup. This email account is my spam trap so I
> don't check it very often. If you must reply off-line, then remove the
> "NO SPAM"

Re: Microsoft OLE DB Provider for ODBC Drivers error "80004005"

am 15.07.2005 00:43:49 von reb01501

johnzur@hotmail.com wrote:
> I am having no problem getting both the database with the linked table
> USERS
> and the database that actually holds the unlinked USERS table
> on a network drive so I don't see permissions as a problem since the
> web can access the files fine as long as it isn't trying to access
> the linked tables in other database.
>

Oh! Linked tables! I've never gotten them to work. This article may contain
a reason:

http://www.trigeminal.com/usenet/usenet025.asp?1033

However, it's a very old article whose information may be out-of-date.

The only suggestion I can make is to use the Jet OLE DB Provider instead of
ODBC. See www.carlprothman.com for examples of OLE DB connection strings for
Jet.

Bob Barrows

--
Microsoft MVP - ASP/ASP.NET
Please reply to the newsgroup. This email account is my spam trap so I
don't check it very often. If you must reply off-line, then remove the
"NO SPAM"

RE: Microsoft OLE DB Provider for ODBC Drivers error "80004005"

am 15.07.2005 15:47:04 von NoSpamMgbworld

A note before starting: I mention DBase files in this post. This is due to
the files being DBF format, which was originally created by DBase. The actual
files could have been created by Paradox, FoxPro, Advantage or a variety of
other programs that have adopted the basic format (generally with
extensions). As I am not sure what program actually created these files (not
evident in the post, AFAICS), I am calling them DBase files.


Running through the thread, I can see a couple of issues.

1. I would move to OLEDB instead of ODBC. If for no other reason, you will
speed up the application by removing one layer in ADO.

2. Is there anyway to directly access the DBase files? Linked tables also
add another layer. In the case of linked tables, you are setting up a layer
that may be a cause of failure.

3. If you not able to get rid of the linked tables, you can aim at creating
an Access query that pulls the data you desire and firing it off like a
stored procedure. I do not guarantee this will solve the problem, but it is
worth a try.

4. Another possible means of attack is putting the data access logic into a
component that uses COM+ and assigning a "super user" type account to the
application it runs in. NOTE: By application, I mean COM+ applications, which
used to be called packages under MTS. This will likely get you around
permission issues without having to reduce security on the machine.

Finally, a Q&A:

What version of Windows is the app on? If Windows 2003, the security model
is changed and may be an issue, esp. if the data directory(s) are outside of
the web hierarchy. This is a common issue.

What are the perms both on the Access directory and the DBase files? Unless
you have a layer that assumes an identity (COM+ comes to mind), the identity
of the web server carries all the way down to the files. This means you might
have access to certain raw files, but not others, causing a blow up. The user
account running to access the data (IUSR for anon access, or Network Service
in Windows 2003) must have access up and down the chain. If not ... BOOM!



--
Gregory A. Beamer
MVP; MCP: +I, SE, SD, DBA

***************************
Think Outside the Box!
***************************


"johnzur@hotmail.com" wrote:

> A quick question. I have two access dbf files in the same directory
> structure. I can access them via ASP separately but when I try to
> access a table in one which has been linked using the link manager
> I get kicked out. If I just go into access I can access the linked
> table.
>
> For instance:
>
> info.dbf has a link table (tbluser) to users.dbf
>
> I can access both info.dbf and users.dbf over the net but when I
> try to get to the linked table (tblusers) in info.dbf I
> get the above error.
>
> Thanks for any help.
>
>