嗨,我是postgres的新手, 在将数据插入货币类型字段时,我收到的错误是.. 这里我的样本表是
CREATE TABLE x_table
(
t_name character varying(40) NOT NULL,
currency money
)
INSERT INTO x_table(t_name, currency)
VALUES ('TEST', 1000);
并收到错误消息
ERROR: column "currency" is of type money but expression is of type integer
SQL state: 42804
。
所以任何人都可以说如何解决这个问题。 提前致谢
答案 0 :(得分:5)
在现代版本中(使用9.1和9.3测试),上面的代码示例按原样运行。
在旧版本中,没有从integer
到money
定义隐式广告
Quoting the the release notes for Postgres 9.1:
添加从
int4
和int8
到money
(Joey Adams)的投射支持
另外,请务必考虑存储货币信息的替代方法:
PostgreSQL: Which Datatype should be used for Currency?