Solved

Access or Oracle?

Posted on 2004-04-22
14
423 Views
Last Modified: 2012-06-27
I am currently doing my final year project (Degree in Computer Science), and I would like to know if it is suitable to use access as my database? i am doing a hotel management system and a room service system using visual basic. so there might be more than 200++ users but not all will be accessing the databasae at once. i did not use oracle because of time constraints and i am not familiar with oracle. is it easy to link systems written using visual basic to oracle? or is it ok using access as my database?
0
Comment
Question by:otyew
  • 6
  • 5
  • 3
14 Comments
 
LVL 4

Accepted Solution

by:
zombieooo earned 55 total points
ID: 10890204
Access would be inefficient with 200+ users logging into the database.  The problems occur when two or more users try to modify the same record within a table.  You will get record locking errors (which can be alleviated with proper error handling) and possibly loss of data.  I would recommend using a VB and MySQL combination which is cost effective, and has a narrow learning curve to get it implemented.
This site http://vbmysql.com/ may be able to give you some references for making your decision.

Joel
0
 
LVL 7

Expert Comment

by:IT-Schubertz
ID: 10890802
as zombieooo wrote, Access would be inefficient with that many users.
But to answer your question:
Access is most easy partner to develop your VB application with.
Use those two for designing, implementing and testing your application and switch to Oracle, SQL Server or whatever later.
One thing you should consider for easy switching later:
Use object orientated programming. What I mean is, don't do something like this (simplified) in your forms, modules etc:
  Dim rs as recordset
  Dim Cn as Connection
  Cn.provider= "my provider info..."
  Cn.Open
  Cn.Execute("SELECT ....")

when you do this, it will practically be impossible to change database engine later. To be efficient it would require at least a global function
   Function Execute_SQL(SQL$) as recordset
   ' set provider info
   ' open connection
   ' execute SQL statement
  end function

So, you only call this function and whenever you decide to use a different database, you only have to change this function to make your app work with the new db.

Greetings,

Andreas Schubert
0
 

Author Comment

by:otyew
ID: 10892196
i only learned about oracle and nothing about mysql, so i do not know how to use it for my project. from wat i knew from oracle, it requires a lot of hd space and troubles with the installations are common. i am beginner in these 'industrial strength' database systems. is there any website or informations on mysql, from the basics (installations and setup) to linking it to my vb? and is it possible to use it on a single pc without connecting to a network? i am doing the project and everything is done on a single pc.
0
 
LVL 7

Expert Comment

by:IT-Schubertz
ID: 10892506
otyew,

http://dev.mysql.com/ is the official homepage of the mysql project.
But, as I mentioned in my other posting, why not use MS Access for developement? It seems you know it already and the amount of time to learn it would be much less than learning mysql from the beginning.
If you need more information about my comment, please let me know!
0
 

Author Comment

by:otyew
ID: 10897189
dear Andreas Schubert,

thank you for the solutions. the problems i'm having is because this is my first project (degree grade project) and during my previous years of studies, i have never learn any of those database programs except for access which i consider as nothing compared to the oracles and mysql. and i cant learn it from scratch as my project deadline is in june (there will be an extension but the exact date is not confirmed yet).

so there is some terms or things that i will not understand. and my project supervisor have the experience and knowledge in project management but not on the programming side and he is an english guy. he expect a lot from the reports like why do i choose access over oracle or mysql and other language as well.

- could you tell me how do i start with the development? (i choose vb cos it is more convenietn but the database i have to choose access because it is not time consuming as oracle requires a lot of hd space and mysql, i do not have any ideas on it)

- is it easy to use mysql? (i have seen many problems with the installations of oracle, disk space, network and compatibility)

- do u mean that i should do the application and test it at my home (no network) using access as the database, and mysql as the database when i run it? like the example that you gave, i just have to change the statement when i convert to mysql right?

Function Execute_SQL(SQL$) as recordset
   ' set provider info
   ' open connection
   ' execute SQL statement
  end function

- is there any websites which could help me with my project? (eg. details or comparisons of languages and databases and etc)

lastly, sorry for the inconvenience caused as there is no one could help me. and i will not forget to put this site and you on my acknowledgement and reference page. thank you
0
 
LVL 7

Expert Comment

by:IT-Schubertz
ID: 10897276
Dear otyew,

you're welcome. I will try to answer your questions as good as I can.
We will justify the usage of MS Access pretty easy (one reason is that it is the only database you have experience with right now). Besides, among us developers it's common knowledge that Access is quite good for rapid prototyping, cause you quickly get results.
Using mysql is indeed pretty easy. On the link I gave you earlier, all information you need to start can be found. Although, if your deadline is in June already, I would say don't bother with mysql or anything, just go ahead with MS Access.

> do u mean that i should do the application and test it at my home (no > network) using access as the database, and mysql as the database
> when i run it?

