2017-04-24 101 views
0

我有一个PostgreSQL数据库,datestyle设置为“german,dmy”,它在psql上可以正常工作。但是,当我的应用程序试图从这个数据库检索日期(使用unixODBC驱动程序)这些日期“到达”在“iso”风格...我的应用程序似乎不理解PostgreSQL datestytle设置

它可能是由驱动程序?有什么我应该做的unixODBC为了检索日期以相同的格式设置为数据库?

在此先感谢。

+0

你应该发布您的设置代码,并查看您的odbc的默认设置。 ODBC可能会给你一个时间结构。 – HSchmale

回答

1

你可以尝试设置默认DATESTYLE用户:

so=# alter user tt set datestyle to 'german,dmy'; 
ALTER ROLE 
so=# select now(); 
       now 
------------------------------- 
2017-04-24 21:33:53.653813+01 
(1 row) 

so=# show datestyle; 
DateStyle 
----------- 
ISO, MDY 
(1 row) 

so=# \q 

现在,随着用户TT连接:

MacBook-Air:~ vao$ psql so -U tt 
psql (9.6.1) 
Type "help" for help. 

so=> select now(); 
       now 
-------------------------------- 
24.04.2017 21:34:03.874708 IST 
(1 row) 

so=> show datestyle; 
    DateStyle 
------------- 
German, DMY 
(1 row) 

如果没有帮助,ODBC 积极套DATESTYLE本身。如果那样,你有同样的.psqlrc样式德国...

同时检查ODBC数据源的高级选项卡

InitializationString =集DATESTYLE为 “德国,DMY”

相关问题