I'm really happy you've pointed these issues. Now we can discuss. The reason why `NUMERIC(19,4)` (or `DECIMAL(19,4)`) is because MySQL [has](https://github.com/yiisoft/yii/blob/master/framework/db/schema/mysql/CMysqlSchema.php#L37) `DECIMAL(19,4)`, and they are compatible. I didn't want to break anything.

CUBRID's `MONETARY` may be suitable but it has slightly different syntax. It is the same as `NUMERIC(19,2)`, i.e. `scale=4` vs. `scale=2`. I didn't know if somewhere this was badly important. So didn't want to risk.