From 809e23797cc230bb108d686617d8d050db70f996 Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 27 Apr 2007 01:12:09 +0300 Subject: Added sql_mode PAD_CHAR_TO_FULL_LENGTH (WL#921) This pads the value of CHAR columns with spaces up to full column length (according to ANSI) It's not makde part of oracle or ansi mode yet, as this would cause a notable behaviour change. Added uuid_short(), a generator for increasing 'unique' longlong integers (8 bytes) mysql-test/r/func_misc.result: Update results mysql-test/r/sql_mode.result: Update results mysql-test/t/func_misc.test: Added test for uuid_short() mysql-test/t/sql_mode.test: Added test for sql_mode=PAD_CHAR_TO_FULL_LENGTH (#WL921) sql/field.cc: Added sql_mode PAD_CHAR_TO_FULL_LENGTH sql/item.cc: Initialize uuid_short() sql/item_create.cc: Added creation of uuid_short() sql/item_func.cc: Added uuid_short() sql/item_func.h: Added uuid_short() sql/mysql_priv.h: Added sql_mode PAD_CHAR_TO_FULL_LENGTH sql/mysqld.cc: Added sql_mode PAD_CHAR_TO_FULL_LENGTH --- mysql-test/t/sql_mode.test | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'mysql-test/t/sql_mode.test') diff --git a/mysql-test/t/sql_mode.test b/mysql-test/t/sql_mode.test index 8542c2b7927..7a9036c8621 100644 --- a/mysql-test/t/sql_mode.test +++ b/mysql-test/t/sql_mode.test @@ -264,7 +264,18 @@ select @@sql_mode; set sql_mode=16384+(65536*4); select @@sql_mode; --error 1231 -set sql_mode=2147483648; # that mode does not exist +set sql_mode=2147483648*2; # that mode does not exist select @@sql_mode; +# +# Test WL921: Retain spaces when retrieving CHAR column values + +set sql_mode=PAD_CHAR_TO_FULL_LENGTH; +create table t1 (a int auto_increment primary key, b char(5)); +insert into t1 (b) values('a'),('b\t'),('c '); +select concat('x',b,'x') from t1; +set sql_mode=0; +select concat('x',b,'x') from t1; +drop table t1; + SET @@SQL_MODE=@OLD_SQL_MODE; -- cgit v1.2.1