我在apache服務器上使用Doctrine 2.2和php 5.3。Doctrine 2:無法更新SQL Server 2008上的DateTime coloumn
到目前爲止,我在下面的問題絆倒: 當我嘗試更新日期時間列我得到: SQLSTATE [22007]:[微軟] [SQL Server本機客戶端10.0] [SQL服務器]轉換失敗時從字符串中轉換日期和/或時間。
我甚至已經走到了這一列,然後使用它只有1天添加到它來設置新的日期......相同的結果。
當我將數據庫中的列和實體中的日期時間都更改爲日期時,它的功能與預期相同。
我的主要問題是,有幾個字段,我需要使用日期時間列。
這裏是我的代碼:
(生日爲我改日期列....而且是幾列,其中這是可能的,我的一個):
//This returns the datetime object that represents birthdate from the database
$help=$object->getBirthDate();
$help->setTimestamp(mktime($time[0],$time[1],$time[2],$date[2],$date[1],$date[0]));
$help->format(\DateTime::ISO8601);
$object->setBirthDate($help);
是否有人知道一個解決方法在這裏?
這裏的任何幫助,非常感謝。
是的,我路過一個DateTime實例。我做的是如下(生日是我改變日期的列....並且是我可能爲數不多的幾列之一): $ help = $ object-> getBirthDate(); //返回datetime對象,它代表數據庫中的出生日期 $ help-> setTimestamp(mktime($ time [0],$ time [1],$ time [2],$ date [2],$ date [ 1],$日期[0])); $ help-> format(\ DateTime :: ISO8601); $ object-> setBirthDate($ help); – Thomas