Reputation: 16899
I've got an MS-Access database stored in a folder (yes, I have 'Modify' permissions set for the folder) on a Vista machine.
From my .NET application (VB2008) I can query the database just fine, and add records to the tables. When I re-run the application the added records are there.
However if I start Access (2000) and open the database, the table that I just changed appears to have no new records added to it.
Is there some incompatibility with Vista and Access 2000?
EDIT: When I open the same database in Access 2003 on an XP machine, the new records show up just fine.
Upvotes: 2
Views: 420
Reputation: 273464
It does sound very much like you are experiencing the Vista virtualization feature. Vista won't let you write to the C:\Program Files
folder (and a few others) and instead of throwing an error at you it writes to a shadow copy under your Users folder.
To check, open the properties of the .EXE and check XP mode + Run as Admin. Also see if you can find the shadow in C:\Users\User_name\AppData\Local\VirtualStore folder
To fix, try to locate your data elsewhere.
Upvotes: 7
Reputation: 34909
I know you seem pretty sure that you are hitting the same DB from your response to gbn's answer, but to make absolutely sure, how about this test?
Use Access to insert new records in Access and see if they show up in the Application.
Another possibility is that it is going into the DB, but you app is reading/writing from a different table than you think it is. That would explain the inconsistency you are seeing too.
Upvotes: 0
Reputation: 53603
In your Access table, is it possible you're using a data type that's not compatible with Access 2000?
[I know this is very unlikely, but as they (more or less) say 'Desperate questions call for desperate answers']
Upvotes: 0
Reputation: 33474
See if the record count increases?
If so, the records might be getting in there & due to indexing, it might not appear towards the end.
Upvotes: 0