yet another blog about computer, technology, programming, and internet

Showing posts with label Database. Show all posts
Showing posts with label Database. Show all posts

Tuesday, June 27, 2006

Implementing DAL with Microsoft Visual Studio.NET

Tuesday, June 27, 2006 Posted by Ismail Habib , 15 comments
DAL (Database Abstraction Layer) concept is extremely useful, especially when it comes to large applications. However, it has several drawbacks. One of them is that implementing a DAL might require a lot of time. Fortunately, there are some "tools" that allow us to cut the DAL implementation time required.

Microsoft Visual Studio.NET (VS.NET) itself gives a way to implements DAL in your application. As far as I know, VS.NET gives two way to access database. The first one is by accessing it through a SQL command, I call this direct database connection. The other way is by using ADO.NET. As ADO.NET provides several components to access databases, they are adapter and dataset. While adapter is dependent to specific database, dataset is completely transparent to any kind of database. VS.NET implements a dataset as a class that provide several methods to access database. Adapter works as an intermediate between database and dataset. Its implementation contains SQL queries relevant to actions (add, edit, delete) which are going to be invoked from dataset. Remember, this only work if you use database access with dataset manipulation and not direct database access.

Tuesday, April 25, 2006

Database/Data Access Layer (DAL)

Tuesday, April 25, 2006 Posted by Ismail Habib 34 comments
Related to my previous writing about MVC, there is other thing that I'd like to share. Previously, I wrote that MVC helped a lot in creating a big (enterprise?) application. While MVC defines layers that represent layer in same level, DAL (Data Access Layer) provides a depth in application abstraction. DAL logically inserted below business process layer to provide independent-to-database access. The DAL itself contains implementation to specific database access and also interfaces to business process layer.



The benefit of DAL is not far difference with MVC. By separating business process with data access, we may create several implementation of data access (to MySQL, MSSQL, Oracle, etc) without having problems changing the business process.