How to open MS-Access 2.0 database using VB

I have 1 access 2.0 database file which will used as main database of my simple program. I use VB 5.0.
I want to keep it's version, n dont want to convert the database to next versions.
When i try to open the xx.mdb file using office 97 and office2000, it shows error :

1. Record(s) cannot be read; no read permission on 'MSysObjects'.

then

2. Record(s) cannot be read; no read permission on 'MSysACEs'.

then
3. You can't make changes to the database objects in then database 'xxx.mdb'
   The database is created in an earlier version of Microsoft Access. Etc ......


I had tried to open it with excuslive open, and it didn't work.

When i use VB and ADO 2.5, is shows error (debug) :

Record(s) cannot be read; no read permission on 'YYYY'.

Note : YYYY is a table in that db.


Any pro can help me ?

BetaTestAsked:
Who is Participating?
 
SpideyModConnect With a Mentor Commented:
per recommendation

SpideyMod
Community Support Moderator @Experts Exchange
0
 
harsh008_kCommented:
hi beta,

There are two options
1)convert the database to latest version
2)Use odbc driver
   'write this code in vb
   dim cn as adodb.connection
   set cn=new adodb.connection
   cn.Open "dsn=dsnname;uid=;pwd=;"
   a)incase u want to make change to the database then    

    'u    have to change it to current version and then  
    ' make changes
0
 
BetaTestAuthor Commented:
Thx harsh008_k,

I found no difficulty to convert it into newer version.
I dont want to change it and want to keep it's version.

What makes me confused is :
i can open that db, although it shows warnings. BUT, when i checked it's password, but doesn't have it. Perhaps this version doesn't support password protected feature.
But when i open it using visual basic, it shows error :
no enough permission. Weird huh ??? :)
 
So any expert can help me ?


0
Cloud Class® Course: C++ 11 Fundamentals

This course will introduce you to C++ 11 and teach you about syntax fundamentals.

 
harsh008_kCommented:
use odbc,dont use the password
0
 
philipstewartCommented:
Try using the reference -- DAO 2.5/3.5 Compatability Library

If you only need to manipulate the db and never open it in MS Access this should work.

'Declarations
Global gstrInputDatabaseName As String
Global InputDataBase As Database

'Put in your form load event or wherever
gstrInputDatabaseName = "C:\YOUR_DB.mdb"

'Change the status of the input database from read-
'only, hidden, etc. to normal

SetAttr gstrInputDatabaseName, vbNormal
Set InputDataBase = Workspaces(0).OpenDatabase(gstrInputDatabaseName)

'Then perform your db calls


0
 
DanRollinsCommented:
Hi BetaTest,
It appears that you have forgotten this question. I will ask Community Support to close it unless you finalize it within 7 days. I will ask a Community Support Moderator to:

    Save as PAQ -- No Refund.

BetaTest, Please DO NOT accept this comment as an answer.
EXPERTS: Post a comment if you are certain that an expert deserves credit.  Explain why.
==========
DanRollins -- EE database cleanup volunteer
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.