From 4958eec7ec52f4208deb1dad18900af6db728b66 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 --- sql/mysqld.cc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'sql/mysqld.cc') diff --git a/sql/mysqld.cc b/sql/mysqld.cc index b7ea52fbef6..face6570593 100644 --- a/sql/mysqld.cc +++ b/sql/mysqld.cc @@ -225,8 +225,10 @@ static const char *sql_mode_names[]= "ERROR_FOR_DIVISION_BY_ZERO", "TRADITIONAL", "NO_AUTO_CREATE_USER", "HIGH_NOT_PRECEDENCE", "NO_ENGINE_SUBSTITUTION", + "PAD_CHAR_TO_FULL_LENGTH", NullS }; + static const unsigned int sql_mode_names_len[]= { /*REAL_AS_FLOAT*/ 13, @@ -259,8 +261,10 @@ static const unsigned int sql_mode_names_len[]= /*TRADITIONAL*/ 11, /*NO_AUTO_CREATE_USER*/ 19, /*HIGH_NOT_PRECEDENCE*/ 19, - /*NO_ENGINE_SUBSTITUTION*/ 22 + /*NO_ENGINE_SUBSTITUTION*/ 22, + /*PAD_CHAR_TO_FULL_LENGTH*/ 23 }; + TYPELIB sql_mode_typelib= { array_elements(sql_mode_names)-1,"", sql_mode_names, (unsigned int *)sql_mode_names_len }; -- cgit v1.2.1