① EF6 有查詢緩存,怎麼辦
設置好查詢緩存的大小就行了。比如設置個20MB.
SET GLOBAL QUERY_CACHE_SIZE=20000000;
mysql會將查詢SQL和結果集存到緩存中,等下次遇到相同的SQL語句時,結果集從緩存中讀取。
不設置就不用緩存了
② vs2010 使用ef6.0訪問oracle資料庫報錯!
資料庫為Oracle,就不要使用EF了。
問題已經很明顯。「Make sure the provider is registered in the 'entityFramework' section of the application config file」,就是讓你看看在App.config文件中的<provider>。
【源文件中的內容如下】:
<entityFramework>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
</entityFramework>
按理說,只要將<provider />寫成:
<provider invariantName="Oracle.ManagedDataAccess.Client" type="System.Data.OracleProviderServices, EntityFramework.OracleServer" />
之類即可,但是可悲啊!
目前支持EF6的provider有:
(1)Microsoft SQL Server provider
(2)Microsoft SQL Server Compact Edition provider
(3)Devart dotConnect Data Providers 【注意】
(4)Firebird provider
(5)Visual Fox Pro porvider
(6)MySQL
(7)PostgreSQL
1、2、4、5、7均可以從NuGget中獲取。3、7需要到相應的網站獲取。
注意第三個:這個插件就是用於Oracle資料庫的,其為第三方插件,由Devart公司開發。但有兩大致命缺點:1、收費(是30天免費試用,過了30天要麼卸載,要麼付款)。2、目前支持的Oracle的最高版本為:Oracle8.2i。
哎!數下流劍客,還是Oracle!!!