NHibernate 和 Firebird...这些功能启用了吗?
我们使用 NHibernate 和 Firebird 后端取得了巨大成功。我的问题涉及 Firebird 支持的 NHibernate 中可用的功能。如果您对 Firebird 和 NHibernate 有任何专业知识,欢迎您发表评论。
Firebird 支持“未来”查询吗?根据我的阅读,Firebird 似乎是少数不支持此功能的数据库之一。有没有人有解决方法,因为“未来”将是一个很好的功能。
Firebird 是否支持 NHibernate 功能“prepare_sql”。由于某种原因,我无法让它在 Firebird 中工作,并不断收到有关参数大小不相等的警告(在 Nhibernate Profiler 中)。
Firebird 支持批处理吗?在 NHibernate 映射中,我们指定批处理,但是在分析器中看不到任何这方面的证据。
对于那些感兴趣的人,我们使用 Fluent NHibernate 来配置 NHibernate。一切都运行良好,我们对 ORM 有很大的控制权,但只需要对上述项目进行澄清。
你的想法?
We're using NHibernate to great success with a Firebird backend. My question relates to the features available in NHibernate being supported by Firebird. If you have any expertise with Firebird and NHibernate your comments are welcome.
Does Firebird support "Future" queries? From my reading it would appear that Firebird is one of a few databases that doesn't support this feature. Does anyone have a workaround as "Future" would be a good feature to utilise.
Does Firebird support the NHibernate feature "prepare_sql". For some reason I cannot get this to work in Firebird and continually receive the warning (in Nhibernate Profiler) about parameter sizes not being equal.
Does Firebird support batching? In NHibernate mappings we specify batching however cannot see any evidence of this in the profiler.
For those interested we are using Fluent NHibernate to configure NHibernate. Everything works well and we have a great deal of control over the ORM however just need clarification on the above items.
Your thoughts?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
据我所知,只有 MsSql 和 Oracle 支持批处理。甚至 MySql 也没有批处理支持。
您可以随时下载 NH 源代码并查看是否支持这些功能。
IMO firebird 近年来并不是很受欢迎,并且可能没有太多兴趣将这些功能引入 NH for firebird。
As far as I know batching is supported only for MsSql and Oracle. Not even MySql has batching support.
You can always download NH source code and take a look if these features are supported.
IMO firebird is not very popular in recent years and it is possible that there is not much interes in bringing these features in NH for firebird.
“未来”是NHibernate的一个特点。根据我通过阅读关于 futures 的理解,所需的数据库功能是发送多个语句一批(往返)到服务器并接收一批返回的结果。
我认为 Firebird 不允许这样做,因为你必须单独准备和执行语句。
虽然如果您只执行插入/更新/删除操作,则可以将这些语句分组到一个执行块语句中,但这只能返回一个结果集。
要获得明确的答案,请务必在 firebird-support 邮件列表中提问。
"Future" is a feature of NHibernate. From what I understood by reading about futures the database feature needed would be to send multiple statements in one batch (round-trip) to the server and receive the results back in one batch, too.
I think Firebird doesn't allow this, since you have to prepare and execute statements individually.
Though if you only do insert/update/delete you could group those statements within an
execute block
statement, but that can only return one result set.To get a definitive answer be sure to ask this in the firebird-support mailing list.