Hi
I am new to the database concept and I have to make a college project such as hospital management, Transport management system etc. in DBMS. Our college is teaching us MYSQL. Please can anyone advice me as what to use in making these projects. What database type to use from Mysql, oracle etc. and how to implement it as a web application using a frontend in which programming language.
Thanks in advance.
suhailansari 0 Newbie Poster
griswolf 304 Veteran Poster
MySql and Postgresql are the usual choices for web service databases: They are good quality, freely available, have a large user base which means reasonably good support. Oracle also has a freely available version: http://www.oracle.com/technetwork/database/express-edition/overview/index.html You may also want to look at Berkeley DB: http://www.oracle.com/technetwork/database/berkeleydb/overview/index.html (also owned by Oracle). Microsoft MS SQL is reputed to be good if you are using Windows.
They are different enough that it is probably best to pick one to use for every time you need a relational database server. I would choose MySql or Postgresql for most purposes, because I have the most experience with them.
- MySql is a little "easier" for administration and command line tools
- Postgresql is better at larger scale projects that require partitioning, has better foreign key behavior by default, and is a little less "easy" than MySql for command line and admin.
- Berkeley DB is fast and embeddable, but less full featured.
- I have no experience with Oracle in any of its versions. I hear that the commercial versions are very full featured, very robust and have very good tools; but I don't know how much of that applies to the freeware version.
- I'm not a Windows programmer (or user) so I have no idea about Microsoft databases.
The usual web services programming languages are C#, Java, PHP and Python. If you are already familiar with one of these, you probably are best served by staying with it. If you must learn a language to start, then in approximate order:
- Python (which I like very well) is powerful, has good support, has well developed frameworks, good libraries, an odd syntax. It is easy to learn and use. It has dynamic (duck) typing, is byte compiled / interpreted.
- C# (which I hear good things about) is powerful and well supported on its platform. It has static typing, is byte compiled to a very efficient form.
- PHP is very powerful, but in my opinion an ugly language with poorly integrated libraries. It has the least pleasant way to deal classes (not that OO is critically important) and the ugliest syntax. It has dynamic typing, is a scripting language and is not compiled (unless JIT at runtime?). Based on Perl.
- Java has a good reputation, lots of support and libraries, requires you to do a lot of typing, and is just... not as nice as Python (but not as ugly as PHP). It has static typing (and a lot of other rules), is byte compiled to a quite efficient form.
These are my opinions, not the truth; and I may choose to change my mind at any time.
rch1231 commented: Well written and covers all the options available. +1
suhailansari commented: Truly descriptive advice. +0
drjohn 56 Posting Pro in Training
You can set up your own test bed server on your home computer, using XAMPP Lite, for free, and have MySQL and PHP running under Apache within minutes. This enables you to reliably create and test your PHP/MySQL code. It also matches what you are being taught at college, and gives you a copy of PHPmyAdmin to ease the creation of your databases and tables.
suhailansari 0 Newbie Poster
MySql and Postgresql are the usual choices for web service databases: They are good quality, freely available, have a large user base which means reasonably good support. Oracle also has a freely available version: http://www.oracle.com/technetwork/database/express-edition/overview/index.html You may also want to look at Berkeley DB: http://www.oracle.com/technetwork/database/berkeleydb/overview/index.html (also owned by Oracle). Microsoft MS SQL is reputed to be good if you are using Windows.
They are different enough that it is probably best to pick one to use for every time you need a relational database server. I would choose MySql or Postgresql for most purposes, because I have the most experience with them.
- MySql is a little "easier" for administration and command line tools
- Postgresql is better at larger scale projects that require partitioning, has better foreign key behavior by default, and is a little less "easy" than MySql for command line and admin.
- Berkeley DB is fast and embeddable, but less full featured.
- I have no experience with Oracle in any of its versions. I hear that the commercial versions are very full featured, very robust and have very good tools; but I don't know how much of that applies to the freeware version.
- I'm not a Windows programmer (or user) so I have no idea about Microsoft databases.
The usual web services programming languages are C#, Java, PHP and Python. If you are already familiar with one of these, you probably are best served by staying with it. If you must learn a language to start, then in approximate order:
- Python (which I like very well) is powerful, has good support, has well developed frameworks, good libraries, an odd syntax. It is easy to learn and use. It has dynamic (duck) typing, is byte compiled / interpreted.
- C# (which I hear good things about) is powerful and well supported on its platform. It has static typing, is byte compiled to a very efficient form.
- PHP is very powerful, but in my opinion an ugly language with poorly integrated libraries. It has the least pleasant way to deal classes (not that OO is critically important) and the ugliest syntax. It has dynamic typing, is a scripting language and is not compiled (unless JIT at runtime?). Based on Perl.
- Java has a good reputation, lots of support and libraries, requires you to do a lot of typing, and is just... not as nice as Python (but not as ugly as PHP). It has static typing (and a lot of other rules), is byte compiled to a quite efficient form.
These are my opinions, not the truth; and I may choose to change my mind at any time.
Thanks for your advice. Since i have been working on the C programming language and I have a basic idea of Java, so which of the programming languages that you specified will be suitable for me. I hear that C# is closely related to C, with its syntax. So should I go for C# or Java. One more thing, do we need to have the knowledge of ASP.NET to implement C#?
Thanks once again.
teedoff 3 Posting Pro
Microsoft Visual studios 8. You can download a developer edition that works with C# and VB...its a wysiwyg OO application that is really easy to start with. Drag and drop Objects to your page and then program in C# if thats what you're more familiar with. Personally I like ColdFusion for database interaction.
Edited by teedoff because: n/a
griswolf 304 Veteran Poster
Thanks for your advice. Since i have been working on the C programming language and I have a basic idea of Java, so which of the programming languages that you specified will be suitable for me. I hear that C# is closely related to C, with its syntax. So should I go for C# or Java. One more thing, do we need to have the knowledge of ASP.NET to implement C#?
Thanks once again.
Between Java and C# (both are 'C-like') I would choose Java only if I needed to be cross-platform, and C# (using Visual Studio as teedoff notes) if Windows-only is ok. You will need to understand the libraries that are available to you regardless of your language. You can learn them as you go: Having a project to work on is a great motivator, and a good way to learn.
Be a part of the DaniWeb community
We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.