Log In
Home
Support
Demos
Documentation
Blogs
Training
Webinars
[Expand]General Information
[Expand]WinForms Controls
[Expand]ASP.NET Controls and MVC Extensions
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Expand]WPF Controls
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Document Server
[Expand]Reporting
[Expand]Report Server
[Expand]Dashboard
[Expand]eXpressApp Framework
[Expand]CodeRush
[Expand]CodeRush Classic
[Collapse]Cross-Platform Core Libraries
 [Collapse]DevExpress ORM Tool
  [Expand]Product Information
  [Expand]Getting Started
  [Collapse]Fundamentals
    Product Class Structure
    Database Systems Supported by XPO
    Data Types Supported by XPO
    Adding Persistence to an Existing Hierarchy
    When and Why XPO Extends the Database Schema
    Upcasting
    Built-In Attributes
  [Expand]Feature Center
  [Expand]Concepts
  [Expand]Design-Time Features
  [Expand]Examples
  [Expand]Member Tables
 [Expand]DevExpress Data Library
 [Expand]Miscellaneous
 [Expand]API Reference
[Expand]Tools and Utilities
 End-User Documentation

Database Systems Supported by XPO

XPO supports multiple database systems. Whether you want to connect to a particular database or persist your objects in that database, all you need to do is to use the corresponding XPO data store adapter. For your convenience, each XPO data store adapter's name contains the name of the database system it supports.

Note

XPO implements MS Access, MS SQL Server, and MS SQL Azure database providers and incorporates the corresponding data store adapters (see AccessConnectionProvider and MSSqlConnectionProvider, respectively). With an InMemoryDataStore (not intended to be used with large data sets), XPO allows you to create an in-memory data store and manipulate objects within it.

All XPO data store adapters are declared in the DevExpress.Xpo.DB namespace of the DevExpress.Xpo.v17.2.dll assembly. The following table lists them along with the corresponding database provider assemblies they require.

XPO supports 14 database engines. The following table lists them along with the corresponding XPO data store adapters and database provider assemblies they require.

Database Engine Version(s) XPO Data Store Adapter .NET Standard 2.0 Support Database Provider Assembly
Advantage Advantage Database Server v9.1, Advantage Database Server v10.1, Advantage Database Server v11.1 AdvantageConnectionProvider   Advantage.Data.Provider.dll 9.10.2.0
Advantage.Data.Provider.dll 10.10.0.49
Advantage.Data.Provider.dll 11.10.2.24
ASA SQL Anywhere 16, SQL Anywhere 17 AsaConnectionProvider   iAnywhere.Data.SQLAnywhere.dll 16.0.0.13242
Sap.Data.SQLAnywhere.v4.0 17.0.0.13584
Sap.Data.SQLAnywhere.v4.5 17.0.0.13584
ASE Sybase Adaptive Server 12, Sybase Adaptive Server 15.5, Sybase Adaptive Server 16 AseConnectionProvider   Sybase.Data.AseClient.dll 1.15.50.0
Sybase.AdoNet2.AseClient 16.0.0.2
Sybase.AdoNet35.AseClient 16.0.0.2
Sybase.AdoNet4.AseClient 16.0.0.2
DB2 DB2 9.7.4 DB2ConnectionProvider   IBM.Data.DB2.dll 9.7.4.4
Firebird Firebird 1.5, Firebird 2.5.7 FirebirdConnectionProvider   FirebirdSql.Data.Firebird.dll 1.7.1.0
FirebirdSql.Data.FirebirdClient.dll 5.11.1.0
MSAccess Microsoft Jet AccessConnectionProvider   System.Data.dll
MSSqlServer Microsoft SqlServer 7.0, Microsoft SqlServer 2000, MS SQL Server 2000 Desktop Engine (MSDE 2000), Microsoft SQL Server 2005,
SQL Server 2005 Express Edition, SQL Server 2008, SQL Azure™ Database, SQL Server 2008 R2, SQL Server 2008 R2 Express, SQL Server 2012, SQL Server 2012 Express (including LocalDB), SQL Server 2014, SQL Server 2014 Express (including LocalDB), SQL Server 2016, SQL Server 2016 Express (including LocalDB)
MSSqlConnectionProvider
System.Data.dll
System.Data.SqlClient 4.4.0 (.NET Standard 2.0)
MSSqlServerCE Microsoft SqlServer 2005 Mobile, SQL Server 2005 Compact Edition (Microsoft SqlServer 2005 Everywhere Edition CTP), SQL Server Compact 3.5,
SQL Server Compact 4.0
MSSqlCEConnectionProvider   System.Data.SqlServerCe.dll 3.5.0
System.Data.SqlServerCe.dll 4.0.8482.1
MySql MySQL Server 4.1, MySQL Server 5.0, MySQL Server 5.1, MySQL Server 5.7 MySqlConnectionProvider
MySql.Data.dll 6.9.9.0
MySql.Data.dll 8.0.9.0 (.NET Standard 2.0)
Oracle Oracle 9i, Oracle 10g, Oracle 11g, Oracle 12c OracleConnectionProvider
ODPConnectionProvider
ODPManagedConnectionProvider
  System.Data.OracleClient.dll 2.0.0.0
Oracle.DataAccess.dll 4.122.1.0
Oracle.ManagedDataAccess.dll 4.122.1.0
Pervasive Pervasive PSQL 9, Pervasive PSQL 10, Pervasive PSQL 11 PervasiveSqlConnectionProvider   Pervasive.Data.SqlClient.dll 2.10.0.15
Pervasive.Data.SqlClient.dll 3.5.0.1811
PostgreSQL PostgreSQL 7, PostgreSQL 8, PostgreSQL 9, PostgreSQL 10 PostgreSqlConnectionProvider
Npgsql.dll 2.0.11.0
Npgsql.dll 3.2.5.0
Npgsql.dll 3.2.5.0 (.NET Standard 2.0)
SQLite SQLite 3 SQLiteConnectionProvider
System.Data.SQLite.dll 1.0.88.0
Microsoft.Data.SQLite 2.0.0 (.NET Standard 2.0)
VistaDB VistaDB 4, VistaDB 5 VistaDBConnectionProvider   VistaDB.4.dll 4.0.0.0
VistaDB.5.NET40.dll 5.2.0.0

Note that the database provider assembly versions listed in the table above are the versions that have been tested with the current XPO version. Since XPO loads ADO.NET provider assemblies dynamically, you can use any specific version of the provider.

Note

XPO does not support tables with multi-column (compound) keys or indexes in ASE databases. To avoid exceptions when connecting to ASE databases containing these tables, use one-column keys or indexes.

To make XPO use your database server, you should do the following.

Expanded Example

To connect to the MySql database, add the MySql.Data assembly to your project's References. Then you can use the following code to create a connection to the database.

Expanded See Also

How would you rate this topic?​​​​​​​