有没有办法使用埃塞俄比亚日期格式在PostgreSQL数据库中存储日期?我试图存储2月29日或30日,但它会抛出错误,因为在朱利安历法中没有这样的事情。有什么输入吗?
答案 0 :(得分:1)
我不确定我会告诉你一些新事物,但是......
数据库由程序或接口使用,我从来没有看到最终用户在psql控制台中使用的数据库。
如果您要开发一个必须在特定日历中显示日期的应用程序,您可以在TIMESTAMP
中的PostgreSQL中存储日期。所有带日期的操作在数据库中都能正常工作。但您必须手动将TIMESTAMP
转换为字符串表示形式,反之亦然。如果这对您的应用程序来说是最重要的,那么您将这样做。
所有必须返回日期的查询,您将转换为DOUBLE PRECISION
例如
SELECT EXTRACT(EPOCH FROM timestamp_field)
返回DOUBLE PRECISION
值,表示数字格式的时间戳。
您使用内置函数TIMESTAMP
从to_timestamp
中的数字展示转换的查询中的所有日期参数:
update table_name set
timestamp_fileld = to_timestamp(1384852375.46666)
另一种解决方案是编写psql函数,直接在查询中执行此操作,但无论如何,您需要处理查询中日期字段的每个输入/输出。