NHibernate:使用SchemaExport重新创建数据库
我有一个关于正确处理数据库的问题 在我的开发环境中,我经常使用NHibernate:使用SchemaExport重新创建数据库,nhibernate,sessionfactory,hilo,schemaexport,Nhibernate,Sessionfactory,Hilo,Schemaexport,我有一个关于正确处理数据库的问题 在我的开发环境中,我经常使用 _schemaExport.Drop(true, true); _schemaExport.Create(createResult, true); (我必须注意,我在重新创建数据库之后立即使用了hilo生成器),有时由于“无法插入重复键…”异常而导致新实体的保存失败 我的问题: 我是否必须重新初始化会话工厂(甚至可能是会话),以便与使用数据库的新hilo正确同步?或者它能按原样工作吗 任何提示都将不胜感激 Lg warappa我想
_schemaExport.Drop(true, true);
_schemaExport.Create(createResult, true);
(我必须注意,我在重新创建数据库之后立即使用了hilo生成器),有时由于“无法插入重复键…”
异常而导致新实体的保存失败
我的问题:
我是否必须重新初始化会话工厂(甚至可能是会话),以便与使用数据库的新hilo正确同步?或者它能按原样工作吗
任何提示都将不胜感激
Lgwarappa我想说,在重新创建数据库之后,您肯定必须创建一个新会话。另一个选项是在重新创建数据库之前清除现有数据库
重新创建数据库后,ID生成器将从头开始。这可能会导致某些生成的ID与以前存在的会话中另一个对象的ID相同。因此,您将获得重复的密钥错误。我想说的是,在重新创建数据库之后,您肯定必须创建一个新会话。另一个选项是在重新创建数据库之前清除现有数据库 重新创建数据库后,ID生成器将从头开始。这可能会导致某些生成的ID与以前存在的会话中另一个对象的ID相同。因此,您将获得重复的密钥错误