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

Bug#18265: mysql client: No longer right-justifies numeric columns

Also fixes a new bug for which "NULL" wasn't printed (because the 
data it represents has length zero).  (Discovered my Paul DuBois.)


client/mysql.cc:
  Cleaned up the interactive-session table-printing function.
  
  - No longer rely on the length of the data to pad column boundries.
  - Be smarter about how we detect if the column is NULL.
  - Document how multibyte characters affect the output printing.
  - Use more descriptive variable names.
  
  More importantly, (re-)add these features that were crippled in an
  earlier change:
  - Print "NULL".
  - Right-justify numbers.
mysql-test/r/mysql.result:
  Updated old result and added new case.
mysql-test/t/mysql.test:
  Added new test case.
This commit is contained in:
unknown
2006-04-04 17:35:07 -04:00
parent 686b42da4d
commit 0fae7e3b01
3 changed files with 68 additions and 32 deletions

View File

@ -72,7 +72,16 @@ c_cp932
+----------------------+------------+--------+
| concat('>',col1,'<') | col2 | col3 |
+----------------------+------------+--------+
| >a < | b | 123421 |
| >a < | 0123456789 | 4 |
| >abcd< | | 4 |
| >a < | b | 123421 |
| >a < | 0123456789 | 4 |
| >abcd< | NULL | 4 |
+----------------------+------------+--------+
+------+------+---------------------------+
| i | j | k |
+------+------+---------------------------+
| 1 | NULL | NULL |
| NULL | NULL | <-----------------------> |
| NULL | NULL | <----- |
| NULL | NULL | Τη γλώσσα |
| NULL | NULL | ᛖᚴ ᚷᛖᛏ |
+------+------+---------------------------+

View File

@ -61,3 +61,9 @@ drop table t1;
# Bug#16859 -- NULLs in columns must not truncate data as if a C-language "string".
#
--exec $MYSQL -t test -e "create table t1 (col1 binary(4), col2 varchar(10), col3 int); insert into t1 values ('a', 'b', 123421),('a ', '0123456789', 4), ('abcd', '', 4); select concat('>',col1,'<'), col2, col3 from t1; drop table t1;" 2>&1
#
# Bug#18265 -- mysql client: No longer right-justifies numeric columns
#
--exec $MYSQL -t --default-character-set utf8 test -e "create table t1 (i int, j int, k char(25) charset utf8); insert into t1 (i) values (1); insert into t1 (k) values ('<----------------------->'); insert into t1 (k) values ('<-----'); insert into t1 (k) values ('Τη γλώσσα'); insert into t1 (k) values ('ᛖᚴ ᚷᛖᛏ'); select * from t1; DROP TABLE t1;"