Newbie: Light-weight database for a C# client app? MSDE?

E

Ed Sutton

Do all database solutions require a database server to be installed on
the client?

My goal is to reduce installer complications and bloat and an evolution
path to a smart-client version where the database is located on a
centralized Internet server.

The options in "The MSDE Deployment Toolkit (RC) in Action" sound like
they are going to complicate my install and result in more tech support
calls.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnmsde/html/msdedepl.asp

Thanks in advance,

-Ed
 
T

thomas wenning

HI Ed,

Ed Sutton said:
Do all database solutions require a database server to be installed on
the client?

My goal is to reduce installer complications and bloat and an evolution
path to a smart-client version where the database is located on a
centralized Internet server.

The options in "The MSDE Deployment Toolkit (RC) in Action" sound like
they are going to complicate my install and result in more tech support
calls.
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnmsde/html/msdedepl.asp

you can use this http://www.vistadb.net/?ref=codeproject.

Greeting

Thomas Wenning
 
E

Ed Sutton

Thanks Thomas,

Vistadb looks promising and affordable. Do you have any experience
using it?

Does it require a service to be installed on the client? I am concerned
about distribution and installation complications.

Does it look stable enough to develop a product and ship by end of October?

Thanks again,

-Ed
 
M

Michael D. Long

Have you considered using an Access MDB or xBase compatible ISAM? Both are
freely redistributable, have low installation requirements, and handle entry
level requirements. While not in the same league as MSDE, if you don't need
the features then a simple desktop database might be your best option.
 
E

Ed Sutton

Hi Michael,

Thank you for your reply,

I am not familiar with xBase compatible ISAM. I will do some Googling
on it.

The installation requirements to use an Access MDB seemed to indicate I
would need to include the proper MDAC version in my install. The
technical support issues concerning this and the possibility of breaking
a customer's existing apps that used different version of MDAC tend to
worry me.

Do you understand the install requirement to use an Access MDB?

-Ed
 
S

SteveC

Think about the size and job that the data store will actually have to
do. You might find that something extremely lightweight (and also
easy-to-hack if necessary) like the Jet (Access) engine will do the
job well, especially if it's a single user scenario. If you want
extreme speed and multiuser capability but still don't want a
full-blown RDBMS, then a store based on MS Visual FoxPro 8.0 is a
great way to go. If you think you will need a real DB service,
PostgreSQL will get you there.

No matter what, desktop clients must have the latest MDAC, it's really
a requirement of ADO.NET. Jet is "built in" into the newest Windows
releases. The VFP OLEDB driver has a silent-installing MSI.
PostgreSQL is not an easy install, and if you go that route you might
find its easier to go with the "pain" of doing MSDE in the first
place.


VFP OLEDB Driver:
http://www.microsoft.com/downloads/...58-7a94-4ae1-a59e-965869cb3bc9&displaylang=en

PostgreSQL:
http://pgfoundry.org/projects/pginstaller
 
E

Ed Sutton

Thanks for your reply.
I rarely work with desktop databases these days, but there is a wealth of
information on deploying MDAC and the necessary DAO components in the MSKB.
Start with the following article:

http://support.microsoft.com/default.aspx?scid=kb;en-us;213846

It is these kind of articles which are pushing me to try VistaDB. The
install process is simply to copy the database and a DLL to your
application's folder.

http://www.vistadb.net/

I still have my Win2K development machine at home stuck in MSDE hell; I
can not get it to work. I don't know how much time I have spent trying
to completely remove it and reinstall it. I really want to avoid these
kind of problems. Trying to debug a customer's machine with this type
of problem remotely by telephone is not my idea of fun.

-Ed
 
E

Ed Sutton

Thank you very much for your informative reply and good advice.

I had PostgreSQL in the back of my mind but I will cross that one off
since you mentioned the install is not easy.

My application is a relatively small database stored locally on the
client. Access seems most appropriate if I can live with the security
concerns. However, I am leaning to using a new database engine called
VistaDB that is apparently aimed at the Jet/Access market.

http://www.vistadb.net/

The VistaDB installation is about as simple as it gets; copy a DLL and
copy the database file. I expect it has similar security concerns as an
Access mdb; it uses DES or Blowfish.
No matter what, desktop clients must have the latest MDAC, it's really
a requirement of ADO.NET.

VistaDb has an ADO.NET data provider. I think I can avoid MDAC install
headaches and tech support issues by using VistaDB.

Thanks again for your reply and links,

-Ed
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top