Pretty much so. Even for demonstrating your finished project, MS Access would be enough. Only when all those expected 200+ users are online, you will need mysql.
> like the example that you gave, i just have to change the statement
> when i convert to mysql right?
It's not that easy.
You will have to install the mysql ODBC client on all client machines first.
Then, not the statement has to be changed (because it's the actual SQL-command to execute) but the parameters for opening a connection.
The connection awaits some parameters about which database to open (type, location etc.). THis has to be adopted, but it is easy.

I don't know about any website to compare databases and languages. But I think that you will find lot's of info through google.

Greetings

Andy


0
 

Author Comment

by:otyew
ID: 10901179
dear andy,

i have read tat i have to install a server program for the mysql, then another odbc thing to link to the vb, am i right? and as you said, i have to install another odbc client on the other machine. so this make it as 3, right? and the mysql file is just >25mb right?

which file should i download from www.mysql.com so that i could use it on my machine, test and run it? there is so many downloadable files and i do not know which one to download (if i am not mistaken i have to download the db server, administrator and connectors, right). i think it is ok to try the mysql unless the access is unacceptable.

thank you
0
Enabling OSINT in Activity Based Intelligence

Activity based intelligence (ABI) requires access to all available sources of data. Recorded Future allows analysts to observe structured data on the open, deep, and dark web.

 
LVL 4

Expert Comment

by:zombieooo
ID: 10902579
Here is the Windows version of MySQL with the installer.
http://dev.mysql.com/get/Downloads/MySQL-4.0/mysql-4.0.18-win.zip/from/pick

Most developers installing MySQL on a windows platform use the WAMP configuration.  There is a lot of documentation on installing, configuring, troubleshooting this confuguration. WAMP is Windows, Apache Web Server, PHP and MySQL.  The reason for installing a web server is that there is a great administration tool for MySQL called phpMyAdmin http://www.phpmyadmin.net/home_page/.  This is a lot easier than using the DOS database administration with MySQL.

Joel
0
 
LVL 4

Assisted Solution

by:zombieooo
zombieooo earned 55 total points
ID: 10902597
And yes, you do need the MySQL ODBC Connector to link tables from Access to a MySQL database.
http://dev.mysql.com/downloads/connector/odbc/3.51.html
This will also have to be configured with each workstation running the Access front end that is accessing the MySQL database.
0
 
LVL 7

Expert Comment

by:IT-Schubertz
ID: 10902786
hi otyew,

sorry I'm late.
zombieooo already pointed you to the right files!

If you have any more questions, feel free to ask!

greetings

Andy

0
 

Author Comment

by:otyew
ID: 10908210
dear joel and andy,

i think i know what you all meant although it is getting more and more technical. u mean that:

first, i install the server
second, i install the adminstrator (as it is easier)
third, i install the connectors

i am using the windows xp pro currently, and i am not connected to any network (even internet) most of the time. will it still works? i am doing most of my project at home without connecting to any networks.

is mysql works like oracle? i used oracle before, it is something like the telnet accessing to a linux server, after access i can start creating table using sql. is it the same as mysql? sorry for these silly questions cos i tend to get confused most of the time.

thank you
0
 
LVL 7

Expert Comment

by:IT-Schubertz
ID: 10908548
mysql is not Oracle! :-)
although both use ANSI-SQL standards, there are some differences.
I don't know mysql well enough to compare these two in detail, but sure Oracle is the more powerful database.
But mysql is free and relatively easy to learn.
Hearing your statements "I tend to get confused...", I would again highly advise you to use MS Access first and develop your application, because of the tight frame of time you have.
I don't want to offend you, but it seems to be better to think  about mysql or Oracle when the application is developed. But first, make a database layout and get your program to work!!

Greetings

Andy
0
 

Author Comment

by:otyew
ID: 10911809
dear andy,

thank you for everything, actually i do understand some of the things u have given but i just wan to make sure. i think i will use the access as my database first and write a report tat i am using it for prototyping, i think it is ok, right?

thank you, i guess it is time tat i have to give the points

thank you
0
 

Author Comment

by:otyew
ID: 10911866
dear andy,

i am sorry bcos i have given the points to the other person and not you. sorry, i owe you 35 marks and hope you will answer my questions later.

do not worry, mr andy, i will remember the 35 points tat i owe you, i am really sorry about it

0

Featured Post

Top 6 Sources for Identifying Threat Actor TTPs

Understanding your enemy is essential. These six sources will help you identify the most popular threat actor tactics, techniques, and procedures (TTPs).

Join & Write a Comment

In Debugging – Part 1, you learned the basics of the debugging process. You learned how to avoid bugs, as well as how to utilize the Immediate window in the debugging process. This article takes things to the next level by showing you how you can us…
Experts-Exchange is a great place to come for help with solutions for your database issues, and many problems are resolved within minutes of being posted.  Others take a little more time and effort and often providing a sample database is very helpf…
Familiarize people with the process of utilizing SQL Server stored procedures from within Microsoft Access. Microsoft Access is a very powerful client/server development tool. One of the SQL Server objects that you can interact with from within Micr…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…

757 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

16 Experts available now in Live!

Get 1:1 Help Now