I have an application that right now supports SQL Server, Access, DB2, Oracle 8 & 9, Sybase SQL Anywhere, and PostgreSQL. I thought since version 5.0 was finally supporting views, I would try porting my app to it. These comments are based on testing 5.0.4 under Linux.
Here are my initial results. I'd appreciate any helpful comments. The problems I've seen so far are: DEFAULT clause limitations TABLE IDENTIFIER CASE SENSITIVITY So far, I'm stuck and it doesn't look like MySQL 5.0.x will achieve the level of standards compliance needed to run my cross platform/cross database application. ************************************** DEFAULT clause limitations ************************************** My first pass was to set my date/time fields to DATETIME with DEFAULT NOW(). After some unhelpful error messages I found: http://dev.mysql.com/doc/mysql/en/create-table.html The DEFAULT clause specifies a default value for a column. With one exception, the default value must be a constant; it cannot be a function or an expression. This means, for example, that you cannot set the default for a date column to be the value of a function such as NOW() or CURRENT_DATE. The exception is that So I thought OK, I'll change to TIMESTAMP with CURRENT_TIMESTAMP. Then I ran into the limitation that you cannot have more than one timestamp column in a table with a default of CURRENT_TIMESTAMP() These are really silly limitations that should be removed in the 5.0.x beta series. Preferably, datetime should allow DEFAULT NOW(). ************************************** TABLE IDENTIFIER CASE SENSITIVITY ************************************** My reading of the documentation says that table identifier case sensitivity depends upon the underlying file system, and that the default can be changed by a startup variable to the mysql daemon. I can just see the conversation ... Me: Gee Mr. Big ISP, I need you to change a global setting on your database for your customer to run my application: Mr. Big ISP: Rrrrighttttttt There really needs to be a session level setting to control this issue. This is really ridiculous. The SQL Standard says that identifiers are not case sensitive. My application is probably OK, but this is just ridiculous. Even if I fix my App, I'll have to verify every sql statement under MySQL to make sure that it works with it. George Sexton MH Software, Inc. http://www.mhsoftware.com/ Voice: 303 438 9585 -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]