views:

323

answers:

7

I need to code a small record-keeping application for a small business in Windows and I'm considering programming it from scratch using .NET. However, I think that it might be overkill for such a common kind of program. It is mostly a CRUD application with simple arithmetic.

I'm tempted to go the MS Access way, but I find it a bit limiting and "unprofessional". Is there anything out there more flexible than Access (commercial or open source) but without the overkill of programming every single SQL query? I found RBase and Kexi. Is there anything else?

My requirements are:

  • Smallish-database (less than one gig)
  • 6 simultaneous users on a local network

There is no data to migrate, so any db will do.

What tool would you use?

Browsing at other Stack Overflow answers it seems like

A: 

Personally, I love the small OODBMS db4Objects, very nice licencing, unbelievably easy to use so much so that it almost seems to good to be true.

Tim Jarvis
+1  A: 

Sounds like a perfect job for Delphi.

It comes with several tools to create small databases, but of course you can also connect to a "normal" dbms.

Wouter van Nifterick
A: 

Ruby on Rails is an obvious choice, if you want to make this application web based.

If I were in your position, though, I would give in to the Access temptation. Any similar RAD tool will have its limitations (even if they are less famous than those in Access). It is the trade off of such tools.

Yishai
A: 

I don't normally recommend Access, but you truly if have minimal interface requirements (some arithmetic), are familiar with it, and already have it installed, I'd use it.

Otherwise, I'd go with SQL Server Express with a .NET front end, because that's what I'm used to and most productive with. Although, if this could be put on the intranet, give ASP.NET or even WPF a look. This is the kind of thing they're really good for, once you know them.

overslacked
+1  A: 

I'd say PowerBuilder with Sybase Anywhere as DBMS. Assuming it's NOT a web app.

Lluis Martinez
With a decent framework (like the now-open-source PowerBuilder Foundation Classes, or PFC), you can build a CRUD window with single table update in minutes, and with multi-table update in less than half an hour. (Add your own time if you want to tinker with the UI.)
Terry
Forgot something. With the DataWindow, you get logical record locking with no extra effort. With multiple users, you need *something* to handle conflicts. The built-in logical record locking is a good starter approach until you want to build it up to something more sophisticated.
Terry
+1  A: 

Since you say it should be a .NET application, I'd recommend the following:

  • SQL Server Express for the database. It's free, but should you ever have to scale the application, you can upgrade to the full SQL server.
  • Maybe something like subsonic to automatically generate the data-access layer and domain model based on the database schema.
  • Build the application either using windows forms or asp.net
M4N
A: 

I am going to assume that you are not looking for a web based application based on the technologies that you have listed above. I think that Visual Studio and .Net would not be overkill the project you are suggesting. Through technologies like Windows Forms Data binding and SQL Server express, you can get an application up and running in little time and with our a lot of coding. If you also need the reporting capability, SQL Express does support reporting services.

Then as the application's use grows and people request more features, you will have a good base to build from.

Josh