Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 204
  • Last Modified:

Deployment with MS Access

I have a visual basic application that is using microsoft access as it's database. When I deploy the application, I  do not want the user to be able to edit the database. Is there any way to prevent that from happening?

Also is there anyway to prevent the microsoft access database from being deployed with the application, but allow the application to be run from another machine.

Any help would be appreciated or links to tutorials.

Thanks
0
carter_jl
Asked:
carter_jl
2 Solutions
 
newyuppieCommented:
1) if the user has Microsoft Access, there is not much you can do to prevent editing, unless you password-protect the database file. if you wish to have better security for your databases maybe you should consider moving to something like SQL Server or MySQL.

2) the only way you can connect to the database from another machine which hasnt the database file would be to place the .mdb file on a shared server (a network) and modify your connection string accordingly so that it will find it wherever you put it.
again, according to your needs i would suggest you look into MySQL or MSSQL they are built especially for the kind of things you want to do.

NY
0
 
Jeff CertainCommented:
Actually..... there is a way to keep users out. What you need to do is use the startup properties  (Tools >> Startup) to turn off all the stuff that allows a user to access your database (i.e. hide the menu bars and the database window).

I know, you're thinking... "But holding the shift key down when you start Access avoids the startup properties and the AutoExec macro."

True, true.... but there's a poorly documented property (called AllowBypassKey) you can create (and set) to stop that too. There's a good tutorial on how to create the property here: http://www.mvps.org/access/general/gen0040.htm

Warning: Once you lock out the bypass key, everyone is locked out. So I usually create a hotkeys macro to use some bizarre key combination (like Alt+Shift+F5/F6) to turn the bypass key on and off. That aside, you'll definitely want to make a copy of your database and put it somewhere safe before playing with this.

As newyuppie pointed out, there are serious issues with using Access in a concurrent multi-user environment. You are far better to deploy SQL Server Express (it's free) ... although you don't get the Access UI tools.
0
 
carter_jlAuthor Commented:
Thanks guys.
0

Featured Post

Get your problem seen by more experts

Be seen. Boost your question’s priority for more expert views and faster solutions

Tackle projects and never again get stuck behind a technical roadblock.
Join Now