微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在Postgresql中为列分配数据类型十进制?

我最近在使用 postgresql-9.1.

出于某种原因,我必须使用不支持数据类型数字但小数的技术.不幸的是,我在Postgresql中为它们分配了小数的列的数据类型总是数字.我试图改变类型,但它没有工作,虽然我有消息就像“查询成功返回12毫秒没有结果”.

所以,我想知道如何让列成为小数.

任何帮助将非常感激.

例如

我的创建条款:

CREATE TABLE IF NOT EXISTS htest
(
  dsizemin decimal(8,3) NOT NULL,dsizemax decimal(8,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);

但它不起作用.

解决方法

在Postgresql中,“decimal”是“numeric”的别名,当你的应用程序认为它需要数据库中名为“decimal”的类型时会产生一些问题.正如克雷格上面提到的,你甚至无法创建一个名为“十进制”的域名

数据库方面没有好的解决方法.您唯一能做的就是更改应用程序以期望返回数字数据类型.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