If you are on a desktop and no for a fact that your DB will always be small
and never be accessed over a networ, then Access is probably OK. Otherwise,
go with MSDE. 1) It's faster b/c its a real client/server db. It doesn't
have to push all of the data back and forth over the network, it can work
with just sets of it 2) It supports Stored Procs and T-SQL - that's huge in
terms of development options and separation of logic 3) It's newew
technology 4) It has much better security, you can do a lot with built in
roles and all sorts of other features 5) You can do a lot more regarding
tuning and optimization. 6) Backup and Recovery in MSDE are lightyears
ahaed of Access - there's no comparison here 7) Native SQLClient Library in
..NET which means much better performance. 9) IF your database grows to
multiple users, Access will kill you, MSDE won't and you can upsize much
eaiser. 10) MSDE supports real SQL, not that #09-03-2003#, InNull that's
not a boolean etc 11) Real stored procs, views and UserDefined Functions 11)
Clustered and Non-Clustered Indexes 12) Many many many functions to monitor
and maintain your db 13)Replication/SqlServer CE etc.
So, if you know it won't grow and you only have one or two users, Access
probably isn't that 'deficient' of a DB. But with all due respect to Access
programmers, Access is old as heck, and hasn't gotten much better over the
years. MSDE is light years ahead of it in any regard I can think of, other
than maybe it's easier to set up.
HTH,
Bill