mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Fix for bug #12173 (show create table crash)
mysql-test/r/type_newdecimal.result: test result fixed mysql-test/t/type_newdecimal.test: testcase strings/decimal.c: we always add one int-part digit even if decimal(10,10) (no int part declared)
This commit is contained in:
@ -976,3 +976,13 @@ select * from t1;
|
|||||||
f1 f2 f3 f4 f5 f6 f7 f8
|
f1 f2 f3 f4 f5 f6 f7 f8
|
||||||
1 18 99 100 104 200 1000 10000
|
1 18 99 100 104 200 1000 10000
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
create table t1 (
|
||||||
|
f0 decimal (30,30) zerofill not null DEFAULT 0,
|
||||||
|
f1 decimal (0,0) zerofill not null default 0);
|
||||||
|
show create table t1;
|
||||||
|
Table Create Table
|
||||||
|
t1 CREATE TABLE `t1` (
|
||||||
|
`f0` decimal(30,30) unsigned zerofill NOT NULL default '0.000000000000000000000000000000',
|
||||||
|
`f1` decimal(10,0) unsigned zerofill NOT NULL default '0000000000'
|
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||||
|
drop table t1;
|
||||||
|
@ -1007,3 +1007,11 @@ insert into t1 (f1) values (1);
|
|||||||
select * from t1;
|
select * from t1;
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Bug 12173 (show create table fails)
|
||||||
|
#
|
||||||
|
create table t1 (
|
||||||
|
f0 decimal (30,30) zerofill not null DEFAULT 0,
|
||||||
|
f1 decimal (0,0) zerofill not null default 0);
|
||||||
|
show create table t1;
|
||||||
|
drop table t1;
|
||||||
|
@ -351,7 +351,8 @@ int decimal2string(decimal_t *from, char *to, int *to_len,
|
|||||||
buf0=&tmp;
|
buf0=&tmp;
|
||||||
}
|
}
|
||||||
|
|
||||||
intg_len= fixed_precision ? fixed_intg : (intg ? intg : 1);
|
if (!(intg_len= fixed_precision ? fixed_intg : intg))
|
||||||
|
intg_len= 1;
|
||||||
frac_len= fixed_precision ? fixed_decimals : frac;
|
frac_len= fixed_precision ? fixed_decimals : frac;
|
||||||
len= from->sign + intg_len + test(frac) + frac_len;
|
len= from->sign + intg_len + test(frac) + frac_len;
|
||||||
if (fixed_precision)
|
if (fixed_precision)
|
||||||
|
Reference in New Issue
Block a user