Ошибка Doctrine 2 ORA-01843: недействительный месяц

я использую Учение 2 а также Yii а также Oracle,

у меня есть DateTime поле

    /**
* @var \DateTime
*
* @ORM\Column(name="CREATE_DATE", type="datetime", nullable=true)
*/
private $createDate;

Я использовал этот код, чтобы вставить человека в таблицу

        $date = new \DateTime("now");
$person = new Person();
$person->setCreateDate($date);
$person->setLastName('name');
$entityManager->persist($person);
$entityManager->flush();

но он возвращает эту ошибку:

An exception occurred while executing 'INSERT INTO PERSON (PERSON_ID, CREATE_DATE, LAST_NAME) VALUES (?, ?, ?)' with params [27, "2014-10-29 09:23:38", "name"]:

ORA-01843: not a valid month

Помогите мне, пожалуйста.

1

Решение

Если кто-то использует Учение с Symfony, это намного проще Просто нужно 2 EventListener и активировать их в определении сервиса согласно этой сути —
https://gist.github.com/phpfour/4290cc1f0892dda4ef94a492d6b3f81e

1

Другие решения

Я решил свою проблему, выполнив это:

   $em  = $this->getEntityManager();
$dbh = $em->getConnection();
$sth = $dbh->prepare("ALTER SESSION SET NLS_TIME_FORMAT = 'HH24:MI:SS' NLS_DATE_FORMAT = 'YYYY-MM-DD HH24:MI:SS' NLS_TIMESTAMP_FORMAT = 'YYYY-MM-DD HH24:MI:SS' NLS_TIMESTAMP_TZ_FORMAT = 'YYYY-MM-DD HH24:MI:SS TZH:TZM'");
$sth->execute();
0

По вопросам рекламы [email protected]