ApacheのサーバーでDoctrine 2.2をPHP 5.3で使用しています。Doctrine 2:SQL Server 2008apmのDateTime coloumnを更新できません
これまでのところ、私は次のような問題につまずいてきました: SQLSTATE [22007]:[Microsoft]の[SQL Serverネイティブクライアント10.0] [SQL Serverの]の変換が失敗した私は、私が取得日時列を更新しようとすると 文字列から日付および/または時刻を変換します。
私は今までに列に乗ってそれを使って1日だけ新しい日付を設定しました......同じ結果になりました。
代わりに、データベースの列とエンティティの列の両方をdatetimeからdateに変更すると、意図した通りに機能します。
私の主な問題は、datetime列を使用する必要があるフィールドがいくつかあることです。ここで
は私のコードです:
(誕生日は私が日付に変更カラムであった....そしてそれは私のために可能であるいくつかの列の一つである):
//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型のインスタンスを渡しています。私がしているのは次の通りです(生まれた日は私が今日まで変わったコラムでした....それが私にとって可能な数少ない列の1つです)。 $ help- $ object-> getBirthDate(); //データベースからの生年月日を表すdatetimeオブジェクトを返します $ help-> setTimestamp(mktime($ time [0]、$ time [1]、$ time [2]、$ date [2]、$ date [ 1]、$ date [0])); $ help-> format(\ DateTime :: ISO8601); $ object-> setBirthDate($ help); – Thomas