Thread: MySQL 4.1 Features

MySQL 4.1 Features

From
"Christopher Kings-Lynne"
Date:
Looks like they've caught up on a lot of our features.  I have to say I
appreciate them adding SERIAL as an alias for AUTO_INCREMENT.  Perhaps we
should return the favour? :)

(BTW, sorry to ppl who aren't interested, but I think it's important to see
what other db's are doing.  Also, someone asked me what kind of subselects
they support.)

The fact that they have GIS, subselects and prepared statements now is
interesting.

D.1.1 Changes in release 4.1.0

Faster binary protocol used with prepared statements.
In CREATE TABLE foo (a int not null primary key) the PRIMARY word is now
optional.
In CREATE TABLE the attribute SERIAL is now an alias for BIGINT NOT NULL
AUTO_INCREMENT UNIQUE.
SELECT ... FROM DUAL is an alias for SELECT .... (To be compatible with some
other databases).
If once creates a too long CHAR/VARCHAR it's now automatically changed to
TEXT or BLOB; One will get a warning in this case.
One can specify the different BLOB/TEXT types with the syntax BLOB(length)
and TEXT(length). MySQL will automatically change it to one of the internal
BLOB/TEXT types.
CHAR BYTE is an alias for CHAR BINARY.
VARCHARACTER is an alias for VARCHAR.
New operators integer MOD integer and integer DIV integer.
SERIAL DEFAULT VALUE is an alias for AUTO_INCREMENT.
TRUE and FALSE are added as alias for 0 and 1.
Aliases are now forced in derived tables, as per SQL-99
Fixed SELECT .. LIMIT 0 to return proper row count for SQL_CALC_FOUND_ROWS.
One can specify many temporary directories to be used in a round-robin
fashion with: --tmpdir=dirname1:dirname2:dirname3.
Subqueries: SELECT * from t1 where t1.a=(SELECT t2.b FROM t2).
Derived tables: SELECT a from t1, (select * from t2) WHERE t1.a=t2.a
Character sets to be defined per column, table and database.
Unicode (UTF8) support.
BTREE index on HEAP tables.
Faster embedded server.
One can add a comment per column in CREATE TABLE.
SHOW FULL COLUMNS FROM table_name shows column comments.
ALTER DATABASE.
Support for GIS (Geometrical data).
SHOW WARNINGS; Shows warnings from the last command.
One can specify a column type for a colum in CREATE TABLE ... SELECT by
defining the column in the CREATE part.
CREATE TABLE foo (a tinyint not null) SELECT b+1 AS 'a' FROM bar;
expr SOUNDS LIKE expr same as SOUNDEX(expr)=SOUNDEX(expr).
VARIANCE(expr) returns the standard variance of expr

Chris



Re: MySQL 4.1 Features

From
Philip Warner
Date:
At 02:49 PM 18/12/2002 +0800, Christopher Kings-Lynne wrote:
>Looks like they've caught up on a lot of our features.

Am I missing something here, or is 4.1 vapourware? Based on mysql.com, 
3.23.45a is current production, and 4.0.5a is current beta.

I am happy to believe I missed something, but if not, I think we should 
either compare our plans for 7.4 with 4.1, or 3.2/4.0 with 7.3.


----------------------------------------------------------------
Philip Warner                    |     __---_____
Albatross Consulting Pty. Ltd.   |----/       -  \
(A.B.N. 75 008 659 498)          |          /(@)   ______---_
Tel: (+61) 0500 83 82 81         |                 _________  \
Fax: (+61) 03 5330 3172          |                 ___________ |
Http://www.rhyme.com.au          |                /           \|                                 |    --________--
PGP key available upon request,  |  /
and from pgp5.ai.mit.edu:11371   |/



Re: MySQL 4.1 Features

From
"Christopher Kings-Lynne"
Date:
> Am I missing something here, or is 4.1 vapourware? Based on mysql.com, 
> 3.23.45a is current production, and 4.0.5a is current beta.
> 
> I am happy to believe I missed something, but if not, I think we should 
> either compare our plans for 7.4 with 4.1, or 3.2/4.0 with 7.3.

OK, fair enough.

Chris



Re: MySQL 4.1 Features

From
Neil Conway
Date:
On Wed, 2002-12-18 at 01:49, Christopher Kings-Lynne wrote:
> Looks like they've caught up on a lot of our features.  I have to say I
> appreciate them adding SERIAL as an alias for AUTO_INCREMENT.  Perhaps we
> should return the favour? :)

Well, it's not the same as PostgreSQL's serial (which is a 32-bit NOT
NULL incrementing integer -- MySQL's serial is a 64-bit unique, NOT NULL
incrementing integer).

Personally, I think the implementations are different enough that making
AUTO_INCREMENT an alias for SERIAL on the PostgreSQL side of things
would just confuse the situation further...

Cheers,

Neil
-- 
Neil Conway <neilc@samurai.com> || PGP Key ID: DB3C29FC