我正在閱讀blog-post of Ben Scheirman關於他爲提高性能所做的一些NHibernate調整。hibernate.default_schema是什麼意思?
在文章的結尾有:
課#7:始終確保您已設置hibernate.default_schema
他對我們hibernate.default_schema
是什麼意思?
我正在閱讀blog-post of Ben Scheirman關於他爲提高性能所做的一些NHibernate調整。hibernate.default_schema是什麼意思?
在文章的結尾有:
課#7:始終確保您已設置hibernate.default_schema
他對我們hibernate.default_schema
是什麼意思?
我不是一個DBA,所以我不能給你一個好的模式定義......(對我來說這只是SQL Server中的'數據庫')。
在NHibernate中你可以指定模式兩個地方:映射文件中的配置。
映射文件允許您指定每個類的模式。當你在同一臺服務器上有不同架構的類時,這很好。
SessionFactory配置允許您指定一個默認模式(default_schema選項),該模式應該應用於所有未明確設置模式的類映射。所以它是一個全部。
從閱讀你的鏈接看起來這是有利於性能,因爲當你查詢表「酒吧」沒有指定架構(說數據庫是「Foo」,所以架構「Foo.dbo」在SQL Server中)查詢計劃isn'緩存。這可能是由於SQL Server必須嘗試並解析連接字符串(初始目錄,數據庫等)所使用的模式,而不是在查詢中顯式使用它(「Bar」隱含 - 未緩存「,Foo.dbo .Bar「顯式 - 緩存)。
再次,我不是一個DBA可以使這些定義吸:)
編輯:
下面是配置的東西(用於NH 1.2 ... ...這是舊的鏈接...但default_schema選項在那裏):
https://www.hibernate.org/hib_docs/nhibernate/1.2/reference/en/html/session-configuration.html