Cannot open Access 2003 Database (1 Viewer)

Hurdles

New member
Local time
Today, 22:59
Joined
May 14, 2011
Messages
6
I have a small network. Server (Windows SBS 2003 SP"), Workstation and Laptop (both XP SP3). I have Access 2003 on Server and Laptop and Access 2000 on Workstation.

I run a replicated database on all three machines, with Laptop holding the design master and Laptop and Workstation both synchronizing with Server. I use Access to help with design, but the application to use this database is written in VB6. It has operated happily for a couple of years.

BUT yesterday I could not open the database on either Server or Laptop, although the VB6 application appears to be working happily. I can open the database on Workstation using Access 2000. I have tried using JETCOMP, but the new databases it creates show the same problem - they do not open and there are no messages; except that, just once, I got: "Cannot open database 'path\filename'. "It may not be a database that your application recognises or the file may be corrupt".

I am loathe to attempt to rebuild the database suite from the surviving Access 2000 copy if there is a better way. Can anyone help?
 
Last edited:

boblarson

Smeghead
Local time
Today, 14:59
Joined
Jan 12, 2001
Messages
32,059
I don't know how you ever had it working to begin with. Access 2000 cannot be the frontend to an Access 2003 backend. The backend needs to be either the same version, or earlier, than the frontend.
 

Hurdles

New member
Local time
Today, 22:59
Joined
May 14, 2011
Messages
6
Bob

Thank you for commenting. In fact, the replicated databases on each of the three machines are all back-end. The front-end is written in VB6, because it also writes data to Outlook and Excel for certain tasks. This allows quick use of the database on one machine without having to bring up the whole network. DB synch is initiated by the VB6 application.

Hurdles
 

boblarson

Smeghead
Local time
Today, 14:59
Joined
Jan 12, 2001
Messages
32,059
Bob

Thank you for commenting. In fact, the replicated databases on each of the three machines are all back-end. The front-end is written in VB6, because it also writes data to Outlook and Excel for certain tasks. This allows quick use of the database on one machine without having to bring up the whole network. DB synch is initiated by the VB6 application.

Hurdles

The backend MUST be in Access 2000 format in order for Access 2000 to open it. I would try importing everything into a new, blank database shell to see if it all imports and if that might fix the problem. It does sound like corruption might have occurred which means that it is at risk of loss.

I'm going to PM someone who might be able to help better. He's got a lot of replication knowledge and experience.
 

dfenton

AWF VIP
Local time
Today, 17:59
Joined
May 22, 2007
Messages
469
When you open one of the replicas in Access 2000, can you sync directly with any of the other two replicas?

What is your reason for using replication? Are you sure it serves a proper purpose here? That is, does your application need to edit data in two different locations and synch the changes? If not, then you should just get rid of replication.

If so, the answer to my first question will tell us what to look at next.
 

Hurdles

New member
Local time
Today, 22:59
Joined
May 14, 2011
Messages
6
David, Thank you for replying.

Q1 - I can no longer open any copy of this database in either Access 2000 or 2003. The evidence is that they are synchronizing properly when addressed by the VB6 application.

Q2 - I replicate to the laptop so that I can take, and use, an up-to-date copy of the database when away from home. Data on the server or workstation can be edited when the laptop is away. Replication between server and workstation is not strictly necessary, but allows me to use the database on the workstation without booting up the server - nice but not necessary - but it has allowed me to snatch an uncorrupted database before the workstation's database caught the same problem.

Hurdles
 

dfenton

AWF VIP
Local time
Today, 17:59
Joined
May 22, 2007
Messages
469
Q1 - I can no longer open any copy of this database in either Access 2000 or 2003. The evidence is that they are synchronizing properly when addressed by the VB6 application.

I really don't understand the meaning of the second sentence. Are you saying that synchs via the VB6 application still work, but you can't open the database in interactive Access?

If so, that's a very odd situation. I'd want to know the code you're using to do the synchronization (i.e., what library are you using, JRO or DAO?).
 

Hurdles

New member
Local time
Today, 22:59
Joined
May 14, 2011
Messages
6
Using interactive VB6, or the compiled VB6 application I can (a) write and read to the database on Laptop and (b) synch with the replica database on Server. I can then read newly changed data on Server using the compiled application. I cannot open either copy of the database using interactive Access 2003,although Access opens other, unrelated databases successfully.

I am using JRO, not DAO. Sample code:
repMaster.Synchronize strSlave, jrSyncTypeImpExp, jrSyncModeDirect

Hurdles
 

dfenton

AWF VIP
Local time
Today, 17:59
Joined
May 22, 2007
Messages
469
What happens if you try to synch via DAO in VB6 code?

What happens if you attempt the same thing from Access? That is, create an empty Access database, open the replica with DBEngine.OpenDatabase and try to synch it with another replica.

What is the exact error number and error message you get when you try to open the replica in interactive Access?

Last of all, does the problematic replica have anything in it other than data tables?
 

Hurdles

New member
Local time
Today, 22:59
Joined
May 14, 2011
Messages
6
Trying to synch via DAO in VB6 code creates no error. There is a pause, presumably while the databases synchronize, then the test sub exits normally.

Trying from Access as you outline behaves the same way.

There is no error message when I try to open the replica. I get the hourglass for a few seconds, then the empty Access window - no DB container or anything.

The problematic replica contains a few select queries and one sub for listing field names in a table, none of which are used for anything except development; they are never called by the VB6 code and they change no data.

The database remains unopenable with interactive Access.
 

dfenton

AWF VIP
Local time
Today, 17:59
Joined
May 22, 2007
Messages
469
What is your evidence that it's unopenable? You say "I get the hourglass for a few seconds, then the empty Access window - no DB container or anything." but that could just mean that the database window is not visible. If you go to the VBE and type "CurrentDB.Name" in the Immediate Window, does it return the name of a database? If there's no database open, it will raise error 91.

But I'm still not sure I understand what the problem is. It sounds like your app is working, but you can't open it in Access. Does this matter, given that your app is a VB app?
 

Hurdles

New member
Local time
Today, 22:59
Joined
May 14, 2011
Messages
6
Thanks for that one - you are quite right, I get Error 91.

Yes, the app is working but I cannot open the db in Access. It matters (a) because as something is evidently wrong it may well get worse and (b) because Access is the easiest way to maintain the data.

However, I have had to rebuild the database with some judicious use of old backups, other scraps of data and paper records; so I am now up and running again. I would like to know what the problem was so that I can avoid recurrence, but I don't think it would be a sensible use of either your or my time. It's time to close this thread down.

I am most grateful for the time and support you have given me - I really appreciate it.
 

Users who are viewing this thread

Top Bottom