It also has a "persistence" API that let you save variables in shared memory. Perfect for caching pieces of web pages and speeding things up some more.
I'm not aware of any database that 100% follow the SQL specs. As far as I'm concerned, those are NOT bugs because they behave in a way that is documented, predictable and often convenient. You can dislike that behavior, but it's design choice, not a bug.
And as such, you don't have to WORK AROUND them - if your application is designed correctly it should checks that integers are the right size, rather than passing values around and waiting for an error to show up later at the storage level (ie too late !). Working around a bug is wasting programming efforts and code lines to do something you shouldn't normally be doing. This is not what you describe here - you should be checking your values before passing them to the database anyway. There's no "work around" to be done.
Imagine a bug like that popping up in the middle of a bank year, and only being caught several months later. Disaster.
No one is saying you should run a banking application on MySQL. Or Postgresql or Firebird for that matter.
Make your reports in HTML format (shouldn't be hard), then use HTMLdoc to convert it to PDF. It's the most painless solution I know (no API to learn, no XML language to master, no complex installation to perform)
Except that Flash works as a plug-in, and we all know that it is now a problem. SVG or whatever the format is called will be native to IE, and hence not a plugin.
Besides, XML is convenient to produce with scripting languages. Flash being a binary format is more complex to write and requires special libraries.
Those numbers are very wrong. Spammers count returns in sales per MILLION emails, because the rate is so low. It's profitable because they send huge quantities of spam, so even a very low sale rate is quite profitable.
On the other hand real email marketing (done by a well known legitimate business, targetted to specific peoples who agreed to receive it) can get much better results.
It looks like a nice solution in theory. Byt XML-FO is a whole language by itself and add to this the complexity of the XSLT language, and you are looking at two new XML linguo to learn just to generate PDF... ugh !
Rewriting one piece of code in another language doesn't proof anything. I can show you code written in Delphi that outperforms Java. Does that make Delphi superior?
Err, considering Delphi is compiled and use the same compiler-backend as C++, it really should perform a lot faster than any Java solution when using the same algorithms.
Humm, Doom III running at 6000x4000 resolution might require some powerful hardware. By the time that hardware is available, you'll want to play Doom VIII or something;)
Among European governments, at any rate, there was more of a consensus for the US than against.
The key word here is "governments". Because among the population, that's quite the opposite. UK had its biggest demonstration since WWII, Spain was in the streets etc. US popularity has reached an all time low all over the world and of course in Europe as well.
MySQL 3.23 has foreign keys, transactions and "basic" triggers ("on delete/update cascade"). All you need to do is use the innodb table handler when creating your table.
When you drop the table, you'll also have to manually drop the sequence as well, which kinda defeat the whole purpose of using "serial" instead of creating a sequence.
Actually, IE has a strange "feature" that change slightly some colors of PNG images (even 24 bit pictures in a 24 bits display !). I had to switch back to GIF for one of my site so that the images color matched the page color...
For urban peoples this is perfect. Most of the time you have to move a bit too far to walk but a bit too close to take your car (and bother finding a parking space). The Segway is perfect in this environement.
However, simple UPDATE statements also use transactions without that syntax
True, but MySQL UPDATE/DELETE are also atomic in MySQL (even without using Innodb) so that's a non-issue here.
As for MySQL, how does he know when to use InnoDB versus MyISAM, BDB, HEAP, MERGE, etc.?
I've never known anybody who used BDB, HEAP or MERGE. MyISAM and Innodb are really the two table handlers that 99,99% of MySQL users use. As for newbies, they'll hopefully RTFM and the MySQL doc is pretty complete and clear on the subject. I'm sure even with PostgreSQL you also have to read the doc sometimes ?
If InnoDB was the default, while I would still have reservations about MySQL, it would allay many of my concerns regarding its general use by newbies.
I think there's a switch somewhere to make it the default table handler. But again if someone isn't capable of typing "type=innodb" when creating a table I'm not sure I'd trust that person with a SQL command line and table creation rights on any database...
You don't care about errors in your web statistics ?
No. For example I've a MySQL table that has a counter for everytime a page is viewed. I don't really care if the counter value is 2048674654 or 2048674652. A 1% margin of error is more than enough here. But even then, MySQL won't make any error here since the UPDATE is atomical so I'm sure every query is handled correctly and page view counted.
It also has a "persistence" API that let you save variables in shared memory. Perfect for caching pieces of web pages and speeding things up some more.
I'm not aware of any database that 100% follow the SQL specs. As far as I'm concerned, those are NOT bugs because they behave in a way that is documented, predictable and often convenient. You can dislike that behavior, but it's design choice, not a bug.
And as such, you don't have to WORK AROUND them - if your application is designed correctly it should checks that integers are the right size, rather than passing values around and waiting for an error to show up later at the storage level (ie too late !). Working around a bug is wasting programming efforts and code lines to do something you shouldn't normally be doing. This is not what you describe here - you should be checking your values before passing them to the database anyway. There's no "work around" to be done.
Imagine a bug like that popping up in the middle of a bank year, and only being caught several months later. Disaster.
No one is saying you should run a banking application on MySQL. Or Postgresql or Firebird for that matter.
SQLite is indeed fabulous, but scaling might be a tad difficult. Plus, it's a bit weird (typeless database).
So they don't run VACUUM daily ?
I consider those two points as features. You just need to be aware of them, that's all. They are design decisions (which might not please everybody).
Make your reports in HTML format (shouldn't be hard), then use HTMLdoc to convert it to PDF. It's the most painless solution I know (no API to learn, no XML language to master, no complex installation to perform)
From what I understand it is "proprietary but gratis".
Dual Celeron hasen't been possible for a VERY long time. Dual Athlon is usually more expensive than a single powerful P4 with HT.
Except that Flash works as a plug-in, and we all know that it is now a problem. SVG or whatever the format is called will be native to IE, and hence not a plugin.
Besides, XML is convenient to produce with scripting languages. Flash being a binary format is more complex to write and requires special libraries.
Those numbers are very wrong. Spammers count returns in sales per MILLION emails, because the rate is so low. It's profitable because they send huge quantities of spam, so even a very low sale rate is quite profitable.
On the other hand real email marketing (done by a well known legitimate business, targetted to specific peoples who agreed to receive it) can get much better results.
With the merger of Air France & KLM, I think Air France KLM would be the biggest now.
It looks like a nice solution in theory. Byt XML-FO is a whole language by itself and add to this the complexity of the XSLT language, and you are looking at two new XML linguo to learn just to generate PDF... ugh !
Rewriting one piece of code in another language doesn't proof anything. I can show you code written in Delphi that outperforms Java. Does that make Delphi superior?
Err, considering Delphi is compiled and use the same compiler-backend as C++, it really should perform a lot faster than any Java solution when using the same algorithms.
Actually it is too powerful, whenever I use I feel guilty for not taking advantage of all the options and settings :(
Humm, Doom III running at 6000x4000 resolution might require some powerful hardware. By the time that hardware is available, you'll want to play Doom VIII or something ;)
You can change all your IP config thru a GUI. Most (all?) Linux distros still require you to drop to a command line to do that...
When you have ICBMs, you don't really need that much more military to keep your enemies quiet.
Among European governments, at any rate, there was more of a consensus for the US than against.
The key word here is "governments". Because among the population, that's quite the opposite. UK had its biggest demonstration since WWII, Spain was in the streets etc. US popularity has reached an all time low all over the world and of course in Europe as well.
MySQL 3.23 has foreign keys, transactions and "basic" triggers ("on delete/update cascade"). All you need to do is use the innodb table handler when creating your table.
When you drop the table, you'll also have to manually drop the sequence as well, which kinda defeat the whole purpose of using "serial" instead of creating a sequence.
Nope it doesn't, as I wrote in another post here, IE mangles PNG pictures a bit. And it doesn't support PNG alpha channel either.
Actually, IE has a strange "feature" that change slightly some colors of PNG images (even 24 bit pictures in a 24 bits display !). I had to switch back to GIF for one of my site so that the images color matched the page color...
For urban peoples this is perfect. Most of the time you have to move a bit too far to walk but a bit too close to take your car (and bother finding a parking space). The Segway is perfect in this environement.
Well you shouldn't venture there without the grapples, or else it's a one way trip. You could get them by talking to some guy in Empath Abbey I think.
However, simple UPDATE statements also use transactions without that syntax
True, but MySQL UPDATE/DELETE are also atomic in MySQL (even without using Innodb) so that's a non-issue here.
As for MySQL, how does he know when to use InnoDB versus MyISAM, BDB, HEAP, MERGE, etc.?
I've never known anybody who used BDB, HEAP or MERGE. MyISAM and Innodb are really the two table handlers that 99,99% of MySQL users use. As for newbies, they'll hopefully RTFM and the MySQL doc is pretty complete and clear on the subject. I'm sure even with PostgreSQL you also have to read the doc sometimes ?
If InnoDB was the default, while I would still have reservations about MySQL, it would allay many of my concerns regarding its general use by newbies.
I think there's a switch somewhere to make it the default table handler. But again if someone isn't capable of typing "type=innodb" when creating a table I'm not sure I'd trust that person with a SQL command line and table creation rights on any database...
You don't care about errors in your web statistics ?
No. For example I've a MySQL table that has a counter for everytime a page is viewed. I don't really care if the counter value is 2048674654 or 2048674652. A 1% margin of error is more than enough here. But even then, MySQL won't make any error here since the UPDATE is atomical so I'm sure every query is handled correctly and page view counted.