2010-05-10 2 views
2

Когда я экспортирую свою базу данных с доктриной: data-dump, я сталкиваюсь с двумя проблемами: * первичные ключи не экспортируются * вместо правильных имен столбцов внешних ключей он использует имя внешней таблицы.Как экспортировать первичные ключи на дампе данных?

Например, вот мои таблицы:

# schema.yml 
Planet: 
    connection: doctrine 
    tableName: planet 
    columns: 
    planet_id: 
     type: integer(4) 
     fixed: false 
     unsigned: false 
     primary: true 
     sequence: planet_planet_id 
    solarsystem_id: 
     type: integer(4) 
     fixed: false 
     unsigned: false 
     notnull: false 
     primary: false 
    # some columns... 
    relations: 
    Solarsystem: 
     local: solarsystem_id 
     foreign: solarsystem_id 
     type: one 
    # other relations... 

Solarsystem: 
    connection: doctrine 
    tableName: solarsystem 
    columns: 
    solarsystem_id: 
     type: integer(4) 
     fixed: false 
     unsigned: false 
     primary: true 
     sequence: solarsystem_solarsystem_id 
    # other columns... 
    relations: 
    Planet: 
     local: solarsystem_id 
     foreign: solarsystem_id 
     type: many 
    # other relations 

Когда я свалка, я нахожу такие вещи, как, что в data.yml:

Planet_1: 
    Solarsystem: _1 

Когда данные нагрузки, что она Безразлично» t (Неверная строка строки указана: (solarsystem) _1, указанная в планете Planet_1). Я должен исправить вручную, как это:

Planet_1: 
    solarsystem_id: 1 
    planet_id: 1 

На данный момент, я фиксируя data.yml вручную, но это начинает становиться боль со всеми записями я накопительные ...

Примечание: Я использую Symfony 1.4, Doctrine, postgreSQL, NetBeans, Windows. Не стесняйтесь спрашивать информацию, которую вы считаете полезной.

Спасибо за вашу помощь

ответ

1

Я рекомендую проверить эту статью под названием «Никогда не доверяйте доктрина: Данные-дамп»: http://www.thomaskeller.biz/blog/2010/01/29/never-trust-doctrinedata-dump/

Имея это в виду, вы можете вместо этого предпочитают проверку из pg_dump: http://www.postgresql.org/docs/8.1/static/backup.html#BACKUP-DUMP

Этот дамп является уровнем postgreSQL и, как таковой, вряд ли будет заботиться о вашей схеме доктрины или наткнуться на нее.

Смежные вопросы