You are on page 1of 13

Getting Started With ADO.

NET

ADO.NET
ADO was a good architecture but as the language changes so is the technology. ADO was a connected data access, which means that when a connection to the database is established the connection remains open until the application is closed. ADO.NET is a data-access technology that enables applications to connect to data stores and manipulate data contained in them in various ways. It is based on the .NET Framework and it is highly integrated with the rest of the Framework class library. The ADO.NET API is designed so it can be used from all programming languages that target the .NET Framework, such as Visual Basic, C#, J# and Visual C++.

ADO.NET Data Architecture

Accessing Data In Connected Ado.Net Architecture


In connected architecture database connection need to open and close explicitly. While accessing data, the respective database need to be connected.

Accessing Data In Disconnected Ado.Netdatabase connection not require Architecture In disconnected architecture

after data has retrieved and stored into a dataset. We need to re-connect the database when we want to update any changes into database, or require new updated data from database

Connection Object
The Connection object creates the connection to the database. Microsoft Visual Studio .NET provides two types of Connection classes. The Connection object contains all of the information required to open a connection to the database.
Dim cnNorthwind as New System.Data.SqlClient.SqlConnection("User ID=sa; Password=2389; Initial Catalog=Northwind; Data Source=London; Connection TimeOut=60;" )

Command Object
Command objects are used to execute commands to a database across a data connection. The Command objects can be used to execute stored procedures on the database, or return complete tables directly.
Dim sql As String = "SELECT UnitsInStock FROM Products WHERE ProductID = @ProdID"

Dim cmdProducts As SqlCommand (sql, cnNorthwind)

Command Object

Command objects provide three methods that are used to execute commands on the database: ExecuteNonQuery() Executes commands that have no return values such as INSERT, UPDATE or DELETE ExecuteScalar() Returns a single value from a database query ExecuteReader() Returns a result set by way of a DataReader object

DataReader Object
The DataReader object provides a forward-only, read-only, connected stream recordset from a database. Because only one row is in memory at a time, the DataReader provides the lowest overhead in terms of system performance but requires the exclusive use of an open Connection object for the lifetime of the DataReader.
Dim rdrProducts As SqlDataReader rdrProducts = cmdProducts.ExecuteReader()

DataAdapter Object
The DataAdapter is the class at the core of ADO .NET's disconnected data access. It is essentially the middleman facilitating all communication between the database and a DataSet. The DataAdapter is used either to fill a DataTable or DataSet with data from the database with it's Fill method. After the memory-resident data has been manipulated, the DataAdapter can commit the changes to the database by calling the Update method.
Dim cnNorthwind As New SqlConnection()
Dim daProducts As New SqlDataAdapter(SELECT * FROM Products,cnNorthwind)

DataSet Object
The dataset is a disconnected, in-memory representation of data. It can be considered as a local copy of the relevant portions of the database. The DataSet is persisted in memory and the data in it can be manipulated and updated independent of the database. When the use of this DataSet is finished, changes can be made back to the central database for updating. The data in DataSet can be loaded from any valid data source like Microsoft SQL server database, an Oracle database or from a Microsoft Access database.

Dim dsCustomers As New DataSet()

daCustomers.Fill(dsCustomers, "Customers")

DataSet Types
1. Typed 2. Untyped Typed dataset
Is derived from the DataSet class and has an associated XML schema, which is created at the time of the creation of the dataset. Can be customized after creation. Supports Intellisense and auto-completion for the elements of the syntax while writing code. Does not have any associated XML schema, therefore, the structure of an untyped dataset is not known at the compile time. Represents tables and columns as collections. Does not support Intellisense and auto-completion for the elements of the syntax.

Untyped dataset

DataSet Object

You might also like