3
我最近使用postgresql-9.1。如何为Postgresql中的列分配数据类型小数?
出于某种原因,我必须使用不支持数据类型数字但小数点的技术。不幸的是,我在Postgresql中为它们分配了十进制的列的数据类型始终是数字。我试图改变类型,但它不起作用,虽然我已经得到的消息就像“查询返回成功,没有结果在12毫秒”。
所以,我想知道如何获得列为十进制。
任何帮助将不胜感激。
例如
我创建条款:
CREATE TABLE IF NOT EXISTS htest
(
dsizemin decimal(8,3) NOT NULL,
dsizemax decimal(8,3) NOT NULL,
hidentifier character varying(10) NOT NULL,
tgrade character varying(10) NOT NULL,
fdvalue decimal(8,3),
CONSTRAINT htest_pkey PRIMARY KEY (dsizemin , dsizemax , hidentifier , tgrade)
);
我改变条款:
ALTER TABLE htest
ALTER COLUMN dsizemin TYPE decimal(8,3);
但它不工作。
[“类型'decimal'和'numeric'是等效的]](http://www.postgresql.org/docs/current/interactive/datatype-numeric.html#DATATYPE-NUMERIC-DECIMAL)。该工具向数据库询问表的模式并且不理解创建“decimal”列时返回的“数字”的问题? – 2013-03-08 03:50:31
'decimal'只是'numeric'的一个别名,用于为Oracle编写的程序更快乐一些。它看起来并不像是一个带有DOMAIN的“真实”别名,所以我怀疑你运气不好,除非你可以让程序处理显示'numeric'的表元数据,它在'期望'decimal '。试试'SELECT'1':: decimal;'来看看我的意思。 – 2013-03-08 04:45:20
to @muistooshort:是的,该工具不理解数字,所以很伤心。 – Xing 2013-03-09 05:49:16