What database provider are supported in Entity Framework? Data Provider is a set of libraries that are used to connect to a database, executing commands, and retrieving results. For example, SQL data provider for SQL, Oracle data provider for Oracle, OLE DB data provider for access, excel or mysql, etc.
A database provider is one that is written as a PL/SQL package. Use database providers for creating PL/SQL portlets that reside in the database. PL/SQL portlets are implemented as stored procedures and executed in the database. They can be written in PL/SQL or Java Stored Procedures wrapped in PL/SQL.
MySQL Connector/NET integrates support for Entity Framework 6 (EF6), which now includes support for cross-platform application deployment with the EF 6.4 version.
Keep using EF6 if the data access code is stable and not likely to evolve or need new features. Port to EF Core if the data access code is evolving or if the app needs new features only available in EF Core. Porting to EF Core is also often done for performance.
DB2 will work, but if you want to use some of the out-of-the-box .NET features that we all take for granted (think membership and role providers), you will have quite a bit of work on your hands. DB2 doesn't really do well with Stored Procedures, so you are also looking at a lot of parameterized inline SQL.
I also had some performance issues with the provider from IBM. There is another provider available from a company called DataDirect. It looks to be more performant, but it will cost you. For something like an external facing website, where speed is important, the cost probably will not be an issue.
I am sure that DB2 is a great system if you are building on another platform, but it wasn’t really designed to play nice with .NET. Unless you are already married to DB2, I would look elsewhere.
I don't think DB2 works with EF 4 yet. If it does, someone please correct me and tell me how its done. I cannot get the DB2 providers to show up in the Data Source dialogs.
IBM's Data Server Provider for .NET allows Informix to work with EF. See here: link text
IBM's Data Server Provider contains some limitations that make it irritating and fragile for more complex query scenarios. Also, EDMX designer doesn't work with Informix tables prefixed with "informix.*". See Here: link text
You're missing System.Data.SQLite for SQLite. It's open source, and quite reliable from my experience. As far as I know it was one of the first EF providers for databases other than SQL Server
The "Skip/Take and ordering" problems were fixed several months ago in the Devart provider.
Some notes about the EF4 support
At the moment we provide support for Visual Studio Beta 1 and EF4 Beta 1. We plan to release the build with EF4 support in the end of December - beginning of January.
We cannot call our Entity Framework support an ideal one - this ORM was initially designed for MS SQL Server, so the possibility to take into account the marvels of other DBMSs is significantly limited.
There is a number of problems the one who implements an EF provider is simply unable to work around. Some examples are available here. The main problem is associated with the CROSS APLY and OUTER APPLY statements generated by EF runtime in some cases. Other DBMSs do not provide this statement, so the problem arises with translation. One also should realize that in case of legacy databases EF is generally unappliable.
We take into account the users that are not satisfied with the default Microsoft designer and ship Entity Developer - a powerful design time tool - with our products.
EF 7 supports following DB providers
• Microsoft SQL Server
• SQLite
• Microsoft SQL Server Compact Edition
• Npgsql (PostgreSQL)
• IBM Data Servers
• InMemory (for testing)
Reference
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With