Beginner help on what to use and how to start database

raygunpk

Member
Jan 23, 2005
108
0
0
I am new to database programming/management.
I was appointed to put together a contact database for our company. We've been in business for a long time with no real standard for record keeping, so names and companies are all over the place. I would need to able to query for different categories and import/export contacts and companies. There will be categories of types such as Engineers or Lawyers, with multiple subcategories.
The standard addresses of course will need to be searchable as well. I looked through a few programs/platforms and they're either too powerful or not powerful enough.

For example, Outlook has somewhat of a contacts database but cannot be categorized and exported into Excel. I tried to play around with MySQL, which seems like it is more for full websites or big content management, and overkill for what I need.

I found a program that does something quite like what I want, but I believe it hard coded in and cannot be used by me or anyone else. It has a simple interface and can query/export. A screenshot of the program can be found here: http://i.imgur.com/g22M0.jpg

I am the IT support here, and ashamed to say I am completely new to this...but I am willing to learn. I just need to get started and I will start reading more and trying things. I have no idea what platform or standard to use, and creating an application with a nice GUI is overwhelming as well.

Does anyone have suggestions for how I should start?
 

douglasb

Diamond Member
Apr 11, 2005
3,157
0
76
If you are using Windows, I would look at either MS SQL Server or MS Access. SQL is definitely more powerful and you will always be able to find exactly what you need in your database. SQL Server integrates pretty tightly with Excel, as does Access (which makes sense, since they are all Microsoft products). I don't have much experience with Access but it is geared towards smaller databases that aren't necessarily relational.

I recall from many years ago (1996 or so) that I used a product called ACT! that seemed decent for a contacts database. At the time, I was working for a recruiter doing data entry (I was a high school student) and it seemed to have a decent feature set.

So, in this order, I would look at:
1. MS SQL Server
2. MS Access
3. ACT!
 

Leros

Lifer
Jul 11, 2004
21,867
7
81
Do you want this to be centralized (i.e. one central server that everybody accesses)? If so, MySQL is not overkill at all.

If you want a single machine solution, look into SQLite. It's basically a SQL database that is stored in a single file on disk.
 

beginner99

Diamond Member
Jun 2, 2009
5,312
1,749
136
It's good that you want to learn programming and databases. However I strongly advise you to do that first either on your own project(s) or by helping an existing open source project.

It's not something you can just learn it takes time to build experience and know what's wrong. It's safe to say that the first program of any one doing self-education (probably also from most who actually studied CS) will be utter crap in some way, lack of functionality, full of bugs, bad GUI, unmaintainable, not extendable...

What's the budget? How many users? While such things sound easy, they are not. And meaning your responsible does not mean you have to do it yourself meanign buy an existing product (better) or have it created (don't think thats good idea but better than DIY).
 

Markbnj

Elite Member <br>Moderator Emeritus
Moderator
Sep 16, 2005
15,682
14
81
www.markbetz.net
There are a number of really good contact management applications available off the shelf, or in an online service mode. Unless they specifically picked this as a training project for you they'd be much better off buying it as opposed to building it. Perhaps even especially if they picked this as a training project for you :).
 

raygunpk

Member
Jan 23, 2005
108
0
0
Thanks for the replies!

This will not be centralized, it will just be handling everything. For any requests regarding contacts, they will come to me, and I should be able to query and spit out results easily.

There is essentially zero budget, hence why My SQL and SQLite appeals to me. And since it is only accessible by me, I have no issues with it being buggy or just crap in general.

This is definitely a new thing for me but I am happy to try to learn it.
 

Tweak155

Lifer
Sep 23, 2003
11,448
262
126
I would recommend Access since your office likely has MS Office already. A contacts DB is a very simple first project as long as you set easy to reach goals. Don't shoot for the moon on the first iteration - just get it to store all the contacts with the desired information. Then figure out how to read from them. Then add filters. Then searches, etc.
 

pauldun170

Diamond Member
Sep 26, 2011
9,260
5,300
136
I am new to database programming/management.
For example, Outlook has somewhat of a contacts database but cannot be categorized and exported into Excel.

From within outlook
Select contacts
Then
File>Import Export> export to a file> Excel
 

ringtail

Golden Member
Mar 10, 2012
1,030
34
91
raygunpk,

see if your local community college has a class you can take

or if totally on your own, get a good book from your local library and work your way through that.

The thing is, although nearly all other software you're familiar with is usually pretty intuitive so you, because you're so very smart, can just dive into it and learn by clicking your way around, database is NOT like that. Not at all. Try that with database and you'll just end up with a big mess.

First off, invest some time in a paper & pencil & reading exercise that doesn't even involve touching a computer. 1st invest a week or 2 into the general subject of how to normalize a db, and in the process of doing that you'll automatically learn a lot about SQL.

Later after that, install any of the many free RDBMS. There's lots of brands, each with slightly different implementations of SQL, which means each has slight differences in command syntax.

For corporate mega-bucks systems the big daddy is Oracle. For free ones the big elephant in the room is MySQL (which Oracle took over about 2 years ago).

You should go with MySQL, at least for starters. Also, there are several little boutique forks off MySQL like Percona and MariaDB, maybe others too, each with nuanced improvements over their mother MySQL. Ignore those for starters.

A clique of group-think guys who post on this AT forum think it's "cool" to dis MySQL and insist that a MySQL alternative called PostGRE MUST BY GOD be used instead. Never mind that silliness... MySQL is by a vast margin the biggest, is the most widely used for web, etc. MySQL is where the action is, so start with MySQL. I think Amazon.com, ebay, IMDB for example all run on MySQL. In a sense the www runs on MySQL = that's THEE brand to learn on.

Absolutely DO NOT learn on Microsoft Access, which is exactly like a little kid's toy with training wheels. If you get imprinted on Access it'll cripple your SQL fluency in future.
Oracle=big multinational corporations,
MySQL=mid-sized corps down to small office multi-user situations,
Access=for an individual person alone, maybe up to around 10 users.

Start on MySQL free. Just install the free MySQL community edition installer for Windows and it knows what to do. link
Also, read the MySQL manual. link

The fat O'Reilly books are good. Better than the O'Reilly books are anything by a SQL genius in the eu, Holland I think, or maybe in Belgium, named Rick Van der Lans...he has several books in English and he is a SUPERIOR teacher of this stuff. You have to look past some weird symbolic stuff he puts in his books which nobody gets. However, his way of structuring problems in SQL is artful magic. Magic I tell you!

Now just stand back and enjoy the spectacle of all the screamers who post on AT to shout me down that you should start with PostGRE. Ignore them. This is a MySQL world.
 
Last edited:

trexpesto

Golden Member
Jun 3, 2004
1,237
0
0
Sounds like a smallish amount of data which doesn't change every day. Sounds like it would be nice if Outlook worked for what you need.

You can tag things into categories:
http://www.timeatlas.com/email/outlook/organizing_with_outlook_categories

What else besides export to Excel do you need it to do?

What kind of access and security requirements does the system have to have?
Who will be able to enter data? HR people?

If you can use some of your existing MS programs, that'd probably be for the best. If using Outlook, the users could just look it up as they need it and not take up your valuable time, time which it sounds like you need to study being a System Admin.
 
Last edited: