SlideShare ist ein Scribd-Unternehmen logo
1 von 32
Made by:-
  Farzad
  Komal
 Aakash




            1
What is Ado.net?
 The full-form of ado.net is ActiveX Data Object.
 ADO.net is the 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.
 Ado.net is a collection of classes, interfaces, structures, enumerated type
that mange data access from the relational data stores
within the .net framework.




                                                                                2
ADO.NET
Understanding ADO.net   The Ado.net Object Model




                                                   3
Working with Ado.net
 Many of web application development ,in many of the developers
data situations involves opening data store, making request for
specific data, and then populating the table in then browser with the
data.
 To address the above situations Ado.net support the following
classes:
         1)DataSet
         2)DataReader




                                                                        4
Working with Ado.net namespaces
 The six core Ado.net namespaces are;
        1)System.Data
        2)System.Data.Common
        3)System.Data.OleDb
        4)System.Data.Odbc
        5)System.Data.SqlClient
        6)System.Data.SqlTypes




                                         5
 The classes from the above namespaces are categorized as follow:
 Disconnected : These Class provides basic structure of Ado.net includes
DataTable, etc. The object of this class are capable of storing data without
any dependency on specific data provide.
 Shared : Set of base classes for data provide and shared amount all data
provide. Includes DataSet, DataRow, DataTables, Constraint, etc.
 Data Provide : These classes are meant to work with different data
soures. Performs all database management operations a specific database.
 E.g. : SqlClient data provide works only with SQL Server Database.




                                                                               6
Type of Architecture
 ADO.NET is both Connection oriented as well as Disconnection oriented
* Connected : Forward-only, Read-only, mode.
        Application issues query then reads back results and processes them.
        DataReader object.
* Disconnected :
        Application issues query then retrieve and stores results for processing
        Minimizes time connected to database DataSet object.




                                                                              7
 Data Provider:- (Connected Environment)
A data provider is used for connecting to a database, retrieving data, storing the
data in a dataset, reading the retrieved data, and updating the database.
          * Connection:-This component is used to establish a connection with a
          data source such as database.
          * Command:-This component is used to retrieve, insert, delete, or modify
          data in a data source.
          * DataReader:-This component is used to retrieve data from a data
          source in a read-only and forward-only mode.
          * DataAdapter:-This component is used to transfer data to and from
          database. A datareader retrieve data from a database into a dataset.
 Data Set:- (Disconnected Environment)
The data set is a memory-based relational representation of data.
         * DataTableCollection:-It contains all table retrieved from the data source.
         * DataRelationCollection:-It contains relationship and links between table
         in a dataset.
         * DataTable:-It represent a table in the datatable collection of a dataset.
         * DataRowCollection:-It contains all the row in a datatable.
         * DataColoumnCollection:-It contains all the coloumn in a datatable.
                                                                                        8
ADO.NET Environment




                      9
Data isReader way of selecting
A data reader(SqlDataReader , etc.,) a simple and fastest
some data from a data source but also least capable.
       * You can't directly instantiate a data reader object. An instance is
       returned from appropriate Command object after having call
       ExecuteReader() method.
       * This data reader is forward-only , read-only connected cursor. You can
       only travels the records in one direction. Database connection used is kept
       open until the data reader has been closed.
       * The DataReader object requires a live connection to the database. So
       when you are done with DataReader object, be sure to call close(). If not
       connection stays alive.
       * When DataReader object is closed (via an explicit call to close) or the
       object being garbage collected, the underlying connection(con) may
       also be closed depending on which of the ExecuteReader() method is
       called.
       * If you call ExecuteReader() and pass CommandBehaviour.
                 CloseConnection you can force the connection to be closed when
the              reader is closed.                                             10
 For Data Reader object you have the following methods:
       * Read():Reads record by record in the data reader.
       * Close():Closes the SqlDataReader connection
       * Dispose():Disposes the data Reader object.
 Some of the important properties of Data Reader object are:
      * Connection: Gets the SqlConnection associated with the
                SqlDataReader.
      * HasRows : Gets the value that indicates whether the SqlDataReader
                contains one or more rows.
      * IsClosed: Retrieves a boolean value that indicates whether the
                specified SqlDataReader instance has been closed.




                                                                        11
Data Adapter
 The Data Adapter classes (Eg:SqlDataAdapter,..) bridges the gap between
the disconnected DataTable objects and the physical data source.
 The SqlDataAdapter provides two way data transfer mechanisms:
         * It is capable of executing SELECT statement on a data source and
         transferring the result set into a DataTable object.
         * It is also capable of executing the standard INSERT, UPDATE and
         DELETE statements and extracting the input data from DataTable
         object.




                                                                              12
 The commonly used properties of SqlDataAdapter class are:
        * Select Command: Gets or sets an object of type SqlCommand. This
        command is automatically executed to fill a Data Table with the result set.
        * Insert Command: Gets or sets an object of type SqlCommand.
        * Update Command: Gets or sets an object of type SqlCommand.
        * Delete Command: Gets or sets an object of type SqlCommand.
 This SqlDataAdapter class also provide a method called Fill().
        * Calling the Fill() method automatically execute the command provided by
        the Select Command property and retrieve the result set and copies it to
        DataTable.




                                                                                  13
Using Parameter
 If you requires SQL Statements that required you to configure using
parameters then you need to instantiate Parameter (i.e., SqlParameter,..,) object
and providing it with necessary information such as name, value, type, size,
direction , etc.,
 The following are properties of the SqlParameter class:-
         * ParameterName, SqlDbType, Size, Direction, SourceColoumn, value
 Coding Snipped in using parameters are:
         for e.g. : SqlCommand myCmd = new SqlCommand();
         myCmd.commandText = "SELECT * FROM CUSTOMERS WHERE
         CITY=@CITY";
         sqlParameter parmCity = new SqlParameter();
         parmCity.ParameterName="@CITY";
         parmCity.SqlDbType=SqlDbType.varchar;
         parmCity.Direction=ParameterDirection.input;
         parmCity.Value=“Ahmedabad“
         mycmd.Parameter.Add(parmCity);                                       14
DataSet
 The DataSet class has been designed as an offline container of data.
       * Data held within the DataSet is not necessary to come from
       database. It can be recorded from database. It can be recorded from
       CSV file, XML source, etc.
       * A DataSet class contains a set of Data Table classes and links
       between tables.
       for e.g. :
       foreach(DataRow row in ds.Tables["Customers"].rows);
       Console.WriteLine("{0} and {1}",row[0],row[1]);
 Each DataTable class consists DataColoumn, DataRow, Constraints and
  ExtendedProperties classes.
 .csv=Comma Separated Values


                                                                             15
 Here DataColoumn object defines the properties of a coloumn within
DataTable. These properties includes data type (Int32, Char, DateTime, etc.,),
read-only. You can also assign a name for coloumn.
         for e.g.:
         DataColoumn customerID=newDataColoumn("CustomerID",typeof
         (int));
         customerID.AllowDBNull=false;
         customerID.ReadOnly=false;
         customerID.AutoIncrement=true;
         customerID.Unique=true;
The actual data within a table is accessed via a DataRow object. One of the
interesting aspect of DataRow is that it is versioned. This permits you to
receive various values for a given coloumn in a particular row.




                                                                            16
DataSet




          17
DataSet Architecture
 You can create DataSet in any one of the following methods :
* Using Server Explorer
* Using DataAdapter
* Programmatically
* Using Xml




                                                                 18
 Coding snippet of using DataSet :
for e.g. :
       SqlConnection con = new SqlConnection(...);
       SqlCommand cmd = new SqlCommand(...);
       SqlDataAdapter da = new SqlDataAdapter (cmd, con);
       DataSet ds = new DataSet();
       da.Fill(ds, "MyTable");
 Better guideline regarding DataSet is :
       * Don't use DataSet object unless your project required to work with
       multiple DataTable object and you need a container for those object.
       * If you are working with single table then just use DataTable object
       rather then DataSet.
 You can create schemas for a DataTable in three ways.
         * Let the runtime do it for you.
         * Write code to create tables.
         * Use the XML schema generator.

                                                                           19
 The DataAdapter class is used to place the data in a DataSet class. This
Adapter class issues the SQL clause and fills a table within the DataSet.
         * for e.g. :
         SqlDataAdapter da = new SqlDataAdapter(strCmd , con);
         DataSet ds = new DataSet();
         da.Fill(ds, "Customers"); //Populating DataSet with DataAdapter.
 The DataSet class has been designed to establish relationships between
data tables with ease.
 At present you can apply the ForeignKeyConstraint and UniqueConstraint
on a columns in a DataSet.
 You can also set Update & Delete constraints on a columns that have
constraint relationships.




                                                                             20
 These rules are :
           * Cascade, None, Set Default, Set Null.
        for e.g. :
        DataTable dt = Get DataTable(); //It return DataTable
        DataColumn[] pk = new DataColumn[1];
        pk[0] = dt. Columns["StudentID"];
        dt.PrimaryKey = pk;
 The Constrains are enfored within a DataSet class if the
EnforcedConstraints property of the DataSet is true.




                                                                21
Data Providers Classes
 In .NET framework data provide is used for connecting to database,
executing commands are retrieving results. By default the following data
provides are included in .NET framework :
        * Data Provider for SQL Server
        * Data Provider for OLEDB
        * Data Provider for ODBC
        * Data Provider for Oracle
 In .NET to access the data set of classes defined in the namespaces
System.Data and other namespaces defined within this namespaces.




                                                                           22
 Each data provider contains the following objects:
 * Connection (for e.g. : Sqlconnection, Oracleconnection, Odbcconnection, etc.)
 * Command, CommandBuilder (for e.g. : Sqlconnection, SqlConnectionBuilder,
         etc.)
 * DataAdapter (for e.g. : SqlDataAdapter, etc.)
 * DataReader (for e.g. : SqlDataReader, etc)
 * Parameter (for e.g. : SqlParameter, etc)
 * Transaction (e.g. : SqlTransaction, etc)
 Each Provider use different namespaces. Their namespaces are in
respective :
         * System.Data.SqlClient
         * System.Data.Oledb
         * System.Data.Odbc
         * System.Data.OracleClient


                                                                             23
 In addition to above namespaces few more important namespaces in
ADO.NET are:
        * System.Data
        * System.Data.Comman
        * System.Data.SqlTypes
 ADO.NET consists number of classes that are used regardless you are
using the SQL Server Classes or OLEDB classes.
 The System.Data namespaces consists the following classes:
        * DataSet
        * DataTables
        * DataRow
        * DataColumn
        * DataRelation
        * Consraint



                                                                        24
Classes in Data Providers
 Each data provider supports the fallowing types of core objects to
communicate with database.
 The Connection object provides connectivity to a data source.
 The Command object enable access to database commands to return
data, modify data, run stored procedures, and send or retrieve parameter
information.
 The DataReader provides a high performance stream of the data from
the data source.
 Finally, the DataAdapter provides the bridge between the DataSet object
and the data source.
 The DataAdapter uses Command objects to execute SQL commands at
the data source to both load the DataSet with data, and renconcile change
made to the data in the data in the DataSet back to the data source.

                                                                            25
Connection Object
 The different Connection classes are in different data provider models.
          * for e.g. : SqlConnection, OleDbConnection, OracleConnection, etc.
 The properties of SqlConnection class are:
          * ConnectionString, DataSource, Database,State.
          * In above properties DataSource, Database, State are read-only mode.
 You can pass necessary connection string information to the SqlConnection
in a string format or store in "web.config" file.




                                                                              26
 You can store database connection parameters in configuration file under
<ConnectionString> section. Here you can specify name of connection,
connection string parameter and provider for this connection.
        * for e.g. usage of SqlConnection:
        SqlConnection con = new SqlConnection("Data
        Source=FARZADFWADIA-PC;Initial Catalog=FarzadWadia;
        Integrated Security=True");
        con.Open();//Use connection object.
        con.Close(); //you need to call this explicitly, because .net doesn't
                     implicitly release the connection when they fall out of scope.




                                                                              27
Command Object
 In Ado.net a command is a string of the containing SQL statements that is
to be issued to the database. It can also be a stored procedure or the name of
the table which return all columns and rows.
 A Command can be constructed by using the instance of SqlCommand.
         for e.g. :
         SqlCommand cmd = new SqlCommand("Select * from
         Employee",con);
 After building the command object you need to execute with any one of the
methods:
* ExecuteNonQuery() : Executes the command but doesn't return any output.
         Only it will return no of rows effected.
* ExecuteReader() : Executes the command and returns a type SqlDataReader.
* ExecuteRow() : Executes the command and returns SqlRecord, (Single row)
* ExecuteScalar() : Executes the command and returns a single values.
* ExecuteXmlReader() : Executes the command and returns XmlReader.

                                                                            28
 Some of the important properties of Command object are :
       * CommandText : Assign SQL statement or stored procedure name,
       * CommandTimeout : Specifies no of second to wait for executing a
       command
       * CommandType : Possible values are Text, Stored Procedure, Table direct.
       * Connection : Gets or Sets SqlConnection object.
 Calling a stored procedure with a Command object
       for e.g. :
       SqlCommand cmd = new SqlCommand("MyStoredProc“ , con);
       cmd.CommandType = CommandType,StoredProcedure;
       cmd.Parameter.Add(new SqlParameter(...));
       cmd.Paramter[0].Value = val;
       cmd.ExecuteNonQuery();




                                                                            29
ADO.NET Programming
 ADO.NET Programming involves the following steps:
       * Create a Connection object and provide connection string
       Information.
       * Create a Command object and provide details of SQL command
       that is to be executed.
       * Command can be inline SQL Text command, Stored Procedure
       or direct table access. Also provide required parameters if needed.
       * If your command doesn't return result set then execute the
       command simply by calling one of Execute method on Command
       object.
       * If your command object returns a result set then you can store
       the result set in DataReader or DataAdapter object.
       * To load the data from DataReader to DataTable just call Load()
       method on DataTable.
       SqlDataReader myReader=cmd.ExecuteReader(…);
       DataTable myTable=new DataTable();
       myTable.Load(myReader);                                               30
* In reverse if you want a reader from DataTable then use:
DataTableReader myReader=myTable.CreateDataReader();
* If you want to retain the result set for feature use without
maintaining the connection to the database then use DataAdapter
object. This DataAdapter object is used to fill DataSet or
DataTable objects.
* If you don't want to retain the result set, rather simply process
the command in a swift fashion, you use Command object needs a
live connection to database and it works as forward-only read-only
cursor.




                                                                  31
Student Name            StudentID
Farzad                  S111126900191
Komal                   S111126900185
Aakash                  S111126900166




                                             32

Weitere ähnliche Inhalte

Was ist angesagt?

1. Introduction to DBMS
1. Introduction to DBMS1. Introduction to DBMS
1. Introduction to DBMS
koolkampus
 
15. Transactions in DBMS
15. Transactions in DBMS15. Transactions in DBMS
15. Transactions in DBMS
koolkampus
 
Data management with ado
Data management with adoData management with ado
Data management with ado
Dinesh kumar
 

Was ist angesagt? (20)

View of data DBMS
View of data DBMSView of data DBMS
View of data DBMS
 
Architecture of dbms(lecture 3)
Architecture of dbms(lecture 3)Architecture of dbms(lecture 3)
Architecture of dbms(lecture 3)
 
Entity Relationship Diagram
Entity Relationship DiagramEntity Relationship Diagram
Entity Relationship Diagram
 
1. Introduction to DBMS
1. Introduction to DBMS1. Introduction to DBMS
1. Introduction to DBMS
 
VB.NET:An introduction to Namespaces in .NET framework
VB.NET:An introduction to  Namespaces in .NET frameworkVB.NET:An introduction to  Namespaces in .NET framework
VB.NET:An introduction to Namespaces in .NET framework
 
Delegates and events in C#
Delegates and events in C#Delegates and events in C#
Delegates and events in C#
 
Java Servlets
Java ServletsJava Servlets
Java Servlets
 
Transaction management DBMS
Transaction  management DBMSTransaction  management DBMS
Transaction management DBMS
 
Dbms Introduction and Basics
Dbms Introduction and BasicsDbms Introduction and Basics
Dbms Introduction and Basics
 
15. Transactions in DBMS
15. Transactions in DBMS15. Transactions in DBMS
15. Transactions in DBMS
 
SQL, Embedded SQL, Dynamic SQL and SQLJ
SQL, Embedded SQL, Dynamic SQL and SQLJSQL, Embedded SQL, Dynamic SQL and SQLJ
SQL, Embedded SQL, Dynamic SQL and SQLJ
 
Object Oriented Dbms
Object Oriented DbmsObject Oriented Dbms
Object Oriented Dbms
 
Data dictionary
Data dictionaryData dictionary
Data dictionary
 
Data management with ado
Data management with adoData management with ado
Data management with ado
 
Dbms architecture
Dbms architectureDbms architecture
Dbms architecture
 
trigger dbms
trigger dbmstrigger dbms
trigger dbms
 
ER-Model-ER Diagram
ER-Model-ER DiagramER-Model-ER Diagram
ER-Model-ER Diagram
 
Relational model
Relational modelRelational model
Relational model
 
MySQL and its basic commands
MySQL and its basic commandsMySQL and its basic commands
MySQL and its basic commands
 
Integrity Constraints
Integrity ConstraintsIntegrity Constraints
Integrity Constraints
 

Ähnlich wie ADO.NET

Introduction to ado
Introduction to adoIntroduction to ado
Introduction to ado
Harman Bajwa
 
LECTURE 14 Data Access.pptx
LECTURE 14 Data Access.pptxLECTURE 14 Data Access.pptx
LECTURE 14 Data Access.pptx
AOmaAli
 
Ch06 ado.net fundamentals
Ch06 ado.net fundamentalsCh06 ado.net fundamentals
Ch06 ado.net fundamentals
Madhuri Kavade
 
Ado.net &amp; data persistence frameworks
Ado.net &amp; data persistence frameworksAdo.net &amp; data persistence frameworks
Ado.net &amp; data persistence frameworks
Luis Goldster
 
ASP.NET Session 11 12
ASP.NET Session 11 12ASP.NET Session 11 12
ASP.NET Session 11 12
Sisir Ghosh
 

Ähnlich wie ADO.NET (20)

Ado.net
Ado.netAdo.net
Ado.net
 
Ado.Net Architecture
Ado.Net ArchitectureAdo.Net Architecture
Ado.Net Architecture
 
Chap14 ado.net
Chap14 ado.netChap14 ado.net
Chap14 ado.net
 
Introduction to ado
Introduction to adoIntroduction to ado
Introduction to ado
 
Ado
AdoAdo
Ado
 
LECTURE 14 Data Access.pptx
LECTURE 14 Data Access.pptxLECTURE 14 Data Access.pptx
LECTURE 14 Data Access.pptx
 
Ado.net
Ado.netAdo.net
Ado.net
 
Ado.net
Ado.netAdo.net
Ado.net
 
Lecture 6. ADO.NET Overview.
Lecture 6. ADO.NET Overview.Lecture 6. ADO.NET Overview.
Lecture 6. ADO.NET Overview.
 
ADO.NET by ASP.NET Development Company in india
ADO.NET by ASP.NET  Development Company in indiaADO.NET by ASP.NET  Development Company in india
ADO.NET by ASP.NET Development Company in india
 
Ch06 ado.net fundamentals
Ch06 ado.net fundamentalsCh06 ado.net fundamentals
Ch06 ado.net fundamentals
 
For Beginers - ADO.Net
For Beginers - ADO.NetFor Beginers - ADO.Net
For Beginers - ADO.Net
 
Marmagna desai
Marmagna desaiMarmagna desai
Marmagna desai
 
Ado.net &amp; data persistence frameworks
Ado.net &amp; data persistence frameworksAdo.net &amp; data persistence frameworks
Ado.net &amp; data persistence frameworks
 
ASP.NET 09 - ADO.NET
ASP.NET 09 - ADO.NETASP.NET 09 - ADO.NET
ASP.NET 09 - ADO.NET
 
ASP.NET Session 11 12
ASP.NET Session 11 12ASP.NET Session 11 12
ASP.NET Session 11 12
 
ADO.net control
ADO.net controlADO.net control
ADO.net control
 
Unit4
Unit4Unit4
Unit4
 
Ado .net
Ado .netAdo .net
Ado .net
 
Csharp_dotnet_ADO_Net_database_query.pptx
Csharp_dotnet_ADO_Net_database_query.pptxCsharp_dotnet_ADO_Net_database_query.pptx
Csharp_dotnet_ADO_Net_database_query.pptx
 

Kürzlich hochgeladen

1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 

Kürzlich hochgeladen (20)

SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 
Dyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxDyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptx
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the Classroom
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 

ADO.NET

  • 1. Made by:- Farzad Komal Aakash 1
  • 2. What is Ado.net?  The full-form of ado.net is ActiveX Data Object.  ADO.net is the 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.  Ado.net is a collection of classes, interfaces, structures, enumerated type that mange data access from the relational data stores within the .net framework. 2
  • 3. ADO.NET Understanding ADO.net The Ado.net Object Model 3
  • 4. Working with Ado.net  Many of web application development ,in many of the developers data situations involves opening data store, making request for specific data, and then populating the table in then browser with the data.  To address the above situations Ado.net support the following classes: 1)DataSet 2)DataReader 4
  • 5. Working with Ado.net namespaces  The six core Ado.net namespaces are; 1)System.Data 2)System.Data.Common 3)System.Data.OleDb 4)System.Data.Odbc 5)System.Data.SqlClient 6)System.Data.SqlTypes 5
  • 6.  The classes from the above namespaces are categorized as follow:  Disconnected : These Class provides basic structure of Ado.net includes DataTable, etc. The object of this class are capable of storing data without any dependency on specific data provide.  Shared : Set of base classes for data provide and shared amount all data provide. Includes DataSet, DataRow, DataTables, Constraint, etc.  Data Provide : These classes are meant to work with different data soures. Performs all database management operations a specific database.  E.g. : SqlClient data provide works only with SQL Server Database. 6
  • 7. Type of Architecture  ADO.NET is both Connection oriented as well as Disconnection oriented * Connected : Forward-only, Read-only, mode. Application issues query then reads back results and processes them. DataReader object. * Disconnected : Application issues query then retrieve and stores results for processing Minimizes time connected to database DataSet object. 7
  • 8.  Data Provider:- (Connected Environment) A data provider is used for connecting to a database, retrieving data, storing the data in a dataset, reading the retrieved data, and updating the database. * Connection:-This component is used to establish a connection with a data source such as database. * Command:-This component is used to retrieve, insert, delete, or modify data in a data source. * DataReader:-This component is used to retrieve data from a data source in a read-only and forward-only mode. * DataAdapter:-This component is used to transfer data to and from database. A datareader retrieve data from a database into a dataset.  Data Set:- (Disconnected Environment) The data set is a memory-based relational representation of data. * DataTableCollection:-It contains all table retrieved from the data source. * DataRelationCollection:-It contains relationship and links between table in a dataset. * DataTable:-It represent a table in the datatable collection of a dataset. * DataRowCollection:-It contains all the row in a datatable. * DataColoumnCollection:-It contains all the coloumn in a datatable. 8
  • 10. Data isReader way of selecting A data reader(SqlDataReader , etc.,) a simple and fastest some data from a data source but also least capable. * You can't directly instantiate a data reader object. An instance is returned from appropriate Command object after having call ExecuteReader() method. * This data reader is forward-only , read-only connected cursor. You can only travels the records in one direction. Database connection used is kept open until the data reader has been closed. * The DataReader object requires a live connection to the database. So when you are done with DataReader object, be sure to call close(). If not connection stays alive. * When DataReader object is closed (via an explicit call to close) or the object being garbage collected, the underlying connection(con) may also be closed depending on which of the ExecuteReader() method is called. * If you call ExecuteReader() and pass CommandBehaviour. CloseConnection you can force the connection to be closed when the reader is closed. 10
  • 11.  For Data Reader object you have the following methods: * Read():Reads record by record in the data reader. * Close():Closes the SqlDataReader connection * Dispose():Disposes the data Reader object.  Some of the important properties of Data Reader object are: * Connection: Gets the SqlConnection associated with the SqlDataReader. * HasRows : Gets the value that indicates whether the SqlDataReader contains one or more rows. * IsClosed: Retrieves a boolean value that indicates whether the specified SqlDataReader instance has been closed. 11
  • 12. Data Adapter  The Data Adapter classes (Eg:SqlDataAdapter,..) bridges the gap between the disconnected DataTable objects and the physical data source.  The SqlDataAdapter provides two way data transfer mechanisms: * It is capable of executing SELECT statement on a data source and transferring the result set into a DataTable object. * It is also capable of executing the standard INSERT, UPDATE and DELETE statements and extracting the input data from DataTable object. 12
  • 13.  The commonly used properties of SqlDataAdapter class are: * Select Command: Gets or sets an object of type SqlCommand. This command is automatically executed to fill a Data Table with the result set. * Insert Command: Gets or sets an object of type SqlCommand. * Update Command: Gets or sets an object of type SqlCommand. * Delete Command: Gets or sets an object of type SqlCommand.  This SqlDataAdapter class also provide a method called Fill(). * Calling the Fill() method automatically execute the command provided by the Select Command property and retrieve the result set and copies it to DataTable. 13
  • 14. Using Parameter  If you requires SQL Statements that required you to configure using parameters then you need to instantiate Parameter (i.e., SqlParameter,..,) object and providing it with necessary information such as name, value, type, size, direction , etc.,  The following are properties of the SqlParameter class:- * ParameterName, SqlDbType, Size, Direction, SourceColoumn, value  Coding Snipped in using parameters are: for e.g. : SqlCommand myCmd = new SqlCommand(); myCmd.commandText = "SELECT * FROM CUSTOMERS WHERE CITY=@CITY"; sqlParameter parmCity = new SqlParameter(); parmCity.ParameterName="@CITY"; parmCity.SqlDbType=SqlDbType.varchar; parmCity.Direction=ParameterDirection.input; parmCity.Value=“Ahmedabad“ mycmd.Parameter.Add(parmCity); 14
  • 15. DataSet  The DataSet class has been designed as an offline container of data. * Data held within the DataSet is not necessary to come from database. It can be recorded from database. It can be recorded from CSV file, XML source, etc. * A DataSet class contains a set of Data Table classes and links between tables. for e.g. : foreach(DataRow row in ds.Tables["Customers"].rows); Console.WriteLine("{0} and {1}",row[0],row[1]);  Each DataTable class consists DataColoumn, DataRow, Constraints and ExtendedProperties classes.  .csv=Comma Separated Values 15
  • 16.  Here DataColoumn object defines the properties of a coloumn within DataTable. These properties includes data type (Int32, Char, DateTime, etc.,), read-only. You can also assign a name for coloumn. for e.g.: DataColoumn customerID=newDataColoumn("CustomerID",typeof (int)); customerID.AllowDBNull=false; customerID.ReadOnly=false; customerID.AutoIncrement=true; customerID.Unique=true; The actual data within a table is accessed via a DataRow object. One of the interesting aspect of DataRow is that it is versioned. This permits you to receive various values for a given coloumn in a particular row. 16
  • 17. DataSet 17
  • 18. DataSet Architecture  You can create DataSet in any one of the following methods : * Using Server Explorer * Using DataAdapter * Programmatically * Using Xml 18
  • 19.  Coding snippet of using DataSet : for e.g. : SqlConnection con = new SqlConnection(...); SqlCommand cmd = new SqlCommand(...); SqlDataAdapter da = new SqlDataAdapter (cmd, con); DataSet ds = new DataSet(); da.Fill(ds, "MyTable");  Better guideline regarding DataSet is : * Don't use DataSet object unless your project required to work with multiple DataTable object and you need a container for those object. * If you are working with single table then just use DataTable object rather then DataSet.  You can create schemas for a DataTable in three ways. * Let the runtime do it for you. * Write code to create tables. * Use the XML schema generator. 19
  • 20.  The DataAdapter class is used to place the data in a DataSet class. This Adapter class issues the SQL clause and fills a table within the DataSet. * for e.g. : SqlDataAdapter da = new SqlDataAdapter(strCmd , con); DataSet ds = new DataSet(); da.Fill(ds, "Customers"); //Populating DataSet with DataAdapter.  The DataSet class has been designed to establish relationships between data tables with ease.  At present you can apply the ForeignKeyConstraint and UniqueConstraint on a columns in a DataSet.  You can also set Update & Delete constraints on a columns that have constraint relationships. 20
  • 21.  These rules are : * Cascade, None, Set Default, Set Null. for e.g. : DataTable dt = Get DataTable(); //It return DataTable DataColumn[] pk = new DataColumn[1]; pk[0] = dt. Columns["StudentID"]; dt.PrimaryKey = pk;  The Constrains are enfored within a DataSet class if the EnforcedConstraints property of the DataSet is true. 21
  • 22. Data Providers Classes  In .NET framework data provide is used for connecting to database, executing commands are retrieving results. By default the following data provides are included in .NET framework : * Data Provider for SQL Server * Data Provider for OLEDB * Data Provider for ODBC * Data Provider for Oracle  In .NET to access the data set of classes defined in the namespaces System.Data and other namespaces defined within this namespaces. 22
  • 23.  Each data provider contains the following objects: * Connection (for e.g. : Sqlconnection, Oracleconnection, Odbcconnection, etc.) * Command, CommandBuilder (for e.g. : Sqlconnection, SqlConnectionBuilder, etc.) * DataAdapter (for e.g. : SqlDataAdapter, etc.) * DataReader (for e.g. : SqlDataReader, etc) * Parameter (for e.g. : SqlParameter, etc) * Transaction (e.g. : SqlTransaction, etc)  Each Provider use different namespaces. Their namespaces are in respective : * System.Data.SqlClient * System.Data.Oledb * System.Data.Odbc * System.Data.OracleClient 23
  • 24.  In addition to above namespaces few more important namespaces in ADO.NET are: * System.Data * System.Data.Comman * System.Data.SqlTypes  ADO.NET consists number of classes that are used regardless you are using the SQL Server Classes or OLEDB classes.  The System.Data namespaces consists the following classes: * DataSet * DataTables * DataRow * DataColumn * DataRelation * Consraint 24
  • 25. Classes in Data Providers  Each data provider supports the fallowing types of core objects to communicate with database.  The Connection object provides connectivity to a data source.  The Command object enable access to database commands to return data, modify data, run stored procedures, and send or retrieve parameter information.  The DataReader provides a high performance stream of the data from the data source.  Finally, the DataAdapter provides the bridge between the DataSet object and the data source.  The DataAdapter uses Command objects to execute SQL commands at the data source to both load the DataSet with data, and renconcile change made to the data in the data in the DataSet back to the data source. 25
  • 26. Connection Object  The different Connection classes are in different data provider models. * for e.g. : SqlConnection, OleDbConnection, OracleConnection, etc.  The properties of SqlConnection class are: * ConnectionString, DataSource, Database,State. * In above properties DataSource, Database, State are read-only mode.  You can pass necessary connection string information to the SqlConnection in a string format or store in "web.config" file. 26
  • 27.  You can store database connection parameters in configuration file under <ConnectionString> section. Here you can specify name of connection, connection string parameter and provider for this connection. * for e.g. usage of SqlConnection: SqlConnection con = new SqlConnection("Data Source=FARZADFWADIA-PC;Initial Catalog=FarzadWadia; Integrated Security=True"); con.Open();//Use connection object. con.Close(); //you need to call this explicitly, because .net doesn't implicitly release the connection when they fall out of scope. 27
  • 28. Command Object  In Ado.net a command is a string of the containing SQL statements that is to be issued to the database. It can also be a stored procedure or the name of the table which return all columns and rows.  A Command can be constructed by using the instance of SqlCommand. for e.g. : SqlCommand cmd = new SqlCommand("Select * from Employee",con);  After building the command object you need to execute with any one of the methods: * ExecuteNonQuery() : Executes the command but doesn't return any output. Only it will return no of rows effected. * ExecuteReader() : Executes the command and returns a type SqlDataReader. * ExecuteRow() : Executes the command and returns SqlRecord, (Single row) * ExecuteScalar() : Executes the command and returns a single values. * ExecuteXmlReader() : Executes the command and returns XmlReader. 28
  • 29.  Some of the important properties of Command object are : * CommandText : Assign SQL statement or stored procedure name, * CommandTimeout : Specifies no of second to wait for executing a command * CommandType : Possible values are Text, Stored Procedure, Table direct. * Connection : Gets or Sets SqlConnection object.  Calling a stored procedure with a Command object for e.g. : SqlCommand cmd = new SqlCommand("MyStoredProc“ , con); cmd.CommandType = CommandType,StoredProcedure; cmd.Parameter.Add(new SqlParameter(...)); cmd.Paramter[0].Value = val; cmd.ExecuteNonQuery(); 29
  • 30. ADO.NET Programming  ADO.NET Programming involves the following steps: * Create a Connection object and provide connection string Information. * Create a Command object and provide details of SQL command that is to be executed. * Command can be inline SQL Text command, Stored Procedure or direct table access. Also provide required parameters if needed. * If your command doesn't return result set then execute the command simply by calling one of Execute method on Command object. * If your command object returns a result set then you can store the result set in DataReader or DataAdapter object. * To load the data from DataReader to DataTable just call Load() method on DataTable. SqlDataReader myReader=cmd.ExecuteReader(…); DataTable myTable=new DataTable(); myTable.Load(myReader); 30
  • 31. * In reverse if you want a reader from DataTable then use: DataTableReader myReader=myTable.CreateDataReader(); * If you want to retain the result set for feature use without maintaining the connection to the database then use DataAdapter object. This DataAdapter object is used to fill DataSet or DataTable objects. * If you don't want to retain the result set, rather simply process the command in a swift fashion, you use Command object needs a live connection to database and it works as forward-only read-only cursor. 31
  • 32. Student Name StudentID Farzad S111126900191 Komal S111126900185 Aakash S111126900166 32