1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

SET NAMES has been extended to support optional collation:

SET NAMES <charset name> [COLLATE <collation name>]
This commit is contained in:
bar@bar.mysql.r18.ru
2003-03-05 12:37:39 +04:00
parent a95c024067
commit 4f930a7c2a
5 changed files with 70 additions and 18 deletions

View File

@ -510,4 +510,22 @@ t1 CREATE TABLE `t1` (
SHOW FIELDS FROM t1;
Field Type Collation Null Key Default Extra
latin1_f char(32) latin1_bin YES NULL
SET NAMES 'latin1';
SET NAMES latin1;
SELECT charset('a'),collation('a'),coercibility('a'),'a'='A';
charset('a') collation('a') coercibility('a') 'a'='A'
latin1 latin1 2 1
SET NAMES latin1 COLLATE latin1_bin;
SET NAMES 'latin1' COLLATE 'latin1_bin';
SELECT charset('a'),collation('a'),coercibility('a'),'a'='A';
charset('a') collation('a') coercibility('a') 'a'='A'
latin1 latin1_bin 2 0
SET NAMES DEFAULT;
SELECT charset('a'),collation('a'),coercibility('a'),'a'='A';
charset('a') collation('a') coercibility('a') 'a'='A'
latin1 latin1 2 1
SET NAMES latin1 COLLATE koi8r;
COLLATION 'koi8r' is not valid for CHARACTER SET 'latin1'
SET NAMES 'DEFAULT';
Unknown character set: 'DEFAULT'
DROP TABLE t1;

View File

@ -127,4 +127,18 @@ ALTER TABLE t1 CHARACTER SET latin1 COLLATE latin1_bin;
SHOW CREATE TABLE t1;
SHOW FIELDS FROM t1;
SET NAMES 'latin1';
SET NAMES latin1;
SELECT charset('a'),collation('a'),coercibility('a'),'a'='A';
SET NAMES latin1 COLLATE latin1_bin;
SET NAMES 'latin1' COLLATE 'latin1_bin';
SELECT charset('a'),collation('a'),coercibility('a'),'a'='A';
SET NAMES DEFAULT;
SELECT charset('a'),collation('a'),coercibility('a'),'a'='A';
--error 1251
SET NAMES latin1 COLLATE koi8r;
--error 1115
SET NAMES 'DEFAULT';
DROP TABLE t1;