У меня проблема с symfony2 и postgres. У меня есть база данных с таблицами и последовательностями в верхнем регистре, которые я не могу изменить.
Я сгенерировал объекты (обратное проектирование), указав идентификаторы, и когда я пытаюсь внести какие-либо изменения (приложение php/консоль доктрина: схема: обновление --force), он возвращает ошибку:
[PDOException] SQLSTATE[42P01]: Неопределенная таблица: 7 ОШИБКА: не существует отношения «base_id_se q» СТРОКА 1: ВЫБРАТЬ min_value, increment_by FROM BASE_id_seq
Код моей базовой сущности:
namespace Slip\CoreBundle\Entity;
use Doctrine\ORM\Mapping\ClassMetadata;
use Doctrine\ORM\Mapping as ORM;
use Doctrine\Common\Collections\ArrayCollection;
use Slip\ContactBundle\Entity\Criterion;
/**
* Slip\CoreBundle\Entity\Base
*
* @ORM\Entity(repositoryClass="Slip\CoreBundle\Repository\BaseRepository")
* @ORM\Table(name="""BASE""")
*/
class Base
{
/**
* @var bigint $id
*
* @ORM\Column(name="id", type="bigint", nullable=false)
* @ORM\Id
* @ORM\GeneratedValue(strategy="SEQUENCE")
* @ORM\SequenceGenerator(sequenceName="""BASE_id_seq""", allocationSize=1, initialValue=1)
*/
private $id;
/**
* @var string $name
* @ORM\Column(name="name", type="string", length=1024, nullable=false)
*/
private $name;
..............
Если я изменю имя последовательности на нижний регистр, все будет работать, и изменения будут применены к базе данных, но я не могу сделать это в производственной среде.
Я не понимаю, почему, если я делаю какие-либо изменения в базе данных, в других таблицах, которые не являются таблицей BASE, появляется эта ошибка.
Спасибо за ваше сотрудничество.