Chapter 4. Targeting Multiple Databases

In this chapter, we will try to create a library which will help application developers target their applications against SQL Server, SQLite, MySQL, and Oracle. As a result of creating this library, we will be able to write the application code without worrying about the underlying persistence technology. Even though ADO.NET does a wonderful job of abstracting away the nitty-gritties of a relational database management system (RDBMS), we need more than what is available as a stock feature within ADO.NET to write a database-agnostic persistence layer.

During the course of this chapter, as a reader, you will learn to leverage the abstract factory pattern, factory pattern, and the adapter pattern to be able to do the following:

  • Interfacing with various ADO.NET providers
  • Writing persistence-store agnostic logic
  • Writing data to an SQLite database
  • Writing data to an SQL Server database
  • Writing data to an ODBC data source

Requirements for the library

Before we embark on writing the library, let us scribble down a preliminary requirement statement as follows:

Note

When we write business applications, our application should be able to persist to relational database engines from different database vendors.

Note

We should be able to support SQL Server, SQLite, Oracle, or any database engine which supports ADO.net. Adding a new DB engine should be a breeze. Likewise, changing the database technology should be seamless for the application developer.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.117.186.92