SQL Server 2005失败:将日期作为字符串返回

时间:2010-03-30 17:23:32

标签: sql-server sql-server-2005 utf-8

我正在使用SQL Server PHP驱动程序,我认为可以在不知道这是什么的情况下回答这个问题。

我多次遇到过这个问题,NAMES是什么意思?列名?:

SET NAMES utf8

是否有类似上述的查询会将我的日期作为字符串返回?出于某种原因,在我的Vista上的SQL Sever 2008上,这有用:

$connectionInfo = array('Database' => $dbname, 'ReturnDatesAsStrings' => true)

但是上面的'ReturnDatesAsStrings'在Windows服务器上的SQL Server 2005上不起作用?设置完上面后我无法执行任何查询!它给了我这个错误:

Array ( [0] => Array ( [0] => IMSSP [SQLSTATE] => IMSSP [1] => -1 [code] => -1 [2] =>
Invalid option ReturnDatesAsStrings was passed to sqlsrv_connect. [message] => 
Invalid option ReturnDatesAsStrings was passed to sqlsrv_connect. ) ) 

SQL Server 2005是否支持ReturnDatesAsStrings?我可以传递一些其他参数吗?

感谢大家的帮助

修改

我应该提到这个但是如果有一个解决方案,我希望能够在执行任何查询之前设置一个设置形式的解决方案,因为我无法控制将执行哪些查询。

2 个答案:

答案 0 :(得分:2)

我怀疑你的问题是一个老司机。版本1.1中添加了“ReturnDatesAsStrings”功能,因此您可能拥有1.0并且只需要升级。

答案 1 :(得分:1)

如果您想以字符串形式返回日期,可以将其转换为

SELECT CONVERT (VarChar (30), DateTimeColumn, 121) as DateTimeColumnString

在这里阅读更多

http://msdn.microsoft.com/en-us/library/ms187928.aspx