文章目录
一、MySQL数据库(注意备份和留痕)
修改数据库 decimal 字段信息
1、查询到所有的小数字段信息
可以自己在where中添加筛选条件,选出需要修改的字段信息
SELECT
TABLE_SCHEMA,
TABLE_NAME,
COLUMN_NAME,
NUMERIC_PRECISION,
NUMERIC_SCALE,
COLUMN_TYPE,
IF(COLUMN_DEFAULT IS NULL, '', CONCAT(' DEFAULT ', COLUMN_DEFAULT, ' ')) COLUMN_DEFAULT,
COLUMN_COMMENT
FROM
information_schema.`COLUMNS`
WHERE
`DATA_TYPE` = 'decimal'
ORDER BY
TABLE_SCHEMA,
TABLE_NAME,
ORDINAL_POSITION;
2、导出查询结果
选excel格式
导出步骤
excel格式
3、组装更新SQL
直接更新
information_schema.COLUMNS
表很不安全。不建议这么弄,我也没更新成功。
组装ALTER
语句进行更新。
TABLE_SCHEMA | TABLE_NAME | COLUMN_NAME | NUMERIC_PRECISION | 目标小数位数 | COLUMN_DEFAULT | COLUMN_COMMENT | 插入SQL | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ALTER TABLE | 数据库名 | . | 表名 | MODIFY COLUMN | 字段名 | decimal( | 整数部分长度 | , | 目标小数位数 | ) | 默认值 | COMMENT ’ | 注释 | '; | =CONCAT(A2:O2) |
注意
';
复制进excel里可能需要进行转义,在'
前面再加一个'
就可以了。
二、代码
修改代码中 Bigdecimal 的相关处理
1、java.math.BigDecimal#setScale
直接全局搜索用到 setScale
的地方
2、java.text.DecimalFormat
直接全局搜索用到 DecimalFormat
的地方
3、java.lang.String#format
直接全局搜索用到 String.format
的地方