Атрибут обновления NHibernate и hbm2dll - PullRequest
1 голос
/ 01 сентября 2009

Я использую NHibernate с базой данных Sdf. В моем файле hibernate.cfg.xml я установил:

<property name="hbm2ddl.auto" value="update"/>

Но это, похоже, не работает вообще. Атрибут «Update» должен заставить NHibernate генерировать недостающие таблицы и столбцы во время запуска приложения, но этого не происходит.

Если я хочу, чтобы отсутствующие таблицы были сгенерированы, я должен установить для свойства hbm2dll.auto значение "create", что для меня не вариант, так как заранее отбрасывает существующее содержимое БД.

У меня возникла такая же проблема с проблемой PostgreSql. Я что-то упустил?

Ответы [ 2 ]

2 голосов
/ 03 мая 2012

Только что получил ту же проблему. Я изменил способ определения свойства. Вместо:

<property name="hbm2ddl.auto" value="update"/>

Я использовал:

<property name="hbm2ddl.auto">update</property>

Тогда это сработало:)

1 голос
/ 09 апреля 2010

Насколько я помню, я решил проблему с помощью:

new SchemaUpdate(_cfg);

Пожалуйста, прочитайте о SchemaUpdate в документации NHibernate.

Вы также можете попробовать использовать Fluent NHibernate, который определенно будет работать так, как вы ожидаете, и даже лучше!

...