Skip to main content
GameDev.net gamedev.net
🔒 Locked

Applications and Databases

Started by Nahoopii Dec 3, 2007 at 2:27 PM 7 replies 1.4k views
Original Post
Nahoopii
Nahoopii
Hi Folks, If this is inappropriate, the mods can certainly do as they see fit. I've got a great, and I think marketable, idea for a piece of software. In order to realize how I see the software working, I'll need a database. Now this particular software isnt going to have multiple users, or high traffic to the database by any means. The actual tax on the database is really nothing more then keeping historical data of how the users have used the application so they can retrieve data based on historical uses of the application. In my job I really only work on web application, thus it is natural that I would use a DB of some sort (mySQL most likely since its free). My question to you all is, if my application (of one user on a local machine) is designed to use a database for the data driven backend, is it feasible? When the software is finished, do I package both the software and the database to install at the end users machine? Is there a better alternative to using a database? Obviously you understand Im trying not to delve too much into the application itself. If you all need more information, just let me know. Thanks in advance.
dorix
dorix
Sounds like you should look at SQLite. It's a tiny embedded database engine written in C, bindings exist for probably all modern languages, and SQLite is public domain.
Toolmaker
Toolmaker
SQLite or MSJet DB(Access is the front-end of MS JetDB. You don't need Access to use MS JetDB in your app) is the way to go. Esp. if the DB load is low.

The pro about using the MS JetDB is that it is up-scalable to MS SQL (Express) if you need more users, the pro about SQLite is that it is very small and can be compiled as an application dependancy(.DLL), whereas the MS JetDB is an external dependency, for which you need to check the dependencies and overwrite those in the SYSTEM32 folder if there's an incorrect version. SQLite is also cross-platform if that's your goal.

MS JetDB isn't the most stable thing to go with, esp. if you upscale the number of users. Databases tend to corrupt themself if you access it with multiple users.

Toolmaker
 
Nahoopii
Nahoopii
This is exactly what I wanted. Thank you both. If anyone has any other suggestions, thats great, but I think SQLLite is exactly what I was looking for.
AndreTheGiant
AndreTheGiant
Microsoft SQL Server is an extremely solid, top-quality and efficient database. There is a free version of the database engine that you can package up with your application for deployment. The free version is just the engine itself, without the development tools. The idea is that you purchase SQL Server and develop your application, and when its time to deploy it, you package up the free engine and your all set.

Ive worked extensively with MS SQL Server 2000 and its an absolute delight to use. Ive also used other free databases, like MySQL, and I have to say I'll never switch from SQL Server. The development time alone you'll save by using Microsoft's database will more than pay for the cost to purchase it.

Please let us know what you decide :)
Toolmaker
Toolmaker
Quote:
Original post by AndreTheGiant
Microsoft SQL Server is an extremely solid, top-quality and efficient database. There is a free version of the database engine that you can package up with your application for deployment. The free version is just the engine itself, without the development tools. The idea is that you purchase SQL Server and develop your application, and when its time to deploy it, you package up the free engine and your all set.

Ive worked extensively with MS SQL Server 2000 and its an absolute delight to use. Ive also used other free databases, like MySQL, and I have to say I'll never switch from SQL Server. The development time alone you'll save by using Microsoft's database will more than pay for the cost to purchase it.

Please let us know what you decide :)


While MS SQL Server is a great product, it's too much for what he wants. He doesn't need horsepower, lightning fast queries or efficient stored data.

It's like running SQL Server for your awesome book keeping application. It eats away precious resources which you might want to use for something else(Like running a game). SQL Server does tend to eat up more resources than I want it to. My sole reason to run my SQL Server in a VM: I just start the VM when I need it, and I don't need to worry about startign a bunch of services(Altho I could do that in a batchfile...).

That's why I suggested access: You can upscale from Access to MS SQL Server in a short period of time. But if he has no intention to do so in the future, there is no reason to not go with SQLite.

Toolmaker
 
Wan
Wan
Quote:
Original post by AndreTheGiant
Microsoft SQL Server is an extremely solid, top-quality and efficient database. There is a free version of the database engine that you can package up with your application for deployment. The free version is just the engine itself, without the development tools. The idea is that you purchase SQL Server and develop your application, and when its time to deploy it, you package up the free engine and your all set.

The express edition does have a development tool: the management studio. You don't have to purchase a commercial license for that unless you absolutely need the more advanced tools.

Quote:
Ive worked extensively with MS SQL Server 2000 and its an absolute delight to use. Ive also used other free databases, like MySQL, and I have to say I'll never switch from SQL Server. The development time alone you'll save by using Microsoft's database will more than pay for the cost to purchase it.

I'm not sure about the commercial prospects of the OP's software, but a license per seat or server isn't exactly cheap for a individual.


Anyway, SQLite or a similar lightweight engine is probably what you need.
mutex
mutex
There's also SQL Server Compact Edition (different from SQL Server Express). I believe the desktop redist is only a few MB in size. It also has nice integration with Visual Studio 2008 (including LINQ support).

Edit: Doh, deathtrap beat me, with the same link too.

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.