Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations TouchToneTommy on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Database vs Text files to store data in Multiple User App

Status
Not open for further replies.

mark01

Technical User
Jan 17, 2001
600
US
I was wondering what would be the best way to go about storing user data for about 1000 users. They will be accessing the application often. I can either store their information using text files, or an access database. I have used both, and both work fine. However, I am scared of the database limitations, and am wondering if I should stick to storing their information in text files instead.

(I name the text files after the user/computer name)
ex. user1-computer1.txt -->There are about 50 lines in each text file, and a textfile for each user. So there are a possibility of 1000's of text files in a directory at any time.

Which would be best?
 
Mark

Given the two choices I'd go with access. I've had access files at the 25-30 meg+ size with no problems. You won't get that close with the numbers your using.

The neat thing about using the db is for mass updates etc..
Dan
 
I Agree with Dashley,

I would try the Access method too...

Keep regular backups...

If all else fails, you can dump a backup to text files...

If you decide to use text files anyway, I suggest looking into XML for the structure...

Most db's are set up to read in XML... you might want to look at a few different schema's before you jump into it...

If you decide to make your own, you can always use XSL to transfom your schema into one compatible with the target db...


PROGRAMMER: (n) Red-eyed, mumbling mammal capable of conversing with inanimate objects.
 
As far as capacity is concerned, Access can easily handle data on 1000 users and, as Dashley says, there is a lot that you can do with Access that's outside the scope of text files.

The concern I would have is 1,000 users hitting on a shared Access database. I've heard of 50-100 user Access scenarios that work (but I've also heard of many in that range that don't.) I have never heard of a 1,000 user Access operation that worked.
 
Another + for using Access is, depending on what data you are storing, you have access to the Charts and Reports available through Office...


PROGRAMMER: (n) Red-eyed, mumbling mammal capable of conversing with inanimate objects.
 
I agree with the use of a database. If the number of concurrent users is an issue why not try Microsoft MSDE or mySQL (free for in house use).

zemp
 
zemp,
Is "in house use" considered "in house" at work, or "in house" at your home?
(seriously, no sarcasm)

If it's for use in a business, where do they profit?
And I hope Mark doesn't have 1000 users in his home ;-)

check these out...
Free version
Not-so-free version


PROGRAMMER: (n) Red-eyed, mumbling mammal capable of conversing with inanimate objects.
 
Cube, I believe it is free if 'Not for distribution' with an app, but check their website to be sure. Thier policy may have changed since I was there last.

zemp
 
^^^Are those the right links above?

Or are you talking about something else?

This is from the "Free Version" link above...
Our software is 100% GPL (General Public License); if yours is 100% GPL compliant, then you have no obligation to pay us for the licenses. This is a great opportunity for the open source community and those of you who are developing open source software.

The formal terms of the GPL license can be found in the GNU General Public License section of the MySQL Reference Manual. Please note that the General Public License can be restrictive, so if it doesn't meet your needs, you are better served by our Commercial License.

Specifically:

MySQL is free use for those who are 100% GPL. If your application is licensed under GPL or compatible OSI license approved by MySQL AB, you are free to ship any GPL software of MySQL AB with your application ('application' means any type of software application, system, tool or utility). You do not need a separate signed agreement with MySQL AB, because the GPL license is sufficient. We do, however, recommend you contact us as there usually are good opportunities for partnership and co-marketing.

Under the Open Source License, you must release the complete source code for the application that is built on MySQL. You do not need to release the source code for components that are generally installed on the operating system on which your application runs, such as system header files or libraries.

Free use for those who never copy, modify or distribute. As long as you never distribute (internally or externally) the MySQL Software in any way, you are free to use it for powering your application, irrespective of whether your application is under GPL license or not.

You are allowed to modify MySQL Software source code any way you like as long as the distributed derivative work is licensed under the GPL as well.

You are allowed to copy MySQL binaries and source code, but when you do so, the copies will fall under the GPL license.

Optional GPL License Exception for PHP. As a special exception, MySQL AB gives permission to distribute derivative works that are formed with GPL-licensed MySQL software and with software licensed under version 3.0 of the PHP license. You must obey the GNU General Public License in all respects for all of the code used other than code licensed under version 3.0 of the PHP license.

FOSS Exception. We have created a license exception which enables Free and Open Source software ("FOSS") to be able to include the GPL-licensed MySQL client libraries despite the fact that not all open source licenses are compatible with the GPL.Read more about the exception.

I really hate the way they write out these Licenses'... ;-)
You can if... but not if... unless if... except if...


PROGRAMMER: (n) Red-eyed, mumbling mammal capable of conversing with inanimate objects.
 
I don't see where this is multi-user. If there are 1000 users and therefore 1000 textfiles, do any of the users use anyone elses textfile at all?
If no, I can't see any requirement at all for using Access, mysql, sql server or anything other than the text file. It surely just adds another layer of complication?

 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top