![]() | |
#11
| |||
| |||
|
|
On Apr 28, 8:08 am, Lennart <erik.lennart.jons... (AT) gmail (DOT) com> wrote: jag wrote: Hiya, I'm planning to build an enterprise-level php web app which will be used to manage a large amount of users and which will get a lot of hits. so, which database setup should i use? got 2 choices, PostgreSQL or MySQL have used MySQL before but heard good stuff about PostgreSQL. I'm under the impression that MySQL have been improved in v5 (not sure though). Earlier version was a nightmare, no views, no subselects, no referential integrity, operators with a completely different meaning than in other dbms, ... PostgreSQL was (is ?) much more standard compliant. If you ever decide to change dbms, it will be easier with postgres (still a lot of work though) Here are two references: http://sql-info.de/postgresql/postgr...://sql-info.de... Finally, the major players in the field (DB2, Oracle, MsSQL) all have free to use versions (under som restrictions) these days. I'm only familiar with DB2: http://www-306.ibm.com/software/data/db2/express/ Eventhough you clearly stated mysql/postgres as your alternatives, it might be worthwhile to have at look at these 3 /Lennart thanks, i'm pretty familiar with MSSql and Oracle, it's just that for this project the inital budget for buying software is $0, once i've got a workable solution i can start getting money to move hardware. |
#12
| |||
| |||
|
|
Ed Prochak <edproc... (AT) gmail (DOT) com> wrote: [] For development and test purposes you can download the full Enterprise version of Oracle http://www.oracle.com/technology/software/products/database/oracle10g...>. They will even send you a CD and I received an unsolicited phone call from tech support asking if I needed any help. I don't use an Oracle database but I find my free membership of OTN http://www.oracle.com/technology/index.html> valuable because of the wealth of technical information they provide. |
#13
| |||
| |||
|
|
jag skrev: Hiya, I'm planning to build an enterprise-level php web app which will be used to manage a large amount of users and which will get a lot of hits. so, which database setup should i use? got 2 choices, PostgreSQL or MySQL have used MySQL before but heard good stuff about PostgreSQL. I have used both. Love Postgres. Hate MySQL. People may tell you that Mysql has better performance. I believe a lot of this comes from people doing single-table selects or simple joins from ISAM tables. I have often been writing queries in Postgres that I could never have done in MySQL - so when I was using MySQL, I would have to code them procedurally on the webserver. The documentation for Postgres is excellent. They have separate copies online for the different versions, and clearly indicate the changes and any deviations from the SQL standards. The documentation for MySQL covers all versions at once. This means you cannot just look at the syntax diagrams and assume that they apply to the version you are running. Postgres supports transactions, subselects, foreign keys, constraints, updatable views (via RULES or TRIGGERS) and stored procedures/functions in several languages - all in the standard configuration. MySQL ... may support some of these out of the box, and most of them with a little tweaking. Often they are implemented with gotcha's - "you can't use a subselect there", "foreign keys only work with INNODB tables" etc. Postgres gives you meaningful error messages most of the time. MySQL mostly just says "You have an error in your SQL syntax;" And, IMNSHO, if you don't have time/money for a trained DBA - Postgres beats Oracle as well, when it comes to maintenance AND performance. Simply because it works out of the box, and the documentation is easy to read and follow. Enough evangelism, have a nice day Nis I agree with Nis. Both will work. I prefer Postgres for the same reasons as |
#14
| |||
| |||
|
|
I have used both. Love Postgres. Hate MySQL. People may tell you that Mysql has better performance. I believe a lot of this comes from people doing single-table selects or simple joins from ISAM tables. I have often been writing queries in Postgres that I could never have done in MySQL - so when I was using MySQL, I would have to code them procedurally on the webserver. The documentation for Postgres is excellent. They have separate copies online for the different versions, and clearly indicate the changes and any deviations from the SQL standards. The documentation for MySQL covers all versions at once. This means you cannot just look at the syntax diagrams and assume that they apply to the version you are running. Postgres supports transactions, subselects, foreign keys, constraints, updatable views (via RULES or TRIGGERS) and stored procedures/functions in several languages - all in the standard configuration. MySQL ... may support some of these out of the box, and most of them with a little tweaking. Often they are implemented with gotcha's - "you can't use a subselect there", "foreign keys only work with INNODB tables" etc. Postgres gives you meaningful error messages most of the time. MySQL mostly just says "You have an error in your SQL syntax;" And, IMNSHO, if you don't have time/money for a trained DBA - Postgres beats Oracle as well, when it comes to maintenance AND performance. Simply because it works out of the box, and the documentation is easy to read and follow. |
#15
| |||
| |||
|
|
Hiya, I'm planning to build an enterprise-level php web app which will be used to manage a large amount of users and which will get a lot of hits. so, which database setup should i use? got 2 choices, ... |
#16
| ||||
| ||||
|
|
I have used both. Love Postgres. Hate MySQL. |
|
The documentation for MySQL covers all versions at once. This means you cannot just look at the syntax diagrams and assume that they apply to the version you are running. |
|
Postgres supports transactions, subselects, foreign keys, constraints, updatable views (via RULES or TRIGGERS) and stored procedures/functions in several languages - all in the standard configuration. |
|
Postgres gives you meaningful error messages most of the time. MySQL mostly just says "You have an error in your SQL syntax;" |
#17
| ||||||
| ||||||
|
|
http://dev.mysql.com/doc/refman/4.1/en/index.html True. I am really wondering: Did 4.0 not have documentation? Why is that documentation no longer available separately online? |
|
- Not being able to update multiple rows in one UPDATE statement, if the intermediate state of the table violates a constraint. Example: UPDATE mytable SET order = 2 - order WHERE order in (1,2); |
|
- Not being able to use a subquery on the same table in an UPDATE statement. Example: UPDATE mytable set order = 1+ (SELECT Max(order) FROM mytable) where id = 123; |
|
- Not being able to rename a field with a FOREIGN KEY constraint on it (no error message until trying to manipulate the data). |
|
- FOREIGN KEY constraints being silently ignored if the table is MyISAM. |
|
Actually, I believe this feature (lack of Windows support) has been crucial in achieveing the current level of quality of postgresql. I strongly recommend it for any Open Source project aiming for excellence. |
![]() |
| Thread Tools | |
| Display Modes | |
| |