HLP: What should I use?

  • Thread starter Thread starter Mr. B
  • Start date Start date
M

Mr. B

Here's my situation... First off, I'm a complete Newbee when it comes to 'data
bases'. And I'm a week end programmer (: My appologies if I get a bit too
verbose here

I've VB4 to VB6 experience... and have started using VB.net just this year.
Most of my apps have always used TXT type files for data simply because that
is what I know how to use. Background info is:

But now I'm re-writting a VB6 app to VB.net and need some guidance on WHAT to
use, and where to start as I want to improve it.

My application is kind of like an In/Out daily status. The data per user
(70-100 people) will show Monday to Friday for a 2-week period (current week
and next week) in 1/2 hour increments (8am to 5pm). Each 1/2 hour input is
either a One (1) or Zero (0). And for each day, they'll be able to put is
some text (280 characters limited) for some notes (like: I'm out at
so-and-so's until 4pm). Then of course I'll have the users name. So all in
all, for each user there is 201 "pieces" of information for the 2 week period.

Each user can display a DataGrid which will show all the users In/Out status
on a day-by-day basis (either this week, or next week). Their status is
simply a Red Box (not in) or Green Box (in)... this info is not relivant to my
question, just giving you some background.

At the end of each week (late Sunday night), the "current" weeks info gets
dumped (no longer applicable), the 'next' weeks input (if any) becomes the
'current' week. And new 'blank' data will be built for 'next' week. I'll do
this via another simple application to run on a schedule each week.

Question 1:
My app will have 70-100 users. They'll occasionaly input simple data each day
(but not necessarily all). Depends on if they'll be in or out of the office.
In wanting to keep things simple, in my previous VB6 version, I had it set so
that every User has one TXT file with their data. And each user's app would
read each file.

But I'd like to try to put it all in one file. But because there is a remote
chance that two users could "possibly" be entering their data at the same time
(the input should be relatively fast), I don't want a situation where a file
"LOCK" exists. With individual files, they could write anytime, as other
users would only 'read' their data.

What I did in my previous version, was to read the data into a 3D array such
as --> MyArray(70, 201). Then I could read the data fast and update it
periodically. The "write" to the data part would only be the users info when
they change things.

And of course, I'll have an Administrator who'll be allowed to Add/Remove a
User (and thus, all their applicable info gets blown away too or created).

So what kind of 'simple' _type_ of data base should I use (if you've followed
me so far). One that can allow more than one user to enter data (just in
case). One that is 'simple' to read/write to, create/delete users. Things
like SQL won't do (as we don't have it. Use XLS? I don't know. Someone
suggested DBMS, but I think I'd have to purchase this. I just want something
readily available to me.

Question 2:
Based on Q1 answer... how best to get started? I've 6-7 books on VB.net. But
they don't always show exactly what you want.

Any thoughts/comments would be appreciated.

Regards,

Bruce
 
Most of my apps have always used TXT type files for data simply because that
is what I know how to use. Background info is:

My application is kind of like an In/Out daily status. The data per user
(70-100 people) will show Monday to Friday for a 2-week period (current week
and next week) in 1/2 hour increments (8am to 5pm). Each 1/2 hour input is
either a One (1) or Zero (0). And for each day, they'll be able to put is
some text (280 characters limited) for some notes (like: I'm out at
so-and-so's until 4pm). Then of course I'll have the users name. So all in
all, for each user there is 201 "pieces" of information for the 2 week period.

Well, all I can say - if you have concurrent users, and quite a few,
it would *DEFINITELY* recommend looking at MSDE - the Microsoft
Desktop Engine, a "scaled down" MS SQL Server.

Yes, I know - it's a big step, and a thorny one (at first), from a
"flat-file" .TXT based system - but it'll pay off, trust me.

So what you need is
* getting to know what MSDE and a SQL database in general are
* how to design a good SQL database
* how to use MSDE from VB.NET

For general SQL stuff, there's a ton of books - many good ones, lots
of crappy ones, too. This really depends on how you like to learn, and
what background you have. I'd recommend searching Amazon or similar
sites for "VB.NET" and "SQL Server" or "MSDE" - there should be plenty
of books availalble.

For database design, I can wholeheartedly recommend one book:

Database Design for Mere Mortals
by Michael J. Hernandez
http://www.amazon.com/exec/obidos/tg/detail/-/0201752840/qid=1063174266

His companion book, "SQL Queries for mere mortals"
(http://www.amazon.com/exec/obidos/tg/detail/-/0201433362) is another
gem when learning how to use SQL and its query language to learn
database programming.

Hope this helps - hang in there, it'll be a steep laerning curve at
first, but in the end, it's well worth it. MSDE / SQL Server gives you
just sooo much more in terms of database power, integrity, and so on.

Oh, and did I mention? You can freely distribute MSDE to your
customers, too......

Marc

================================================================
Marc Scheuner May The Source Be With You!
Bern, Switzerland m.scheuner(at)inova.ch
 
I may be wrong, but I believe that the developer edition version of SQL
Server can now be purchased for not much more than the cost of the media.

If you have VS.Net Enterprise edition (not in Pofessional version) then that
comes with the Developer Edition of SQL Server.
Failing either of these, you can try the Trial Version from:

http://www.microsoft.com/sql/evaluation/trial/default.asp

Make sure you install Service Pack 3a from the start (protection against the
slammer virus + lots of updates).

If you are enroled in training at appropriate tertiary institutions, you may
qualify for Academic pricing....

Learning SQL Server with MSDE is like trying to learn to drive blind folded.
If you can succeed at that you will be a good driver, but a lot of pain in
the process as you can't see what is going on.

If you can get the Developer edition, then you get a no holds barred version
of SQL Server with Enterprise Manager, Query Analyser - for writing queries
in SQL and everything else, Books Online (aka BOL) and all the other
valuable tools.

MSDE comes with none of these.

Best of luck - should you need any...

- Tim
 
I may be wrong, but I believe that the developer edition version of SQL
Server can now be purchased for not much more than the cost of the media.

$49 in the US.

This is a full Enterprise-level version, just without any distribution
rights. It includes all the nice UI tools that come with SQL Server
(Query Analyzer, Enterprise Manager, Data Transformation Services
etc.)

Marc
================================================================
Marc Scheuner May The Source Be With You!
Bern, Switzerland m.scheuner(at)inova.ch
 
Back
Top