WL#982: SHOW FIELDS: Change the values returned for DEFAULT field

Affects: Server-7.1   —   Status: Assigned   —   Priority: Medium

Fix and/or change the current DEFAULT values that are returned in 4.1, so that 
they meet the CLI/ODBC specification requirements. 
 
Here is how the DEFAULT value should be, as per CLI 2.1 specification: 
 
If the default value is a numeric literal, then the 'DEFAULT' field from 'DESC 
table_name' or 'SHOW FIELDS[COLUMNS] FROM table_name' contains the character 
representation of the numeric literal with no enclosing single quotes. If the 
default value is a character string, then this column is that string enclosed 
in single quotes. If the default value a pseudo-literal, such as for DATE, 
TIME, and TIMESTAMP columns, then this column contains the keyword of the 
pseudo-literal (e.g. CURRENT DATE) with no enclosing quotes.  
 
If NULL was specified as the default value, then this column returns the word 
NULL, not enclosed in quotes. If no default value was specified, then this 
column is NULL. 
 
For example let's consider the following table definition: 
 
CREATE TABLE test_default(a int, b int NOT NULL, c INT DEFAULT NULL, d INT 
DEFAULT 1, e INT DEFAULT '1', f int DEFAULT 'NULL', g int NOT NULL PRIMARY 
KEY, h int NOT NULL PRIMARY KEY AUTO_INCREMENT) should contain the DEFAULT 
VALUES as: 
 
DEFAULT: 
--------- 
NULL 
"NULL" 
NULL, 
1, 
"'1'", 
"'NULL'", 
NULL, 
NULL. 
 
Special considerations: 
 
1. TIMESTAMP: 
Avoid sending the "0000-00-00 00:00:00"  string as the DEFAULT value for 
TIMESTAMP field. Instead represent this using NOW().