Beginner help on what to use and how to start database

Discussion in 'Programming' started by raygunpk, Dec 5, 2012.

  1. raygunpk

    raygunpk Member

    Jan 23, 2005
    Likes Received:
    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:

    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?
  2. Loading...

    Similar Threads - Beginner start database Forum Date
    How hard is it to create a simple database search using HTML/Java? Programming Aug 1, 2017
    link to a mdf database Programming May 24, 2017
    Should one start learning programming from assembly? Programming Mar 14, 2017
    Start with SQL or ACCESS? Programming Jan 21, 2017
    Seasoned Software Engineers: What do you wish you had known about the trade from the start? Programming Jan 20, 2017

  3. douglasb

    douglasb Diamond Member

    Apr 11, 2005
    Likes Received:
    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!
  4. Leros

    Leros Lifer

    Jul 11, 2004
    Likes Received:
    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.
  5. beginner99

    beginner99 Diamond Member

    Jun 2, 2009
    Likes Received:
    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).
  6. Markbnj

    Markbnj Elite Member <br>Moderator Emeritus

    Sep 16, 2005
    Likes Received:
    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 :).
  7. raygunpk

    raygunpk Member

    Jan 23, 2005
    Likes Received:
    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.
  8. Tweak155

    Tweak155 Lifer

    Sep 23, 2003
    Likes Received:
    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.
  9. pauldun170

    pauldun170 Diamond Member

    Sep 26, 2011
    Likes Received:
    From within outlook
    Select contacts
    File>Import Export> export to a file> Excel
  10. ringtail

    ringtail Senior member

    Mar 10, 2012
    Likes Received:

    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, 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.
    #9 ringtail, Dec 18, 2012
    Last edited: Dec 18, 2012
  11. trexpesto

    trexpesto Golden Member

    Jun 3, 2004
    Likes Received:
    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:

    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.
    #10 trexpesto, Jan 12, 2013
    Last edited: Jan 12, 2013