Try this:
ALTER Table account_invoice ALTER COLUMN amount_total TYPE DECIMAL(10,5);
DECIMAL(X, Y)
-> X represents full length and Y represents precision of the number.
Question
I tried to change precision like this:
ALTER Table account_invoice ALTER amount_total SET NUMERIC(5);
But I get syntax error, so I'm clearly doing something wrong. What is the right syntax to change precision of numeric in PostgreSQL?
Solution
Try this:
ALTER Table account_invoice ALTER COLUMN amount_total TYPE DECIMAL(10,5);
DECIMAL(X, Y)
-> X represents full length and Y represents precision of the number.
OTHER TIPS
You can use this:
ALTER Table account_invoice ALTER amount_total SET DATA TYPE NUMERIC(5,Y);
where Y is your required level of precision.
You need to ue the TYPE
keyword after the column name, not SET
ALTER Table account_invoice ALTER amount_total TYPE NUMERIC(5);
See the docs: ALTER TABLE