Oracle 5.0 Reference Manual page 170

Table of Contents

Advertisement

• Incompatible change: If you have created a user-defined function (UDF) with a given name and
upgrade MySQL to a version that implements a new built-in function with the same name, the
UDF becomes inaccessible. To correct this, use
CREATE FUNCTION
of MySQL implements a built-in function with the same name as an existing stored function, you
have two choices: Rename the stored function to use a nonconflicting name, or change calls to the
function so that they use a database qualifier (that is, use
Section 9.2.3, "Function Name Parsing and
interprets references to different kinds of functions.
• Incompatible change: As of MySQL 5.0.15, the
rather than a string in the connection character set. An optional
may be used to produce a result in a specific character set instead. Also, arguments larger than
256 produce multiple characters. They are no longer interpreted modulo 256 to produce a single
character each. These changes may cause some incompatibilities:
CHAR(ORD('A')) = 'a'
mysql>
SELECT CHAR(ORD('A')) = 'a';
+----------------------+
| CHAR(ORD('A')) = 'a' |
+----------------------+
|
+----------------------+
To perform a case-insensitive comparison, you can produce a result string in a nonbinary
character set by adding a
mysql>
SELECT CHAR(ORD('A') USING latin1) = 'a';
+-----------------------------------+
| CHAR(ORD('A') USING latin1) = 'a' |
+-----------------------------------+
|
+-----------------------------------+
mysql>
SELECT CONVERT(CHAR(ORD('A')) USING latin1) = 'a';
+--------------------------------------------+
| CONVERT(CHAR(ORD('A')) USING latin1) = 'a' |
+--------------------------------------------+
|
+--------------------------------------------+
• Incompatible change: Beginning with MySQL 5.0.12, natural joins and joins with USING,
including outer join variants, are processed according to the SQL:2003 standard. The changes
include elimination of redundant output columns for
clause and proper ordering of output columns. The precedence of the comma operator also
USING
now is lower compared to JOIN,
These changes make MySQL more compliant with standard SQL. However, they can result in
different output columns for some joins. Also, some queries that appeared to work correctly prior to
5.0.12 must be rewritten to comply with the standard. For details about the scope of the changes
and examples that show what query rewrites are necessary, see
CREATE TABLE ... SELECT CHAR(...)
column. To produce a
convert the
CHAR()
• Previously, the following statements inserted the value
the table:
CREATE TABLE t (ucs2_column CHAR(2) CHARACTER SET ucs2);
INSERT INTO t VALUES (CHAR(0x41,0x41));
As of MySQL 5.0.15, the statements insert a single
Upgrading MySQL
to re-create the UDF with a different nonconflicting name. If a new version
is no longer true:
0 |
clause or converting the result:
USING
1 |
JOIN, and so forth.
LEFT
column, use
VARCHAR
[886]
result into a nonbinary character set.
150
DROP FUNCTION
db_name.func_name()
Resolution", for the rules describing how the server
[886]
function returns a binary string
CHAR()
USING charset_name
1 |
joins and joins specified with a
NATURAL
produces a
VARBINARY
or
USING
CONVERT()
0x00410041 ('AA'
character with value 0x4141.
ucs2
to drop the UDF, and then use
syntax). See
clause
Section 13.2.8.2,
"JOIN
column, not a
VARCHAR
[948]
as just described to
as a
ucs2
Syntax".
string) into

Advertisement

Table of Contents
loading

This manual is also suitable for:

Mysql 5.0

Table of Contents