"be consistent" | |
PerlMonks |
Re: Re: databasesby legLess (Hermit) |
on Jun 03, 2002 at 19:09 UTC ( [id://171310]=note: print w/replies, xml ) | Need Help?? |
What Abigail-II is trying to say, very circumspectly, is that MySQL is often thought not to be a full RDBMS (relational database management system). MySQL has intentionally left out some features that some people believe are (a) useful, or (b) necessary for a product to be a true RDBMS. Among (a) are subselects, stored procedures and triggers. Chief among (b) are transactions. The most important criticism of MySQL is that it doesn't support transactions, although this is no longer strictly true. The current alpha has good transaction support (although the code is ... well ... alpha); version 3.23 and up support transactions on some table types. Why should you care about transactions? Say that you're a bank, and each time a customer makes a purchase you (1) debit their account and (2) credit the merchant account. What if the power goes out (work with me here) in between (1) and (2)? Sounds like a nightmare to code, eh? Transactions are a way of letting the database keep track of this by wrapping up a number of operations into one transaction which either totally suceeds or totally fails (in the case of failure the already-executed parts are "rolled back"). MySQL's response is that they delayed implementing transactions because most people don't need them. This is true, and often overlooked by serious database people. Wittgenstein once said that what most philosophers think of as rigorous proof is like buying two copies of the morning paper and comparing them character-by-character before you believe that either is genuine. In short, don't let MySQL's lack of transactions scare you away. If your data's so important that you need transactions, you should be hiring a database expert anyway. MySQL is reputed to run better than PostgreSQL under Windows. Here's a pretty decent comparison of the two (note that it's by the MySQL team, but is pretty honest). Here's some good PostgreSQL and RDBMS documentation. Some of it is Linux-specific; most is agnostic. Here's also a good article on PHPBuilder comparing MySQL and PostreSQL. It's light on the PHP but very specific on the databases (in particular, speed). Finally, the O'Rielly Perl DBI book is very good, but DBI isn't that complicated. I'd suggest getting a good SQL book instead and reading the man pages and online tutorials for DBI. -- man with no legs, inc.
In Section
Seekers of Perl Wisdom
|
|