NHibernate与Firebird ......是否启用了这些功能?

时间:2011-06-16 16:15:25

标签: c# nhibernate fluent-nhibernate firebird

我们正在使用NHibernate在Firebird后端取得巨大成功。我的问题涉及Firebird支持的NHibernate中可用的功能。如果您对Firebird和NHibernate有任何专业知识,欢迎您提出意见。

  1. Firebird是否支持“未来”查询?从我的阅读中可以看出,Firebird是少数几个不支持此功能的数据库之一。有没有人有一个解决方法,因为“未来”将是一个很好用的功能。

  2. Firebird是否支持NHibernate功能“prepare_sql”。出于某种原因,我无法在Firebird中使用它并不断收到关于参数大小不相等的警告(在Nhibernate Profiler中)。

  3. Firebird是否支持批处理?在NHibernate映射中,我们指定了批处理,但在分析器中看不到任何证据。

  4. 对于那些感兴趣的人,我们使用Fluent NHibernate来配置NHibernate。一切运作良好,我们对ORM有很大的控制权,但只需要澄清上述项目。

    你的想法?

2 个答案:

答案 0 :(得分:1)

据我所知,仅支持MsSql和Oracle的批处理。甚至MySql都没有批处理支持。

您可以随时下载NH源代码,看看是否支持这些功能。 IMO火鸟近年来并不是很受欢迎,有可能在火星鸟的NH中使用这些功能并不多。

答案 1 :(得分:1)

“未来”是NHibernate的一个特色。根据我通过阅读about futures的理解,所需的数据库功能是将一批(往返)中的多个语句发送到服务器,并将结果一次性地接收回来。

我认为Firebird不允许这样做,因为你必须单独准备和执行语句。

虽然如果你只进行插入/更新/删除,你可以在execute block语句中对这些语句进行分组,但这只能返回一个结果集。

要获得明确的答案,请务必在firebird-support邮件列表中提问。

相关问题