我知道这已被多次询问,但无论我在PostgreSQL 9.4中尝试什么,日期风格都会在一分钟左右恢复到ISO,MDY。我需要日期格式:
SET datestyle to SQL,DMY;
Show datesyle;
E.g。 dd / mm / yyyy ... - 输入后,'show'命令显示SQL,DMY
SELECT NOW();
以正确的格式显示当前日期
每次我应用此设置并查看我的日期列时,它仍会将我的输入转换为yyyy-mm-dd。然后不久,如果我跑:
Show datestyle;
回到ISO,MDY。
我已经通过其他三种方式应用了约会方式:
ALTER DATABASE "database" SET datestyle TO SQL,DMY;
ALTER USER "User" SET datestyle to SQL,DMY;
我花了几个小时查阅建议并尝试编辑LC_TIME,结果是一样的。
答案 0 :(得分:2)
我怀疑答案就在这里:http://www.postgresql.org/docs/current/static/sql-set.html
引用“ SET仅影响当前会话使用的值。”
但我想知道你为什么要强制使用默认日期样式。只需在所有互动中使用YYYY-MM-DD即可。这是ISO标准!当外部提供该值时,请使用 to_date()进行转换,并使用 to_char()输出格式。
答案 1 :(得分:0)
对我有用的是修改" datestyle" postgresql.conf中的属性。就我而言,它位于/etc/postgresql/9.5/main/postgresql.conf
祝你好运!