NHibernate的默认模式在Sqlite中被忽略
本文关键字:Sqlite 默认 模式 NHibernate | 更新日期: 2023-09-27 18:02:33
当使用NHibernate模式导出时,我配置它如下:
Fluently().Configure
.Database(SQLiteConfiguration.Standard
.DefaultSchema("someschema")
.Provider<SqliteInMemoryDriverConnectionProvider>()
.ShowSql()
.FormatSql()
.Raw(Environment.GenerateStatistics, "true"))
但是,当我查看生成的表(使用SchemaExport)时,它们是这样生成的:
Create table dbo_sometable ...
看起来它仍然在使用标准的dbo-前缀。如何生成不带dbo前缀的表?
更多信息:
我正在尝试使用NHibernate在内存中运行一些集成测试。我做了一些NHibernate的插入和更新(它们工作得很好,因为它们也会自动添加模式前缀)。我也做了一些手动查询相同的表,虽然,只使用表名。在实际代码中,这工作得很好(对MS SQL Server数据库),在测试代码中,它失败了,因为它没有找到表sometable
,因为它被生成为dbo_sometable
似乎您的映射设置了模式。