Today we features a mini-Q&A with Alex Roedling, MySQL's Senior Product Manager, about all things MySQL, the competition, technology, licensing and more.
Permalink for comment
To read all comments associated with this story, please click here.
Basically, MySQL implements the ON DELETE/UPDATE RESTRICT and ON DELETE/UPDATE NO ACTION in a highly "aberrant" manner, and doesn't bother to document it. The only reference to this little gem of a gotcha was on a MySQL listserv a few months ago -- there is no mention of it in the MySQL online manual.
This particular bug is really bad for anyone porting an existing schema to MySQL. The SQL would be parsed fine, and MySQL wouldn't print an error or warning, but it would do the exact opposite of what any reasonable DBA would expect.
"There's nothing random here - MySQL behavior is documented and known."
Hardly.
Check out http://sql-info.de/mysql/referential-integrity.html#3_6 -- this is a Gotcha that I submitted.
Basically, MySQL implements the ON DELETE/UPDATE RESTRICT and ON DELETE/UPDATE NO ACTION in a highly "aberrant" manner, and doesn't bother to document it. The only reference to this little gem of a gotcha was on a MySQL listserv a few months ago -- there is no mention of it in the MySQL online manual.
This particular bug is really bad for anyone porting an existing schema to MySQL. The SQL would be parsed fine, and MySQL wouldn't print an error or warning, but it would do the exact opposite of what any reasonable DBA would expect.