FreeTDS奇怪的日期时间格式


FreeTDS strange date time format

将应用程序移动到具有更新软件的新服务器后(从php 5.2.17->5.3.15移动,FreeTDS 0.64->0.82)

SELECT GETDATE()

任何其他日期时间函数/列都会产生类似于以下内容的内容:

2012-06-219 51:527:
// proper time: 2012-08-06 09:33:02

我知道我可以在select中使用convert,但DB中有许多存储过程我无法更改。

我试图更改/etc/locales.conf并设置date format = %Y-%m-%d %H:%M:%S,并使用ini_set('mssql.datetimeconvert',1);,但freetds似乎忽略了它并返回Aug 06 2012 09:33AM

有没有一种方法可以在不修改每个查询的情况下以标准格式检索日期时间列?

我用一种蛮力的方式解决了这个问题——在/etc/locales.conf中的所有区域设置中更改了date format,我不知道哪一个有效,但我很确定它们都没有用作系统区域设置。

无论如何,不建议使用datetimeconvert,并且在一些数据库抽象层库(本例中为adodb)中已关闭,因此我仍然感兴趣的是,是否有任何方法可以使其显示正确的日期-时间