1

私は Symfony2 と Doctrine から始めています。symfony をセットアップして新しいバンドルを作成した後、postgre データベースを元に戻す作業に行き詰まりました。次の最初のテーブルで例外を返します。

[Doctrine\ORM\MappingMappingException]                      
  Table tb_core_table has no primary key. Doctrine does not support reverse engineering from tables that don't have a primary key.

これは私がコマンドラインで実行しているコマンドです:

php app/console doctrine:mapping:convert yml ./src/ak/ProcessamentoBundle/Resources/config/doctrine --from-database --force

OK、今では、すべてのテーブルに pk が必要であることをすでに知っています。そのため、doctrine はそれらと連携することができます。それが問題です。私の「tb_core_table」には主キーがありますが、何らかの理由で教義はそれを無視します。

いくつかの設定がありませんか?主キーを見つけることができるのはなぜですか?


これは私のテーブルDDLです:

CREATE TABLE tb_core_table (
    id_table integer NOT NULL,
    id_aux_table integer NOT NULL,
    no_table character varying(255),
    st_table integer
);

CREATE SEQUENCE tb_core_table_id_table_seq
    START WITH 1
    INCREMENT BY 1
    NO MINVALUE
    NO MAXVALUE
    CACHE 1;

ALTER TABLE ONLY tb_core_table
    ADD CONSTRAINT tb_core_table_pkey PRIMARY KEY (id_table);
4

0 に答える 0