In the most simple case, a database can be a local file such as a Microsoft Access or SQLite database file. In a more advanced scenario, a database may reside on a remote or network database server which does not necessarily use the same operating system as the application that connects to it and consumes data. For example, while DiffDog runs on a Windows operating system, the database from which you want to access data (for example, MySQL) might run on a Linux machine.
To interact with various database types, both remote and local, DiffDog relies on the data connection interfaces and database drivers that are already available on your operating system or released periodically by the major database vendors. In the constantly evolving landscape of database technologies, this approach caters for better cross-platform flexibility and interoperability.
The following diagram illustrates, in a simplified way, data connectivity options available between DiffDog (illustrated as a generic client application) and a data store (which may be a database server or database file).
* Direct native connections are supported for SQLite, PostgreSQL, CouchDB and MongoDB databases. To connect to such databases, no additional drivers are required to be installed on your system.
As shown in the diagram above, DiffDog can access any of the major database types through the following data access technologies:
•ADO (Microsoft® ActiveX® Data Objects), which, in its turn, uses an underlying OLE DB (Object Linking and Embedding, Database) provider
•ADO.NET (A set of libraries available in the Microsoft .NET Framework that enable interaction with data)
•JDBC (Java Database Connectivity)
•ODBC (Open Database Connectivity)
|Note:||Some ADO.NET providers are not supported or have limited support. See ADO.NET Support Notes.|
The data connection interface you should choose largely depends on your existing software infrastructure. You will typically choose the data access technology and the database driver which integrates tighter with the database system to which you want to connect. For example, to connect to a Microsoft Access 2013 database, you would build an ADO connection string that uses a native provider such as the Microsoft Office Access Database Engine OLE DB Provider. To connect to Oracle, on the other hand, you may want to download and install the latest JDBC, ODBC, or ADO.NET interfaces from the Oracle website.
While drivers for Windows products (such as Microsoft Access or SQL Server) may already be available on your Windows operating system, they may not be available for other database types. Major database vendors routinely release publicly available database client software and drivers which provide cross-platform access to the respective database through any combination of ADO, ADO.NET, ODBC, or JDBC. In addition to this, several third party drivers may be available for any of the above technologies. In most cases, there is more than one way to connect to the required database from your operating system, and, consequently, from DiffDog. The available features, performance parameters, and the known issues will typically vary based on the data access technology or drivers used.