SQL & how different databases implement it

Some vaguely structured thoughts on the differences that you see between SQL as implemented by one DBMS and that of another.

14 January 2006

 

MySQL for the brave

MySQL is a high-performing relational database management system (RDBMS) but it does have a considerable number of foilbles.

Consider these two as examples:

1) Installation of MySQL (up to and including the latest version 5.0.18) on Windows XP generally works fine, but if you choose to place your database files on a different disk (e.g. install the executables to C:\Program Files\..., but put the database files on D:\data) then it just doesn't work. The installation gets to the final step and bombs out with the following error message

"The security settings could not be applied. Error Number 2003. Can't connect to MySQL server on 'localhost' (10061)"

The answer is to first install with the default folders and then move the files around and reconfigure the database settings afterwards.

2) Some SQL constructs are supported by MySQL syntactically, but their effects are not actually implemented in the product. For example:

CREATE TABLE egg (col1 INT);
ALTER TABLE egg ADD CHECK (col1 > 10);
INSERT INTO egg VALUES (-1);

Believe it or not all three of the above statements work fine. The CHECK constraint is supported by MySQL in the syntax of the SQL, but not implemented in the actual execution engine of the database.

Comments: Post a Comment

Subscribe to Post Comments [Atom]





<< Home

Links

Archives

September 2005   October 2005   December 2005   January 2006   March 2006   May 2006   June 2006   September 2006   May 2007   June 2007   November 2007   December 2007   March 2008   April 2008   December 2008   January 2011  

This page is powered by Blogger. Isn't yours?

Subscribe to Posts [Atom]