technicalsymposium

Free Advertisement Procedure and Free Email /Whatsapp Updates

Free Email Alerts-Subscribe Below


Enter your Email ID here:

Note:Login & Check Your Email Inbox and Activate Confirmation Link

Technical Round Materials-ADO.Net-Free Download

Technical Round Materials-ADO.Net-Free Download

Question 1: What is ADO.NET?

Answer 1: ADO stands for Active Data Object and ADO.NET is a set of .NET libraries for ADO.

ADO.NET is a collection of managed libraries used by .NET applications for data source communication using a driver or provider:

  • Enterprise applications handle a large amount of data. This data is primarily stored in relational databases, such as Oracle, SQL Server, and Access and so on. These databases use Structured Query Language (SQL) for retrieval of data.
  • To access enterprise data from a .NET application, an interface was needed. This interface acts as a bridge between an RDBMS system and a .NET application. ADO.NET is such an interface that is created to connect .NET applications to RDBMS systems.
  • In the .NET framework, Microsoft introduced a new version of Active X Data Objects (ADO) called ADO.NET. Any .NET application, either Windows based or web based, can interact with the database using a rich set of classes of the ADO.NET library. Data can be accessed from any database using connected or disconnected architecture.

ADO.NET provides mainly the following two types of architectures:

  • Connected Architecture.
  • Disconnected Architecture.

ADO.NET Namespaces

Namespaces

Description

System.Data

Contains the definition for columns, relations, tables, database, rows, views and constraints.

System.Data.SqlClient

Contains the classes that are used to connect to a Microsoft SQL Server database such as SqlCommand, SqlConnection, SqlDataAdapter.

System.Data.Odbc

Contains classes required to connect to most ODBC drivers. These classes include OdbcCommand,OdbcConnection.

System.Data.OracleClient

Contains classes such as OracleConnection,OracleCommand required to connect to an Oracle database.

Question 2: What are the ADO.NET components?

Answer 2: ADO.NET components categorized in three modes: disconnected, common or shared and the .NET data providers.

The disconnected components build the basic ADO.NET architecture. You can use these components (or classes) with or without data providers. For example, you can use a DataTable object with or without providers and shared or common components are the base classes for data providers. Shared or common components are the base classes for data providers and shared by all data providers. The data provider components are specifically designed to work with different kinds of data sources. For example, ODBC data providers work with ODBC data sources and OleDb data providers work with OLE-DB data sources.

Figure represents the ADO.NET components model and how they work together:



See for more detail:

Question 3: How can you define the DataSet structure?

Answer 3: A DataSet object falls in disconnected components series. The DataSet consists of a collection of tables, rows, columns and relationships.

DataSet contains a collection of DataTables and the DataTable contains a collection of DataRows, DataRelations, and DataColumns. A DataTable maps to a table in the database. The previous DataSet contains a DataTable that maps to the Orders table because you filled it with a SELECT query executed on the Order table.



See for more detail:

Question 4: What is Connection Pooling in ADO.NET?

Answer 4: Connection pooling is the ability of reusing your connection to the database. This means if you enable Connection pooling in the connection object, actually you enable the re-use of the connection to more than one user.

ADO.NET uses a technique called connection pooling, which minimizes the cost of repeatedly opening and closing connections. Connection pooling reuses existing active connections with the same connection string instead of creating new connections when a request is made to the database. It involves the use of a connection manager that is responsible for maintaining a list, or pool, of available connections for a given connection string. Several pools exist if different connection strings ask for connection pooling.

Example of Pooling:

1. connection.ConnectionString = sqlConnectString + "Connection Timeout=30;Connection Lifetime=0;Min Pool Size=0;Max Pool Size=100;Pooling=true;";

2. //Open connection

A Connection String in the Web.Config file with connection pooling option:

1. <connectionStrings>

2. <clear />

3. <add name="sqlConnectionString" connectionString="Data Source=mySQLServer;Initial Catalog=myDatabase;Integrated Security=True;Connection Timeout=15;Connection Lifetime=0;Min Pool Size=0;Max Pool Size=100;Pooling=true;" />

4. </connectionStrings>

SQL Server connection string pooling attributes:

  • Connection Lifetime: Length of time in seconds after creation after which a connection is destroyed. The default is 0, indicating that connection will have the maximum timeout.
  • Connection Reset: Specifies whether the connection is reset when removed from the pool. The default is true.
  • Enlist: Specifies whether the connection is automatically enlisted in the current transaction context of the creation thread if that transaction context exists. The default is true.
  • Load Balance Timeout: Length of time in seconds that a connection can remain idle in a connection pool before being removed.
  • Max Pool Size: Maximum number of connections allowed in the pool. The default is 100.
  • Min Pool Size: Minimum number of connections maintained in the pool. The default is 0.
  • Pooling: When true, the connection is drawn from the appropriate pool, or if necessary, created and added to the appropriate pool. The default is true.

See for more detail:

Question 5: What is the differences Between DataReader and DataSet?

Answer :

No

Data Reader

DataSet

1

Used in a connected architecture

Used in a disconnected architecture.

2

Provides better performance

Provides lower performance.

3

DataReader object has read-only access

A DataSet object has read/write access

4

DataReader object supports a single table based on a single SQL query of one database

A DataSet object supports multiple tables from various databases.

5

A DataReader object is bound to a single control.

A DataSet object is bound to multiple controls.

6

A DataReader object has faster access to data.

A DataSet object has slower access to data.

7

A DataReader object must be manually coded.

A DataSet object is supported by Visual Studio tools.

8

We can't create a relation in a data reader.

We can create relations in a dataset.

9

Whereas a DataReader doesn't support data reader communicates with the command object.

A Dataset supports integration with XML Dataset communicates with the Data Adapter only.

10

DataReader cannot modify data.

A DataSet can modify data.

See for more detail:

Question 6: What is SqlCommand Object?

Answer 6: The SqlCommand carries the SQL statement that needs to be executed on the database. SqlCommand carries the command in the CommandText property and this property will be used when the SqlCommand calls any of its execute methods.

  • The Command Object uses the connection object to execute SQL queries.
  • The queries can be in the form of Inline text, Stored Procedures or direct Table access.
  • An important feature of Command object is that it can be used to execute queries and Stored Procedures with Parameters.
  • If a select query is issued, the result set it returns is usually stored in either a DataSet or a DataReader object.

The three important methods exposed by the SqlCommand object is shown below:

  • ExecuteScalar
  • ExecuteNonQuery
  • ExecuteReader

ExecuteScalar is useful for returning a single value from the database. For example, using this method we can retrieve a sum of sales made by a specific product, total number of records in the employee table, unique id by supplying filtering conditions and so on. Since this method performs faster we do not need to go for the Reader method just to retrieve a single scalar value.

ExecuteNonQuery is useful for performing data manipulation on the database. Simply, the ExecuteNonQuery is for executing the DML statements. The return value of the ExecuteNonQuery is an integral value that represents the number of rows affected by the Operation.

ExecuteReader is used when we need to retrieve rows and columns of data using the SQL select statements. As the data retrieved is a table of data, ExecuteReader returns SqlDataReader. We should iterate through this object to get the required values.

See for more detail:

Question 7: What is the difference between ADO and ADO.NET?

Answer: Difference between ADO and ADO.NET.

ADO

ADO.NET

ADO has one main object that is used to reference data, called the RecordSet object.

You can only work on connected manner. This means that when you access data, such as viewing and updating data, it is real-time, with a connection being used all the time. This is barring, of course, you programming special routines to pull all your data into temporary tables.

In connected model you always get refreshed data.

Whereas ADO allows you to persist records in XML format.

ADO.NET allows you to manipulate your data using XML as the primary means. This is nice when you are working with other business applications and also helps when you are working with firewalls because data is passed as HTML and XML.

ADO allows you to create client-side cursors only.

ADO.NET gives you the choice of either using client-side or server-side cursors. In ADO.NET, classes actually handle the work of cursors. The developer has the freedom of choice in internet development, for creating efficient applications.

Question 8: What is the DataAdapter Object in ADO.NET?

Answer 8: A Data Adapter represents a set of data commands and a database connection to fill the dataset and update a SQL Server database.

A Data Adapter contains a set of data commands and a database connection to fill the dataset and update a SQL Server database. Data Adapters form the bridge between a data source and a dataset.

Data Adapters are designed depending on the specific data source. The following table shows the Data Adapter classes with their data source.

Provider-Specific Data Adapter classes

Data Source

SqlDataAdapter

SQL Server

OledbDataAdapter

OLE DB provider

OdbcDataAdapter

ODBC driver

OracleDataAdapter

Oracle

A Data Adapter supports mainly the following two methods:

  • Fill (): The Fill method populates a dataset or a data table object with data from the database. It retrieves rows from the data source using the SELECT statement specified by an associated select command property.

    The Fill method leaves the connection in the same state as it encountered before populating the data.
  • Update (): The Update method commits the changes back to the database. It also analyzes the RowState of each record in the DataSet and calls the appropriate INSERT, UPDATE, and DELETE statements.

Example:

1. SqlDataAdapter da=new SqlDataAdapter("Select * from

2. Employee", con);

3. da.Fill(ds,"Emp");

4. bldr =new SqlCommandBuilder(da);

5. dataGridView1.DataSource = ds.Tables["Emp"];

See for more detail:

Question 9: Use of DataSet object in ADO.NET?

Answer:

  • It is used in a disconnected architecture.
  • Provides lower performance. A DataSet object has read/write access.
  • A DataSet object supports multiple tables from various databases.
  • A DataSet object is bound to multiple controls.
  • A DataSet object has slower access to data.
  • A DataSet object is supported by Visual Studio tools.
  • We can create relations in a dataset.
  • A Dataset supports integration with XML.
  • A DataSet communicates with the Data Adapter only.
  • A DataSet can modify data.

A DataSet is a collection of DataTable and DataRelations. Each DataTable is a collection of DataColumn, DataRows and Constraints.

Example:

1. DataTable dt = new DataTable();

2. DataColumn col =new DataColumn();

3. Dt.columns.Add(col2);

4. DataRow row = dt.newRow();

See for more detail:

Question 10: Describe the System.Data Namespace Class?

Answer:
The three general namespaces are System.Data, System.Data.Common and System.Data.SqlTypes. Some of the provider-specific namespaces are System.Data.OleDb, Microsoft.Data.Odbc and System.Data.SqlClient.

The System.Data namespace defines classes that you can use with all the data providers or without data providers at all. This namespace also defines interfaces that are base classes for the data provider classes. The following figure shows the System.Data namespace class hierarchy.



See for more detail:

Question 11: What is DataTable in ADO.NET?

Answer:

  • DataTable represents a single table in a database.
  • In this show row and column.
  • DataSet is a collection of data tables.
  • In this store data record.

DataTable representation in .aspx.cs code,

1. protected void BinddataTable()

2. {

3. SqlConnection con = new SqlConnection("your database connection string");

4. con.Open();

5. SqlCommand cmd = new SqlCommand("Write your query or procedure", con);

6. SqlDataAdapter da = new SqlDataAdapter(cmd);

7. DataTable dt = new DataTable();

8. da.Fill(dt);

9. grid.DataSource = dt;

10. grid.DataBind();

11. }

See for more detail:

Question 12: What is the DataReader in ADO.Net?

Answer:

  • DataReader holds only one table at a time.
  • It only provides read only access mode and cannot write data.
  • It is not required local storage to data store.
  • Holds one row at a time.
  • Uses less memory.
  • DataReader do not maintain relation.

DataReader representation in .aspx.cs code,

1. protected void Bind()

2. {

3. SqlConnection con = new SqlConnection("your database connection string ");

4. con.Open();

5. SqlCommand cmd = new SqlCommand("Write your query or procedure ", con);

6. SqlDataReader dr = cmd.ExecuteReader();

7. grid.DataSource = dr;

8. grid.DataBind();

9. }

The DataReader properties

Property

Description

Depth

Indicates the depth of nesting for row

FieldCount

Returns number of columns in a row

IsClosed

Indicates whether a data reader is closed

Item

Gets the value of a column in native format

RecordsAffected

Number of row affected after a transaction

The DataReader methods

Property

Description

Close

Closes a DataRaeder object.

Read

Reads next record in the data reader.

NextResult

Advances the data reader to the next result during batch transactions.

Getxxx

There are dozens of Getxxx methods. These methods read a specific data type value from a column. For example. GetChar will return a column value as a character and GetString as a string.

See for more detail:

Question 13: What is the SqlCommandBuilder?

Answer : CommandBuilder helps you to generate update, delete, and insert commands on a single database table for a data adapter. Similar to other objects, each data provider has a command builder class. The OleDbCommandBuilder, SqlCommonBuilder, and OdbcCommandBuilder classes represent the CommonBuilder object in the OleDb, Sql, and ODBC data providers.

Creating a Command Builder Object:

Creating a CommonedBuider object is pretty simply. You pass a DataAdapter as an argument of the CommandBuilder constructor. For example,

1. // Create a command builder object

2. SqlCommandBuilder builder = new SqlCommandBuilder(adapter);

See for more detail:

Question 14: What is the Connection object in ADO.NET?

Answer : A Connection object sits between a data source and a DataAdapter (via Command). You need to define a data provider and a data source when you create a connection. With these two, you can also specify the user ID and password depending on the type of data source. Figure 3-3 shows the relationship between a connection, a data source, and a data adapter.


Figure: The relationship between connection, data Adapter, and a data source.

Connection can also be connected to a Command object to execute SQL queries, which can be used to retrieve, add, update and delete data to a data source. Figure 2 shows the relationship between the Command and Connection objects.

Data provider connection classes

Data provider

Connection classes

OleDb

OleDbConnection

Sql

SqlConnection

ODBC

OdbcConnection

See for more detail:

Question 15: Describe the DataView in ADO.NET?

Answer: A DataView enables you to create different views of the data stored in a DataTable, a capability that is often used in data binding applications. Using a DataView, you can expose the data in a table with different sort orders, and you can filter the data by row state or based on a filter expression. A DataView provides a dynamic view of data whose content, ordering, and membership reflect changes to the underlying DataTable as they occur. This is different from the Select method of the DataTable, which returns a DataRow array from a table per particular filter and/or sort order and whose content reflects changes to the underlying table, but whose membership and ordering remain static. The dynamic capabilities of the DataView make it ideal for data-binding applications.

How we can create a DataView

There are two ways to create a DataView. You can use the DataView constructor, or you can create a reference to the DefaultView property of the DataTable. The DataView constructor can be empty, or will also take either a DataTable as a single argument, or a DataTable along with filter criteria, sort criteria, and a row state filter.

1. DataView custDV = new DataView(customerDS.Tables["Customers"],

2. "Country = 'USA'",

3. "ContactName",

4. DataViewRowState.CurrentRows);

5. DataView custDV = customerDS.Tables["Customers"].DefaultView;

Question 16: What is ExecuteScalar method in ADO.NET?

Answer:

ExecuteScalar Method

The ExecuteScalar method of the SqlCommand object is useful for retrieving a single value from the database. In our example, we need to retrieve the total number of records in the Titles table of the Pubs database. Since the total number of records is a single scalar value, the Execute Scalar method is used. The following is the code and its explanation:

1. private void frmSqlCommand_Load(object sender, EventArgs e)

2. {

3. //Sample 03: Open Database Connection

4. String con_string = Properties.Settings.Default.ConStrPubs;

5. pubs_db_connection = new SqlConnection(con_string);

6. pubs_db_connection.Open();

7. //Sample 04: Form the Command Object

8. SqlCommand cmd = new SqlCommand();

9. cmd.CommandText = "Select Count(*) as Count from Titles";

10. cmd.Connection = pubs_db_connection;

11. //Sample 05: Execute the Command & retrive scalar value

12. lblTotal.Text = System.Convert.ToString(cmd.ExecuteScalar());

13. }

See for more detail:

Question 17: What are the methods of DataSet?

Answer: It is used in disconnected architecture. It represent records in the form of Database table (Row and Column) format. It stores record of one or more tables.

Example:

1. SqlDataAdapter da;

2. DataSet ds;

3. string strconn = "Data Source=YourServerName;Initial Catalog=EMP;Integrated Security=True";

4. private void Form1_Load(object sender, EventArgs e)

5. {

6. da = new SqlDataAdapter("select * from userdet", strconn);

7. ds = new System.Data.DataSet();

8. da.Fill(ds);

9. dataGridView1.DataSource = ds.Tables[0];

10. }

Methods of DataSet:

  • AcceptChanges(): This method saves changes which are made with records in a DataSet.
  • Clear(): This method clears (removes) all rows from DataSet.
  • Clone(): The clone method copy the structure of DataSet. Means it copy only schema not full records of DataSet.
  • Copy(): It copies the whole records with structure of DataSet.
  • RejectChanges(): This method discard changes which is made with DataSet and set the DataSet to previous stage (which was at first).
  • HasChanges(): This method return boolean value to show whether record of DataSet has changed or not. It returns true if any changes has made and false if no other changes made.
  • GetChanges(): This method keep copy of those record, which is changed or modified.

Question 18: What are Parameters in ADO.NET?

Answer: Parameters in conjunction with SelectCommand to help you Select data for the DataSet.

The OleDbType describes the type information for the parameter. It consists of everything from strings to Global Unique Identifiers (GUIDs). SQL data provider has SqlDbType, and ODBC data provider has an ODBC type. These type names and definitions differ depending upon the provider you're using. For example, the Money type is the same in ODBC and Sqldata providers, but is called Currency in OleDb data providers.

The OLEDB Parameter Class properties

Property

Description

DbType

Represents the DbType of the parameter.

Direction

Represents the direction of a parameter. A parameter can be input-only, output-only, bi-directional, or a stored procedure.

IsNullable

Represents whether a parameter accepts null values.

OleDbType

Represents the OleDbType of the parameter.

ParameterName

Represents the name of the parameter.

Precision

Represents the maximum number of digits used to represent the Value property.

Scale

Represents the decimal places to which Value is resolved.

Size

Represents the maximum size in bytes a column can store.

SourceColumn

Represents the source column mapped to the DataSet.

SourceVersion

Represents the DataRowversion.

Value

Represents the Value of the parameter.

Creating a parameter

this.oleDbDeleteCommand2.Parameters.Add(newSystem.Data.OleDb.OleDbParameter("ContactName", System.Data.OleDb.OleDbType.char, 30, System.Data.ParameterDirection.Input, false, (( system.Byte)(0)),((System.Byte)(0)), "Contact Name", System.Data.DataRowVersion.Original, null));

See for more detail:

Question 19: What is the difference between DataSet and DataReader?

Answer:

DataReader

1. The ADO.NET DataReader is used to retrieve read-only (cannot update data back to datasource) and forward-only (cannot read backward/random) data from a database.

2. Using the DataReader increases application performance and reduces system overheads. This is due to one row at a time is stored in memory.

3. You create a DataReader by calling Command.ExecuteReader after creating an instance of the Command object.

4. This is a connected architecture: The data is available as long as the connection with database exists.

5. You need to open and close the connection manually in code.

DataSet

1. The DataSet is a in-memory representation of data.

2. It can be used with multiple data sources. That is a single DataSet and can hold the data from different data sources holding data from different databases/tables.

3. The DataSet represents a complete set of data including related tables, constraints, and relationships among the tables.

4. The DataSet can also persist and reload its contents as XML and its schema as XML Schema definition language (XSD) schema.

5. The DataAdapter acts as a bridge between a DataSet and a data source for retrieving and saving data.

6. The DataAdapter helps mapping the data in the DataSet to match the data in the data source.

7. Also, upon an update of dataset, it allows changing the data in the data source to match the data in the DataSet.

8. No need to manually open and close connection in code.

9. Hence, point (8) says that it is a disconnected architecture. Fill the data in DataSet and that's it. No connection existence required.

See for more detail:

Question 20 : What you understand by ExecuteNonQuery Method?

Answer 20: The ExecuteNonQuery method is used to execute the command and return the number of rows affected.

The ExecuteNonQuery method cannot be used to return the result set.

Snippets working with ExecuteNonQuery

1. public void CallExecuteNonQuery()

2. {

3. SqlConnection conn = new SqlConnection();

4. conn.ConnectionString = ConfigurationManager.ConnectionStrings["connString"].ConnectionString;

5. try

6. {

7. SqlCommand cmd = new SqlCommand();

8. cmd.Connection = conn;

9. cmd.CommandText = "DELETE FROM EMP WHERE DEPTNO = 40";

10. cmd.CommandType = CommandType.Text;

11. conn.Open();

12. Int32 RowsAffected = cmd.ExecuteNonQuery();

13. MessageBox.Show(RowsAffected + " rows affected", "Message");

14. cmd.Dispose();

15. conn.Dispose();

16. }

17. catch(Exception ex)

18. {

19. MessageBox.Show(ex.Message);

20. }

21. }

See for more detail:

Question 21: What do you understand by DataRelation class?

Answer: The DataRelation is a class of disconnected architecture in the .NET framework. It is found in the System.Data namespace. It represents a relationship between database tables and correlates tables on the basis of matching column.

Example:

1. DataRelation drel;

2. drel = new DataRelation("All", ds.Tables[0].Columns[0], ds.Tables[1].Columns[0]);

See for more detail:

Question 22: How can create a SqlConnection?

Answer: SqlConnection class is used to establish the connection between front end and back end.

Syntax:

SqlConnection obj=new SqlConnection(“Integrated Security=true;Initial Catalog=Table_Name;Data Source=.”);-- for Windows authentication

SqlConnection obj=new SqlConnection(“user id= sa ; Password=sa123;server=.;database=name”); --Sql server Authentication

See for more detail:

Question 23: What are the important classes in ADO.NET?

Answer: ADO.NET is a set of classes (a framework) to interact with data sources such as databases and XML files. ADO is the acronym for ActiveX Data Object. It allows us to connect to underlying data or databases. It has classes and methods to retrieve and manipulate data.

The following are a few of the .NET applications that use ADO.NET to connect to a database, execute commands and retrieve data from the database.

  • ASP.NET Web Applications
  • Console Applications
  • Windows Applications.

Important classes in ADO.NET

1. Connection Class

2. Command Class

3. DataReader Class

4. DataAdaptor Class

5. DataSet.Class

How to Connect to a Database using ADO.NET:

To create a connection, you must be familiar with connection strings. A connection string is required as a parameter to SQLConnection. A ConnectionString is a string variable (not case sensitive).
This contains key and value pairs, like provider, server, database, userid and word as in the following:

Server="nameof the server or IP Address of the server"

Database="name of the database"

userid="user name who has permission to work with database"

word="the word of userid"

See for more detail:

Question 24: What do you understand by SqlTransaction class in ADO.NET?

Answer: The SqlTransaction class is an important class of .NET Framework. It ensures that a body of code will affect a Database or kept the same as previous (Rollback).

At first we should know about it's two most important method which will be used here. They are given below.

  • Commit(): It commits the transaction. It save changes made in Database during transaction. In simple term we can also say that it shows the end of transaction at that time.
  • Rollback(): It is used to rollback the transaction. It set the database in previous stage which was, before the begin of transaction.

See for more detail:

Question 25: What are the two fundamental objects in ADO.NET?

Answer: There are the two fundamental objects in ADO.NET:

  • Data reader
  • Data set

DataReader Class:

The DataReader class object allows you to read the data returned by a SELECT command by a simple forward-only and read-only cursor. It requires a live connection with the data source and provides a very efficient way of looping and consuming all parts of the result set. The object of the DataReader cannot be directly instantiated. Instead you must call the ExecuteReader method of the Command object and close the connection when you are done using the DataReader otherwise the connection remains alive until it is explicitly closed.

DataReader with ExecuteReader() Method:

1. //Open connection

2. Conn.Open();

3. sdr = sc.ExecuteReader(CommandBehavior.CloseConnection);

4. //Get all records

5. while(sdr.Read())

6. {

7. textBox1.AppendText(sdr.GetValue(0) + "\t" + sdr.GetValue(1));

8. textBox1.AppendText("\n");

9. }

DataSet class:

A DataSet is a disconnected architecture technology. It contains zero or more tables and relationships. When you work with a dataset, the data in the data source is not touched at all. Instead all the changes are made locally to the dataset in memory. In the following example you will see how to retrieve data from a SQL Server table and use it to fill in a DataTable object in the DataSet.

Example:

1. private void Form1_Load(object sender, EventArgs e)

2. {

3. //Connection String

4. string conString = "Data Source=localhost;Database=AdventureWorksLT2008;Integrated Security=SSPI";

5. // Add Connection string to SqlConnection

6. SqlConnection Conn = new SqlConnection(conString);

7. string query = "select * from SalesLT.Customer";

8. //Command Class definition

9. SqlCommand sc = new SqlCommand(query, Conn);

10. // Data Adapter definition

11. SqlDataAdapter sda = new SqlDataAdapter();

12. sda.SelectCommand = sc;

13. //data Set definition

14. DataSet ds = new DataSet();

15. // filling the result set in data table

16. sda.Fill(ds, "SalesLT.Customer");

17. //output in data grid

18. dataGridView1.DataSource = ds.Tables["SalesLT.Customer"];

19. }

See for more detail:

Question 26: What is DataAdapter and its property?

Answer: A DataAdapter bridges the gap between the disconnected DataTable objects and the physical data source. The SqlDataAdapter is capable of executing a SELECT, DELETE and UPDATE statement on a data source as well as extracting input from the result set into a DataTable object. The SqlDataAdapter class provides a method called Fill() to copy the result set into the DataTable.

Example:

1. // Data Adapter definition

2. SqlDataAdapter sda = new SqlDataAdapter(sc);

These are the commonly used properties offered by the SqlDataAdapter class as in the following:

Property

Description

SelectCommand

This command executed to fill in a Data Table with the result set.

InsertCommand

Executed to insert a new row to the SQL database.

UpdateCommand

Executed to update an existing record on the SQL database.

DeleteCommand

Executed to delete an existing record on the SQL database.

See for more detail:

Question 27: Which namespaces are used for data access?

Answer: ADO.NET is a collection of managed libraries used by .NET applications for data source communication using a driver or provider.

ADO.NET provides libraries for the datasource communication under the following namespaces.

1. system.Data

2. system.Data.OleDb

3. system.Data.SqlClient

4. system.Data.OracleClient

5. system.Data.Odbc

1. System.Data: This namespace is used for holding and managing data on a client machine.

2. System.Data.OleDb: This namespace can communicate with any data source like files, databases, indexing servers and so on using the “OleDb” Provider.

3. System.Data.SqlClient: This namespace can communicate with “SQL Server” database only using SqlClient Providers.

4. System.Data.OracleClient: This namespace can communicate with an “Oracle” database only using OracleClient Providers.

5. System.Data.ODBC: This namespace contains the same set of classes as the following:

o Connection

o Command

o DataReader

o DataAdaptar

o CommandBuilder

o Parameter

See for more detail:

Question 28: Explain the properties and methods of Command Object.

Answer: The command object is one of the basic components of ADO .NET.

1. The Command Object uses the connection object to execute SQL queries.

2. The queries can be in the form of Inline text, Stored Procedures or direct Table access.

3. An important feature of Command object is that it can be used to execute queries and Stored Procedures with Parameters.

4. If a select query is issued, the result set it returns is usually stored in either a DataSet or a DataReader object.

Associated Properties of SqlCommand class

Property

Type of Access

Description

Connection

Read/Write

The SqlConnection object that is used by the command object to execute SQL queries or Stored Procedure.

CommandText

Read/Write

Represents the T-SQL Statement or the name of the Stored Procedure.

CommandType

Read/Write

This property indicates how the CommandText property should be interpreted. The possible values are:

1. Text (T-SQL Statement)
2. StoredProcedure (Stored Procedure Name)
3. TableDirect

CommandTimeout

Read/Write

This property indicates the time to wait when executing a particular command.

Default Time for Execution of Command is 30 Seconds.

The Command is aborted after it times out and an exception is thrown.

Now, let us have a look at various execute methods that can be called from a Command Object.

Property

Description

ExecuteNonQuery

This method executes the command specifies and returns the number of rows affected.

ExecuteReader

The ExecuteReader method executes the command specified and returns an instance of instance of SqlDataReader class.

ExecuteScalar

This method executes the command specified and returns the first column of first row of the result set. The remaining rows and column are ignored

ExecuteXMLReader

This method executes the command specified and returns an instance of XmlReader class. This method can be used to return the result set in the form of an XML document

See for more detail:

Question 29: Explain the ExecuteReader method:

1. The DataReader object is a forward-only and read-only cursor.

2. It requires a live connection to the data source.

3. The DataReader object cannot be directly instantiated. Instead, we must call the ExecuteReader() method of the command object to obtain a valid DataReader object.

Example:

1. SqlDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);

Question 30: Explain the ExecuteScalar method in ADO.NET?

Answer:

The ExecuteScalar Method in SqlCommandObject returns the first column of the first row after executing the query against the Data Source.

1. If the result set contain more than one column or rows, it takes only the first column of the first row. All other values are ignored.

2. If the result set is empty it will return null.

Example:

1. Int32 TotalSalary = Convert.ToInt32(cmd.ExecuteScalar());

See for more detail:

Question 31: Explain the ExecuteXmlReader?

Answer: The execute reader method is flexible when we need the result set in the form of an XML doucment. The ExecuteXmlReader methods returns an instance of XmlReader class.

Example: XmlReader xmlreader = cmd.ExecuteXmlReader();
XmlDocument xdoc = new XmlDocument();

Using the XmlDocument class we load the XmlReader object and save it to the File System using the Save method.

See for more detail:

Question 32: What method in the oleDbDataAdapter class populates a dataset with records?

Answer:
The Fill method populates a dataset with records.

Diagram:



Example:

1. private void button1_Click(object sender, EventArgs e)

2. {

3. SqlConnection con;

4. SqlDataAdapter adapter;

5. DataSet ds = new DataSet();

6. try

7. {

8. //create connection object

9. con = new SqlConnection("connetionString");

10. //create query string(SELECT QUERY)

11. String query = "SELECT * FROM SOMETABLE WHERE...";

12. con.Open();

13. //Adapter bind to query and connection object

14. adapter = new SqlDataAdapter(query, con);

15. //fill the dataset

16. adapter.Fill(ds);

17. }

18. catch(Exception ex)

19. {

20. con.Close();

21. }

22. }

Question 33: Explain the OleDbDataAdapter Command Properties with Examples?

Answer:

Property

Example

SelectCommand

cmd.SelectCommand.CommandText = "SELECT * FROM Orders ORDER BY Price"

DeleteCommand

TheDataSetCommand.DeleteCommand.CommandText = "DELETE FROM orders WHERE LastName = 'Smith' ";

InsertCommand

TheDataSetCommand.InsertCommand.CommandText = "INSERT INTO Orders VALUE (25, 'Widget1', 'smith')";

UpdateCommand

TheDataSetCommand.UpdateCommand.CommandText = "UPDATE Orders SET ZipCode = '34956' WHERE OrderNum = 14";

The OLEDb Data Adapter methods

Method

Description

Fill

This method fills data records from a DataAdapter to a DataSet object.

FillSchema

This method adds a DataTable to a DataSet.

GetFillParameters

This method retrieves parameters that are used when a SELECT statement is executed.

Update

This method stores data from a data set to the data source.

Question 34: Explain the clear() method of DataSet?

Answer:
This method clears (removes) all rows from DataSet.

Create a button, set it's text as Clear and write the following code in the click event.

1. private void btnclear_Click(object sender, EventArgs e)

2. {

3. ds.Clear();

4. }

5. Run the application.

Output:



Click the "clear" button. You will note that all rows are clear as in the following screenshot,



See for more detail:

Question 35: What is clone() method of DataSet?

Answer:
The clone method copy the structure of DataSet. Means it copy only schema not full records of DataSet.

Take another DataGridView and one button in your project and write the following code on button click event.

1. private void btnclone_Click(object sender, EventArgs e)

2. {

3. DataSet daset = ds.Clone();

4. dataGridView2.DataSource = daset.Tables[0];

5. }

Now run the application.

Output:



Click the "Clone" button. The following figure shows that only structure has copied.



See for more detail:

Question 36: What is the Copy() method of DataSet?

Answer: C opy the whole records with structure of DataSet.

Take a button and set it's text as copy and write the following code on click event.

1. private void btncopy_Click(object sender, EventArgs e)

2. {

3. DataSet daset = ds.Copy();

4. dataGridView2.DataSource = daset.Tables[0];

5. }

Now run the application.

Output:



Click the copy button.



See for more detail:

Question 37: What is the HasChanges() method of DataSet?

Answer:
This method return boolean value to show whether record of DataSet has changed or not. It returns true if any changes made and false if no changes performed.

Take a button and set it's text as "HasChanges" and write the following code on button click.

Example:

1. private void btnHasChanges_Click(object sender, EventArgs e)

2. {

3. if(ds.HasChanges())

4. {

5. MessageBox.Show("Changes Has Made");

6. }

7. if(!ds.HasChanges())

8. {

9. MessageBox.Show("No Change");

10. }

11. }

Run the application.

Output:



Now click at "HasChanges" button after doing some changes in dataset record.

Output:



See for more detail:

Question 38: What are the Connection object properties and Connection class members?

Answer:
The Connection class has a connection string that opens a connection to the database. The connection string will vary depending upon the provider used. The connection strings typically contain a group of property-value pair to describe how to connect to a database. For an OleDbConnection, you have properties such as Provider and DataSource.

Property

Description

ConnectionString

Represent the connection string.

ConnectionTimeOut

Waiting time while establishing a connection.

DataBase

Name of the current database.

DataSource

Location of the file name of the data source.

Provider

Name of the OLE DB provider. This property is not available for Sql and ODBC data providers.

State

Current state of the connection of type ConnectionState. (Table 5-17 describes the ConnectionState).

PacketSize

Size of network packets. Available to only Sql data providers.

ServerVersion

SQL server version. Available to only Sql data providers.

WorkStationId

Database client ID. Available to only Sql data providers.

The connection can have different states such as open, closed, connecting, and so on. The ConnectionType enumeration defines the members of the ConnectionState.

The connection Class Members

Method

Description

BeginTransaction

Begins database transaction.

ChangeDatabase

Changes databases for an open connection.

Close

Closes an opened connection.

CreateCommand

Creates and return a Command object depends on the data providers. For example, OleDb Connection returns OleDbCommand, and SqlConnection returns SqlCommand.

Open

Open a new connection.

ReleaseObjectPool

Represents that the connection pooling can be cleared when the provider is released. Available only for Ole Db data providers.

Question 39: What is the preferred method for executing SQL commands that contain parameters?

Answer:
The preferred method is to use the SqlParameter and oleDbParameter objects, as detailed in the section "Using Parameters with the command Object."

The SqlParameter class is found in the " System.Data.SqlClient" namespace. It is a class of a connected architecture of .NET framework. It represents parameters. To work with the SqlParameter class we should have a database.

See for more detail:

Question 40: Hpw DataSet objects in ADO.NET replace the ADO Recordset object?

Answer :
DataSet is good for ADO.NET objects to replace the ADO Recordset object:

  • DataSet can hold multiple tables at a time.
  • It allows data access to easily read or write data operations in / from the database.
  • DataSet data stores in local system.
  • It holds multiple rows at a time.
  • It uses more memory.
  • DataSet maintain relation.
  • It bind data from the database.

DataSet representation in .aspx.cs code,

1. protected void BindDataSet()

2. {

3. SqlConnection con = new SqlConnection("your database connection string ");

4. con.Open();

5. SqlCommand cmd = new SqlCommand("Write your query or procedure ", con);

6. SqlDataAdapter da = new SqlDataAdapter(cmd);

7. DataSet ds = new DataSet();

8. da.Fill(ds);

9. grid.DataSource = ds;

10. grid.DataBind();

11. }

See for more detail:

Question 41: What is Transactions and Concurrency in ADO.NET?

Answer:
Transactions: ADO.NET providers a transaction class that represents a transaction. All data providers provide their own version of the transaction class. The IDbTransaction interface implements the basic functionality of the transaction class. All data provider-specific classes implement this namespace.

Figure shows some of the classes that implement IDbTransaction.



Methods of the Transaction Class

Method

Description

Commit

Commits the transaction to the database

Rollback

Rollbacks a transaction to the previous database state

Begin(IsolationLevel)

Begins a nested database transaction passing the isolation level

Concurrency in ADO.NET:

The ADO.NET model assumes that the optimistic concurrency is the default concurrency because of its disconnected nature of data. A user reads data in a data through a data adapter, and data is available to user as a local copy of the data. The server database is available to all other users.

Another way of handling optimistic concurrency that you may be familiar with is by checking to see if a timestamp on the data source row has changed or the row version number has changed on the row being updated.

Pessimistic locking on the database isn't really supported by the data providers because the connection to the database is not kept open, so you must perform all locking with business logic on the DataSet.

Question 42: What is the ADO.NET Data provider?

Answer:
There are four .NET data providers available.

1. SQL Server: It is used to work specifically with Microsoft SQL Server. It exists in a namespace within the System.Data.SqlClient.

2. OLE DB: It is used to work with the OLEDB provider. The System.Data.dll assembly implements the OLEDB .NET framework data provider in the System.Data.OleDb namespace.

3. ODBC: To use this type of provider, you must use an ODBC driver. The System.Data.ODBC.dll assembly implements the ODBC .NET framework data provider. This assembly is not part of the Visual Studio .NET installation.

4. Oracle: The System.Data.OracleClient.dll assembly implements the Oracle .NET framework data provider in the System.Data.OracleClient namespace. The Oracle client software must be installed on the system before you can use the provider to connect to an Oracle data source.

See for more detail:

Question 43: How can we Create and Manage Connections In ADO.NET?

Answer :

Creating a Connection object

The connection component of a dataprovider establishes a connection with a database. To connect to Microsoft SQL Server, you use the SQL connection class. The following are the commonly used properties and methods of the SqlConnection class.

ConnectionString: It provides information, such as database name and user credentials for database access and so on.

Open():
Opens the connection for accessing the database.

Close():
Closes the connection to the database.

For Example:

1. // Creating object of SqlConnection Class.

2. SqlConnection cn = new SqlConnection();

3. //Creating connection string to sample database.

4. cn.ConnectionString = "Data source=.; Initial Catalog=Sample; User Id=sa; Password=faculty";

The connection string provides the information that defines the connection to the database.

  • Data Source: Specifies the provider name or your server name.
  • Initial Catalog: Specifies the name of the database.
  • User Id and Password: Provide the username and password of your database server.

1. Open the Connection

2.

3. // Creating object of SqlConnection Class.

4. SqlConnection cn = new SqlConnection();

5. //Creating connection string to sample database.

6. cn.ConnectionString = "Data source=.; Initial Catalog=Sample; User Id=sa; Password=faculty";

7. cn.Open(); // it open the connection to database server..

Close the Connection

1. // Creating object of SqlConnection Class.

2. SqlConnection cn = new SqlConnection();

3. //Creating connection string to sample database.

4. cn.ConnectionString = "Data source=.; Initial Catalog=Sample; User Id=sa; Password=faculty";

5. cn.Open(); // it open the connection to database server..

6. //Creating sqlcommand class object

7. SqlCommand cmd = new SqlCommand("Select * from tblEmployees", cn);

8. SqlDataReader dr = cmd.ExecuteReader();//Executing query

9. cn.Close();//Closing the connection

See for more detail:

Question 44: What is disconnected data?

Answer:
A data representation, such a DataSet, that doesn't require a continuous database connection. Working with disconnected data:

The data in DataSet is disconnected from database. Once you fetch the results of a query into a DataSet using a DataAdapter object, there is no longer a connection between DataSet and database. Changes you make to the contents of the DataSet will not affect the database. If other users modify data in database that corresponds to the data in DataSet, you will not see those changes in your DataSet.

Working with disconnected data structures definitely has its benefits. The first major benefit of working with disconnected data is that it does not require a live connection to your database. Once you've fetched the results of your query into a DataSet object, you can close the connection to your database and continue to work with the data in your DataSet.

Disconnected data structures such as DataSets are also helpful when you build multi-tiered applications. If your application uses business objects running on a middle-tier server to access database, business object needs to pass disconnected data structures to client application. The DataSet object is designed for use in such situations. You can pass the contents of a DataSet from one component to another. The component that receives the data can work with the information as a DataSet (if the component is built using the Microsoft .NET Framework) or as an XML document.

See for more detail:

Question 45: Explain the DataTable and Relationship between the DataTable, the DataRow, and the DataColumn.

Answer:
A DataTable object represents a database table. A data table is a collection of columns and rows. The DataRow object represents a table row, and the DataColumn object represents a column of the table.

The Columns property of the DataTable object represents the DataColumnCollection, which is a collection of DataColumn objects in a DataTable. You use a DataRow object to add data to a data table. TheDataRowCollection object represents a collection of rows of a DataTable object, which can be accessed by its Rows property.

Figure shows the relationship between the DataTable, DataRow, and DataColumn.



See for more detail:

Question 46: Explain about Data Access Object or DAO?

Answer:
Data Access Object (DAO) enabled programmers to access local databases in the Microsoft Jet Database Engine format, which were primarily Indexed Sequential Access Method (ISAM) files. After DAO came RDO and then ActiveX Data Objects (ADO). These data access technologies were designed for a client / server paradigm. However the tendency of distributed computing forced the development of a new technology to solve the problems of data manipulation on a n-tier architecture. ADO.NET is the evolution of ADO and its components have been designed to function properly on a n-tier architecture.

Summary of the evolution of the database objects to access data from Microsoft:

Name

Brief

Description

DAO

Data Access Objects

The first object-oriented interface that exposed the Microsoft Jet database engine that allowed developers using Visual Basic to directly connect to Access tables and other databases using ODBC. It is ideal for small databases in local deployments and single-system applications.

RDO

Remote Data Objects

An object-oriented data access interface to ODBC combined with the easy functionality of DAO allowing an interface to almost all of ODBC's low power and flexibility.
RDO can't access Jet of ISAM databases in an efficient way. RDO provides the objects, properties, and methods needed to access the more complex aspects of stored procedures and complex resultsets.

ADO

Microsoft ActiveX Data Objects

ADO is the successor to DAO/RDO. ADO is the consolidation of almost all the functionality of DAO and RDO.
ADO mostly includes RDO-style functionality to interact with OLE DB data sources, plus remoting and DHTML technology.

ADO MD

Microsoft ActiveX Data Objects Multidimensional

Provides easy access to multidimensional data from languages such as Microsoft Visual Basic and Microsoft Visual C++. ADO MD extends Microsoft ActiveX Data Objects (ADO) to include objects specific to multidimensional data, such as the CubeDef and Cellset objects. To work with ADO MD, the provider must be a multidimensional data provider (MDP) as defined by the OLE DB for OLAP specification. MDPs present data in multidimensional views as opposed to tabular data providers (TDPs) that present data in tabular views. With ADO MD you can browse multidimensional schema, query a cube, and retrieve the results.

ADOX

Microsoft ActiveX Data Objects

Extensions for Data Definition Language and Security Is an extension to the ADO objects and programming model. ADOX includes objects for schema creation and modification, as well as security. Because it is an object-based approach to schema manipulation, you can write code that will work against various data sources regardless of differences in their native syntaxes.ADOX is a companion library to the core ADO objects. It exposes additional objects for creating, modifying, and deleting schema objects, such as tables and procedures. It also includes security objects to maintain users and groups and to grant and revoke permissions on objects.

RDS

Remote Data Service

You can move data from a server to a client application or Web page, manipulate the data on the client, and return updates to the server in a single round trip.

ADO.NET

Microsoft ActiveX Data Objects

.NET ADO.NET is entirely based on XML. ADO.NET provides consistent access to data sources such as Microsoft SQL Server, as well as data sources exposed via OLE DB and XML. Data-sharing consumer applications can use ADO.NET to connect to these data sources and retrieve, manipulate, and update data.
ADO.NET cleanly factors data access from data manipulation into discrete components that can be used separately or in tandem. ADO.NET includes .NET data providers for connecting to a database, executing commands, and retrieving results. Those results are either processed directly, or placed in an ADO.NET DataSet object in order to be exposed to the user in an ad-hoc manner, combined with data from multiple sources, or remoted between tiers. The ADO.NET DataSet object can also be used independently of a .NET data provider to manage data local to the application or sourced from XML.
The ADO.NET classes are found in System.Data.dll, and are integrated with the XML classes found in System.Xml.dll. When compiling code that uses the System.Data namespace, reference both System.Data.dll and System.Xml.dll. Compared with ADO there is no Recordset object.
In ADO.NET there are four classes that read and write data from data sources:

1. Connection .- Connect to data source

2. Command .- Execute stored procedures

3. DataAdapter .- Connects DataSet to database

4. DataReader .- Forward/only, read/only cursor

See for more detail:

Question 47: What are the advantages of ADO.NET?

Answer: Advantages of ADO.NET:


ADO.NET offers several advantages over previous Microsoft data access technologies, including ADO. Few advantages are listed below:

Single Object-oriented API

ADO.NET provides a single object-oriented set of classes. There are different data providers to work with different data sources but the programming model for all these data providers work in the same way.

Managed Code

The ADO.NET classes are managed classes. CLR takes care of language independency and automatic resource management.

Deployment

Microsoft uses MDAC (Microsoft Data Access Component), which is used as ActiveX component in .NET Framework (X is extensible component, when X is written after a term means extensible). .NET components takes care of deployment which was difficult than the previous technologies used in deployment.

XML Support

ADO.NET data is cached and transferred in XML (EXtensible Markup Language) format. XML provide fast access of data for desktop and distributed applications.

Performance and scalability

Performance and scalability are two major factors while developing web-based application and services. Disconnected cached data in XML help in performance and scalability.

Question 48:What is GetChanges() method in ADO.NET?

Answer:
The GetChanges method of DataSet can be used to retrieve the rows that have been modified since the last time DataSet was filled, saved or updated. The GetChanges method returns a DataSet object with modified rows.

The GetChanges method can take either no argument or one argument of type DataRowState. The DataRowState enumeration defiles the DataRow state, which can be used to filter a DataSet based on the types of rows.

DataRowState members:

Member

Description

Added

Add added rows to a DataRowCollection of a DataSet and AcceptChanges has not been called.

Deleted

All the deleted rows.

Detached

Rows were created but not added to the row collection. Either waiting for the addition or have removed from the collection.

Modified

Modified rows and AcceptChanges has not been called.

Unchanged

Unchanged rows since last AcceptChanges was called.

See for more detail:

Question 49: How can you access the data from DataReader?

Answer:
DataReader is a class that holds data as rows and coloums to access data from the DataReader.

It provides the following methods:

1. GetName(int ColIndex)

The return type of this method is a string, it returns the name of the column for the given index position.

2. Read()

Moves the Record Pointer from the current location to the next row and returns a Boolean status that tells whether the row to which we have moved contains data in it or not, that will be true if present or false if not present.

3. GetValue(int Colindex)

Returns a column's value from the row to which the pointer was pointing by specifying the column index position.

4. NextResult ()

Moves the record pointer from the current table to the next table if a table exists and returns true else returns false.

Features of Data Reader

1. Provides faster access to data from a Data Source, since it is connection oriented.

2. It can hold multiple tables at a time. To load multiple tables into a DataReader pass multiple select statements as the argument to the command separated by a colon (;).

For example:

1. Command cmd=new Command(“Select * From Student ; Select * From Mark ”, Con);

2. Data Reader dr= cmd.ExecuteReader();

See for more detail:

Question 50: What is BindingSource class in ADO.NET?

Answer:
The BindingSource class is used to simplify data binding as well as various operations on records. It has different methods like AddNew( ), MoveFirst( ), MovePrevious( ), MoveNext( ), etc which provide easier way for adding new row, moving to first record, moving to previous record, moving to next record and many other operations without writing code for them.

Q #1) What is ADO.NET?

Answer: ADO.net Stands for Microsoft ActiveX Data Object. Ado.net is a database technology which we can think like a set of classes that can be used to interact with the data sources like databases and XML files.

Asp.net application, windows application, console application are the few types of .net applications that use ADO.NET to connect with the databases to execute commands and retrieve data.

Q #2) What are the key features of ADO.NET?

Answer:

  • Disconnected Data Architecture.
  • Data cached in DataSet.
  • Scalability
  • Data transfer in XML Format.
  • Strongly typed language.

Q #3) Why is it important to close an ADO.NET application?

Answer : Connections need to be closed properly because it affects the scalability and reliability of the applications.

For open connections it is always vulnerable to attack, so to be short, ‘Open connections as late as possible and close it as early as possible’. We can ‘Close’ the connections by ‘final’ block or ‘using’ the USING statement.

Q #4) What are the two uses of a ‘using’ statement in c#?

Answer :

#1) To import a namespace.

For Example : using System;

#2) To Close a connection properly, refer the below figure. The connection is automatically closed at the end of ‘using’ block.

Q #5) Give an example of a .NET application which connects to Microsoft Access Database using Ado.net classes.

Answer : Example given below describes only how to establish a connection to Microsoft Access Database, it won’t explain about the executing commands against the database.

For establishing a connection to the database and retrieve the values from a database we need to follow the below steps:

  • Import reference library class. Example: using System.Data.OleDB.
  • Create connection object.
  • Specify the connection string, you may copy that from the Database Property.
  • Use Connection object constructor and specify the ‘connection String ‘as Argument.
  • Open an instance of Connection (It’s better to open it in a try-catch statement).

Q #6) What is Connection Pooling?

Answer : Data providers implement ‘Connection pooling’ services. ‘Connection pooling’ improves performance. Connection pooling creates a set of connections.

When you are establishing a connection with the database, you will be given a connection from a pool. When you disconnect from the database, the connection will return to the pool and that connection will be used by the next applicant who wants a connection.

With ‘Connection pooling’ the ‘opening’ and ‘closing’ of connections no longer become an expensive task.

Q #7) What is a Dataset?

Answer : Dataset is a disconnected copy of data that gets populated in the client PC. It contains Datatables and Datarelations. Generally, DataAdapter is required for populating a Dataset with the data.

Since it is disconnected, the user no longer need to be connected to the database every time and data manipulations are performed without interacting with the data source. It is very fast and reliable as it resides in the local system.

Two Objects in Dataset

  • DataTableCollection
  • DataRelationCollection

Two Types of Dataset

  • Typed Dataset
  • Untyped Dataset

Q #8) What are the different methods by which we can populate a Dataset?

Answer: We can populate the Dataset using different the approaches mentioned below:

  • Using DataAdapter objects and ‘fill’ method.
  • Programmatically creating Datatable, Datarow, and Data column objects.
  • Data from Xml Documents.
  • Merging with another Dataset.

Q #9) What is DataAdapter?

Answer : DataAdapter helps in linking the database and connection object. DataAdapter provides the communication between Dataset and data sources.

Data moves ‘in and out’ of the Dataset through DataAdapter.

Properties of DataAdapter that allow the user to control the database are:

  • Select Command
  • Update Command
  • Insert Command
  • Delete Command

Q #10) What are DataReaders?

Answer : DataReader object is ‘stream-based’, ‘read-only’ and ‘forward-only’, which provides a connection based data access from a database. This contains a ‘Read ()’ method that retrieves the data stored in a data source.

A Connection Object has only one DataReader at a time. ‘Read ()’ method retrieves only one row at a time. That is data need not be completely read into the application before it is processed.

Q #11) Give few examples of DataReader that is used in different DataProviders.

Answer : Each DataProvider has a DataReader class.

Few are given in the table below:

DataProvider

DataReader

OleDb

OleDbDataReade

Sql

SqlDataReader

ODBC

ODBCDataReader

Q #12) What is Databinding?

Answer : Databinding is the process of binding the data with graphical elements (controls in a window form). After binding the data in a window form, you can navigate through the records with the help of the Binding Navigator Control.

One of the advantages of data binding is, the user does not need to write the codes explicitly, for establishing the connections and creating a data set, this feature will write the necessary ADO.NET code for the user.

Q #12) What are the types of Databinding?

Answer : This classification is based on the number of bound values that can be displayed through a control of the window form.

Two types of Databinding

  • Simple Data Binding
  • Complex Data Binding

Simple Data Binding: It is the process of binding a control to a single data element.

For Example: Binding a textbox or label with a single value.

Complex Data Binding: It is the process of binding a component to display one data element or multiple data elements.



For Example: GridView or Listbox control binding one data element or more than one records in a table.

Q #13) What are DataProviders?

Answer : DataProviders are used for connecting to a database, retrieving data storing data, updating the data etc.

Example of DataProviders: SQL, OleDb, ODBC

Four Components of DataProviders are:

  • Connection
  • Commands
  • DataReader
  • DataAdapter

Q #14) Describe ADO.NET object model in detail.

Answer : ADO.net is based on an Object Model. The data from Datasource is retrieved with Data Provider. The Data providers include components such as connection, DataAdapter, DataReader, and Command. It provides data to the application, updates the database with the changes made in the application.

An Application can access the data either through a data set or through a DataReader object.

ADO.net also enables to create an XML representation of a dataset. In an XML representation of a dataset, data is written in XML format.

Q #15) What are the key events of SqlConnection Class?

Answer : The two key events of SqlConnection are:

  • StateChange event
  • InfoMessage event

StateChange event: This event occurred when the state of the Connection changes.

The event handler receives an argument (Datatype: StateChangeEventArgs) which contains the data related to that particular event.

InfoMessage event: This event occurred when an info message or Warning is returned from a data source. The event handler receives an argument (Datatype: SqlInfoMessageEventArgs) which contains the data related to that particular event.

Q #16) What you mean by Filtering of data?

Answer : Filtering of data is done when you need to display only selective records.

Given below are the two methods for filtering data:

  • Creating parameterized queries.
  • Filtering data using control of a window form.

Q #17) What is the difference between Connected and Disconnected environment?

Answer : Difference between Connected and Disconnected environment is stated in the below table.


Connected Environment

Disconnected Environment

It requires a constant connection to transfer data between the application and database

It doesn’t require a constant connection to transfer data between the application and database

Data concurrency is easy to control

Data concurrency is not easy to control

Data is up-to-date since user is always connected to the database

Data is not up-to-date since user is always connected to the database

It has scalability and performance issues for the client application

It improves scalability and performance of the client application

Lead to network traffic logging

Less network traffic logging issues

Q #18) What do you mean by performing Asynchronous Operation using Command Object?

Answer : Sometimes execution of the commands in the database may take a large amount of time to complete as they are linked to each other.

A solution for such a situation has asynchronously executed the commands against the database without waiting for the command execution to finish, which can be handy in the situation in which, when you try to execute the long-running base commands.

Advantages of Asynchronous Execution:

  • Improves performance.
  • Improve responsiveness of the client application.

Q #19) What do you mean by ‘Batch Updates’?

Answer : A batch update can be defined as a batch of updates grouped together. To improve the performance of the data updates in a database is to update and send the changes in batches to the database, rather than one by one.

Advantages of Batch Updates:

  • Less network traffic is involved as data is sent in batches.
  • A database might be able to execute some of the updates in parallel.

Q #20) What is the difference between Typed and Untyped Dataset?

Answer : The differences are explained below:

Typed Dataset: A typed dataset is derived from the Dataset class and has an associated XML schema, which is created at the time of creation of the dataset.

The XML schema contains information about the dataset structure such as tables, columns, and rows. Data is transferred from a database into a dataset and from the dataset to another component in the XML format.

Untyped Dataset: Untyped dataset doesn’t have an XML schema associated with it. Untyped Dataset, the tables, and columns are represented as a collection.

Q #21) What are the rules to implement connection pooling?

Answer : To establish a connection pooling, following rules must be followed:

  • The connection string must be the same for every User.
  • The UserID must be the same for every user.

Q #22) What is a Datatable?

Answer : Datatable is a collection of rows, columns, and constraints. A Datatable is able to perform disconnected data access.

Q #23) What is DataView?

Answer : A DataView control creates a customized view of data stored in Datatable. The changes in DataView will affect the Datatable. By default, every table has a data view attached to it.

You can then add the DataView control and bind it to a Windows form. It allows the user to filter, navigate and sort the data in it.

Q #24) What are the major challenges in accessing data from a database?

Answer : The challenges include:

  • More than one user might need to access the data simultaneously from one database.
  • More than one user might need to access the data anytime, anywhere.

The solution to this problem is attained by implementing a ‘Database locking’ during the time of transaction execution.

Q #25) What is meant by ‘Transaction’ in a database and what are the ‘Properties of Transaction’?

Answer : Transaction can be defined as a series of operation. If the transaction is successful, all the data modifications performed in the database will be committed and saved.

Properties of Transaction

  • Atomicity
  • Consistency
  • Isolation
  • Durability

Atomicity: Consider a bank transaction in which an amount, say Rs 1000/- is withdrawn from the Account ’AB’.

If a system failure occurrs, the amount will rollback to the Account ’AB’ itself. This property is termed as ‘Atomicity’. This property states that either all the changes to the data are performed or none of them are performed.

This means that the transactions should be completed successfully or transactions should not begin at all.

Consistency: For Example , consider the bank transaction in which an amount of Rs 500/- is transferred from Account ‘A’ to Account ‘B’. A system failure occurs and that Rs 500/- is reduced from Account ‘A’ and at the same time Rs 500/- is not credited to Account ‘B’. Such a system is considered an ‘Inconsistent’.

‘Consistency’ states that the data in the system should be in a consistent state after a transaction is completed successfully, thus maintain the integrity of the same.

As per the above Example, the transaction will be rolled back to add Rs 500/- to Account ‘A’ and thus maintain system consistency.

Isolation: Consider the bank transaction process in which an Account ‘A’ is transferring Rs 500/- to Account ‘B’ and Account ‘C’ at the same time. Account ‘A’ having Rs 1500/- as total balance. For a ‘Non-Isolated System’ both transactions will read the balance for Account ‘A’ as Rs 1000/ instead of Rs 500/- which is incorrect.

‘Isolation’ states that the changes in data of a system made by one transaction must be isolated from the changes made by the other transaction.

For an ‘Isolated System,’ the first transaction will read a balance of Rs 1000/- and the second transaction will read a balance of Rs 500/- for Account ‘A’.

Durability: Here it states that any change made in the data by a successful transaction will be permanent. Recovery management system is responsible to maintain the durability of a system.

Q #26) What are two types of transaction supported by ADO.net?

Answer :

Two types of Transaction supported by ADO.net

  • Local Transaction
  • Distributed Transaction

Local Transaction: A local transaction is based on a single data source. It will be handled directly by the database.

For Example : We import ‘System.Data.SQL client’ namespace, if we need to perform data transaction using Sqlserver. Similarly, we import ‘System.Data.Oracle client’ namespace, if we are using Oracle database.

Distributed Transaction: If the user needs to perform a transaction across multiple data Servers like SQL Server, Oracle etc., he can use a distributed transaction.

Q #27) What is the difference between DataReader and DataSet?

Answer : Differences are as follows:

DataReader

DataSet

Performance is better

Provides lower performance

It cannot modify data

It can modify data

It supports connected Architecture

It supports disconnected architecture

It has Read-only access

It has Read/Write access

It has faster access to data

It has slower access to data

It must be manually coded

Visual studio has toolset to support it

1. What is an ADO.Net?

ADO.Net is commonly termed as ActiveX Data Objects which is a part of .Net Framework. ADO.Net framework has set of classes which are used to handle data access by connecting with different databases like SQL, Access, Oracle, etc…

2. What are two important objects of ADO.Net?

There are two important objects of ADO.Net:

  • DataReader and .
  • DataSet.

3. What are the namespaces used in ADO.Net to connect to a database?

Following namespaces are used to connect to Database.

1.

o The System.Data namespace.

o The System.Data.OleDb namespace – A data provider used to access database such as Access, Oracle, or SQL.

o The System.Data.SQLClient namespace – Used to access SQL as the data provider.

4. What is LINQ?

LINQ is native query language for .NET framework and it is specially designed to support queries with the .net applications. LINQ can be connected to SQL and MS Access.

5. What are the data providers in ADO.NET framework?

Below Data Providers are used in ADO.NET framework.

1. .NET Framework Data Provider for SQL Server – A Data provider that provides access to Microsoft SQL Server 7.0 or later version and it uses the System.Data.SqlClient namespace.

2. .NET Framework Data Provider for OLE DB – A Data Provider that provides access to any database exposed by using OLE DB and it uses the System.Data.OleDb namespace.

3. .NET Framework Data Provider for ODBC – A Data Provider that provides access to any databases exposed by using ODBC and It uses the System.Data.Odbc namespace.

4. .NET Framework Data Provider for Oracle – A Data Provider that provides access to Oracle database 8.1.7 or later versions and it uses the System.Data.OracleClient namespace.

6. What is DataReader Object?

Datareader is an object of ADO.Net which provides access to data from a specified data source. It consists of classes which sequentially read data from a data source like Oracle, SQL or Access.

7. What is Dataset Object?


A Dataset is set to be collection of data with a tabular column representation. Each column in the table represents a variable and the row represents to value of a variable. This Dataset object can be obtained from the database values.

8. What is object pooling?

Object pooling is nothing but a repository of the objects in memory which can be used later. This object pooling reduces the load of object creation when it is needed. Whenever there is a need of object, object pool manager will take the request and serve accordingly.

9. What is connection pooling?

Connection pooling consists of database connection so that the connection can be used or reused whenever there is request to the database. This pooling technique enhances the performance of executing the database commands. This pooling definitely reduces our time and effort.

10. What is Data view?

Data view is the representation of data in various formats and it can be requested by the users. Data can be exposed in different sort orders or filter on the user condition with the help of Data view. Data Customization is also possible through Data View.

11. What is Data Adapter?

Data Adapter is a part of ADO.NET data provider which acts as a communicator between Dataset and the Data source. This Data adapter can perform Select, Insert, Update and Delete operations in the requested data source.

12. What is the use of SqlCommand object?

SQLCommand object that allows user to interact with the database. This object mainly used to query the database and it can be of different types – Select, Insert, Modify and Delete.

13. What is the difference between ADO and ADO.Net?

ADO works with the connected data whereas ADO.Net works in a disconnected manner. ADO has main object called Recordset which is used to reference data. But ADO.Net has various objects to access the database.

ADO allows creating client side cursors whereas ADO.Net deals with both server side and server side cursors. ADO allows persisting records in XML format and ADO.Net allows to manipulate data using XML.

14. What are the benefits of ADO.Net?

Following are the benefits of ADO.Net:

  • Programmability
  • Maintainability
  • Interoperability
  • Performance
  • Scalability

15. What is the use of connection object?

ADO.Net Connection object is used to establish a connection between application and the data source. SQL Commands can be executed once this connection has been established. It is mandatory to close the connection object once data base activities are completed.

16. What are all features of ADO.Net?

Following are the features of ADO.Net:

  • Data Paging
  • Bulk Copy Operation
  • New Data Controls
  • Datareader’s execute methods.

17. What is the difference between Response.Expires and Reponse.ExpiresAbsolute?

Response.expires property specify the minutes of page in cache from the time, the request has been served from server.

But Response.ExpiresAbsolute property provides exact time at which the page in cache expires.

Example –

Response.expires – Set to 10 mins and it will stay in cache for 10 mins from time it has been requested

Response.ExpiresAbsolute – Oct 30 12:20:15. Till this specified time, Page will be in cache.

18. What is boxing and unboxing?

Conversion of value type to reference type is called Boxing and Conversion of reference to value type is called Unboxing. Boxing and Unboxing are used for type casting from value to reference type and vice versa.

19. What is the difference between Datareader and Dataset?

Following table gives difference between Datareader and Dataset:

Datareader

Dataset

Forward only

Loop through Dataset

Connected Recordset

Disconnected Recordset

Single table involved

Multiple tables involved

No relationship required

Relationship between tables maintained

No XML storage

Can be stored as XML

Occupies Less Memory

Occupies More memory

Read only

Can do addition / Updation and Deletion

20. Is it possible to edit data in Repeater control?

No, it is not possible to edit data in the Repeater control.

21. What are all components of ADO.Net data provider?


Following are the components of ADO.Net Data provider:

  • Connection object – Represents connection to the Database
  • Command object – Used to execute stored procedure and command on Database
  • ExecuteNonQuery – Executes command but doesn’t return any value
  • ExecuteScalar – Executes and returns single value
  • ExecuteReader – Executes and returns result set
  • DataReader – Forward and read only recordset
  • DataAdapter – This acts as a bridge between database and a dataset.

22. What are the differences between OLEDB and SQLClient Providers?

OLEDB provider is used to access any database and provides flexibility of changing the database at any time. SQLClient provider is used to access only SQL Server database but it provides excellent performance than OLEDB provider while connecting with SQL Server database.

23. What are the different execute methods of Ado.Net?

Following are different execute methods of ADO.Net command object:

  • ExecuteScalar – Returns single value from the dataset
  • ExecutenonQuery – Returns resultset from dataset and it has multiple values
  • ExecuteReader – Forwardonly resultset
  • ExecuteXMLReader – Build XMLReader object from a SQL Query

24. What are all the commands used with Data Adapter?

DataAdapter is used to retrieve data from a data source .Insertcommand, UpdateCommand and DeleteCommand are the commands object used in DataAdapter to manage update on the database.

25. What are all the different methods under sqlcommand?

There are different methods under SqlCommand and they are:

  • Cancel – Cancel the query
  • CreateParameter – returns SQL Parameter
  • ExecuteNonQuery – Executes and does not return result set
  • ExecuteReader – executes and returns data in DataReader
  • ExecuteScalar – Executes and returns single value
  • ExecuteXmlReader – Executes and return data in XMLDataReader object
  • ResetCommandTimeout – Reset Timeout property

26. What is the difference between Dataset.clone and Dataset.copy?

Dataset.clone object copies structure of the dataset including schemas, relations and constraints. This will not copy data in the table.

Dataset.copy – Copies both structure and data from the table.

27. What is the difference between Command and CommandBuilder object?

Command is used to execute all kind of queries like DML and DDL. DML is nothing but Insert, Update and Delete. DDL are like Create and drop tables.

Command Builder object is used to build and execute DDL queries like Create and Drop Tables.

28. Is it possible to load multiple tables in a Dataset?

Yes, it is possible to load multiple tables in a single dataset. 29. Which provider is used to connect MS Access, Oracle, etc…?

OLEDB Provider and ODBC Provider are used to connect to MS Access and Oracle. Oracle Data Provider is also used to connect exclusively for oracle database.

30. Do we use stored procedure in ADO.Net?

Yes, stored procedures are used in ADO.Net and it can be used for common repetitive functions.

31. What are the methods of XML dataset object?

There are various methods of XML dataset object:

GetXml() – Get XML data in a Dataset as a single string.

GetXmlSchema() – Get XSD Schema in a Dataset as a single string.

ReadXml() – Reads XML data from a file.

ReadXmlSchema() – Reads XML schema from a file.

WriteXml() – Writes the contents of Dataset to a file.

WriteXmlSchema() – Writes XSD Schema into a file.

32. What are all the different authentication techniques used to connect to MS SQL Server?

SQL Server should authenticate before performing any activity in the database. There are two types of authentication:

  • Windows Authentication – Use authentication using Windows domain accounts only.
  • SQL Server and Windows Authentication Mode – Authentication provided with the combination of both Windows and SQL Server Authentication.

33. What is the use of Dataview?

Dataview is used to represent a whole table or a part of table. It is best view for sorting and searching data in the data table.

34. What are the Data providers in ADO.Net?

Following are the Data Providers used in ADO.Net:.

  • MS SQL Server.
  • OLEDB.
  • ODBC.

35. Which method is used by command class to execute SQL statements that return single value?

Execute Scalar method is used by command class to execute SQL statement which can return single values.

36. Which keyword is used to accept variable number of parameters?

Params keyword is used to accept variable number of parameters.

37. Tom is having XML document and that needs to be read on a daily basis. Which method of XML object is used to read this XML file?

ReadXML() method is used to read XML file.

38. Which method in OLEDBAdapter is used to populate dataset with records?

Fill Method is used to populate dataset with records.

39. Which object needs to be closed?

OLEDBReader and OLEDBConnection object need to be closed. This will stay in memory if it is not properly closed.

40. What are different layers of ADO.Net?

There are three different layers of ADO.Net:

  • Presentation Layer
  • Business Logic Layer
  • Database Access Layer

41. What are typed and untyped dataset?

Typed datasets use explicit names and data types for their members but untyped dataset uses table and columns for their members.

42. How to stop running thread?

Thread.Abort() function stops the thread execution at any time.

43. Which method is used to sort the data in ADO.Net?

Sort() method of GridViewControl is used to sort the data in a datatable.

44. Which object is used to add relationship between two Datatables?

DataRelation object is used to add relationship between two or more datatable objects.

45. Which is the best method to get two values from the database?

ExecuteNonQuery is the best method to get two values from the database.

46. What are all the classes that are available in System.Data Namespace?

Following are the classes that are available in System.Data Namespace:

  • Dataset.
  • DataTable.
  • DataColumn.
  • DataRow.
  • DataRelation.
  • Constraint.

47. What are the uses of Stored Procedure?

Following are uses of Stored Procedure:

  • Improved Performance.
  • Easy to use and maintain.
  • Security.
  • Less time and effort taken to execute.
  • Less Network traffic.

48. What is the default Timeout for SqlCommand.CommandTimeout property?

The default timeout of Sqlcommand. CommandTimeout property is 30 Seconds.

49. What are the classes in System.Data.Common Namespace?

There are two classes involved in System.Data.Common Nameapce:.

  • DataColumnMapping.
  • DataTableMapping.

50. What is LINQ?

Language Integrated Query or LINQ provides programmers and testers to query data and it uses strongly type’s queries and results.

1. What is the full form of ADO?

The full form of ADO is ActiveX Data Object.

2. Explain ADO.NET in brief.

ADO.NET is a very important feature of .NET Framework, which is used to work with data that is stored in structured data sources, such as databases and XML files. The following are some of the important features of ADO.NET:

o Contains a number of classes that provide you with various methods and attributes to manage the communication between your application and data source.

o Enables you to access different data sources, such as Microsoft SQL Server, and XML, as per your requirements.

o Provides a rich set of features, such as connection and commands that can be used to develop robust and highly efficient data services in .NET applications.

o Provides various data providers that are specific to databases produced by various vendors. For example, ADO.NET has a separate provider to access data from Oracle databases; whereas, another provider is used to access data from SQL databases.

3. What are major difference between classic ADO and ADO.NET?

Following are some major differences between both

o In ADO we have recordset and in ADO.NET we have dataset.

o In recordset we can only have one table. If we want to accommodate more than one tables. We need to do inner join and fill the recordset. Dataset can have multiple tables.

o All data persist in XML as compared to classic ADO where data persisted in Binary format also.

4. What are the two fundamental objects in ADO.NET?

DataReader and DataSet are the two fundamental objects in ADO.NET.

5. What are the benefits of using of ADO.NET in .NET 4.0.

The following are the benefits of using ADO.NET in .NET 4.0 are as follows:

o Language-Integrated Query (LINQ) - Adds native data-querying capabilities to .NET languages by using a syntax similar to that of SQL. This means that LINQ simplifies querying by eliminating the need to use a separate query language. LINQ is an innovative technology that was introduced in .NET Framework 3.5.

o LINQ to DataSet - Allows you to implement LINQ queries for disconnected data stored in a dataset. LINQ to DataSet enables you to query data that is cached in a DataSet object. DataSet objects allow you to use a copy of the data stored in the tables of a database, without actually getting connected to the database.

o LINQ to SQL - Allows you to create queries for data stored in SQL server database in your .NET application. You can use the LINQ to SQL technology to translate a query into a SQL query and then use it to retrieve or manipulate data contained in tables of an SQL Server database. LINQ to SQL supports all the key functions that you like to perform while working with SQL, that is, you can insert, update, and delete information from a table.

o SqlClient Support for SQL Server 2008 - Specifies that with the starting of .NET Framework version 3.5 Service Pack (SP) 1, .NET Framework Data Provider for SQL Server (System.Data.SqlClient namespace) includes all the new features that make it fully compatible with SQL Server 2008 Database Engine.

o ADO.NET Data Platform - Specifies that with the release of .NET Framework 3.5 Service Pack (SP) 1, an Entity Framework 3.5 was introduced that provides a set of Entity Data Model (EDM) functions. These functions are supported by all the data providers; thereby, reducing the amount of coding and maintenance in your application. In .NET Framework 4.0, many new functions, such as string, aggregate, mathematical, and date/time functions have been added.

6. Which namespaces are required to enable the use of databases in ASP.NET pages?

The following namespaces are required to enable the use of databases in ASP.NET pages:

o The System.Data namespace.

o The System.Data.OleDb namespace (to use any data provider, such as Access, Oracle, or SQL)

o The System.Data.SQLClient namespace (specifically to use SQL as the data provider)

7. Explain the DataAdapter.Update() and DataSet.AcceptChanges() methods.

The DataAdapter.Update() method calls any of the DML statements, such as the UPDATE, INSERT, or DELETE statements, as the case may be to update, insert, or delete a row in a DataSet. The DataSet.Acceptchanges() method reflects all the changes made to the row since the last time the AcceptChanges() method was called.

8. What is the meaning of object pooling?

Object pooling is a concept of storing a pool (group) of objects in memory that can be reused later as needed. Whenever, a new object is required to create, an object from the pool can be allocated for this request; thereby, minimizing the object creation. A pool can also refer to a group of connections and threads. Pooling, therefore, helps in minimizing the use of system resources, improves system scalability, and performance.

9. Which properties are used to bind a DataGridView control?

The DataSource property and the DataMember property are used to bind a DataGridView control.

10. What property must be set and what method must be called in your code to bind the data from some data source to the Repeater control?

You must set the DataSource property and call the DataBind() method.

11. Mention the namespace that is used to include .NET Data Provider for SQL server in .NET code.

The System.Data.SqlClient namespace.

12. What is the difference between OLEDB Provider and SqlClient?

With respect to usage, there is no difference between OLEDB Provider and SqlClient. The difference lies in their performance. SqlClient is explicitly used to connect your application to SQL server directly, OLEDB Provider is generic for various databases, such as Oracle and Access including SQL Server.

Therefore, there will be an overhead which leads to performance degradation.

13. Name the two properties of the GridView control that have to be specified to turn on sorting and paging.

The properties of the GridView control that need to be specified to turn on sorting and paging are as follows:

o The AllowSorting property of the Gridview control indicates whether sorting is enabled or not. You should set the AllowSorting property to True to enable sorting.

o The AllowPaging property of the Gridview control indicates whether paging is enabled or not. You should set the AllowPaging property to True to enable paging.

14. Mention different types of data providers available in .NET Framework.

o .NET Framework Data Provider for SQL Server - Provides access to Microsoft SQL Server 7.0 or later version. It uses the System.Data.SqlClient namespace.

o .NET Framework Data Provider for OLE DB - Provides access to databases exposed by using OLE DB. It uses the System.Data.OleDb namespace.

o .NET Framework Data Provider for ODBC - Provides access to databases exposed by using ODBC. It uses the System.Data.Odbc namespace.

o .NET Framework Data Provider for Oracle - Provides access to Oracle database 8.1.7 or later versions. It uses the System.Data.OracleClient namespace.

15. Which architecture does Datasets follow?

Datasets follow the disconnected data architecture.

16. What is the role of the DataSet object in ADO.NET?

One of the major component of ADO.NET is the DataSet object, which always remains disconnected from the database and reduces the load on the database.

17. What is a DataReader object?

The DataReader object helps in retrieving the data from a database in a forward-only, read-only mode. The base class for all the DataReader objects is the DbDataReader class.

The DataReader object is returned as a result of calling theExecuteReader() method of the Command object. The DataReader object enables faster retrieval of data from databases and enhances the performance of .NET applications by providing rapid data access speed. However, it is less preferred as compared to the DataAdapter object because the DataReader object needs an Open connection till it completes reading all the rows of the specified table.

An Open connection to read data from large tables consumes most of the system resources. When multiple client applications simultaneously access a database by using the DataReader object, the performance of data retrieval and other related processes is substantially reduced. In such a case, the database might refuse connections to other .NET applications until other clients free the resources.

18. How can you identify whether or not any changes are made to the DataSet object since it was last loaded?

The DataSet object provides the following two methods to track down the changes:

o The GetChanges() method - Returns the DataSet object, which is changed since it was loaded or since the AcceptChanges() method was executed.

o The HasChanges() method - Indicates if any changes occurred since the DataSet object was loaded or after a call to the AcceptChanges() method was made.


If you want to revert all changes since the DataSet object was loaded, use the RejectChanges() method.

19. Which property is used to check whether a DataReader is closed or opened?

The IsClosed property is used to check whether aDataReader is closed or opened. This property returns a true value if a Data Reader is closed, otherwise a false value is returned.

20. Name the method that needs to be invoked on the DataAdapter control to fill the generated DataSet with data?

The Fill() method is used to fill the dataset with data.

21. What is the use of the Connection object?

The Connection object is used to connect your application to a specific data source by providing the required authentication information in connection string. The connection object is used according to the type of the data source. For example, the OleDbConnection object is used with an OLE-DB provider and the SqlConnection object is used with an MS SQL Server.

22. What is the use of the CommandBuilder class?

The CommandBuilder class is used to automatically update a database according to the changes made in a DataSet.

This class automatically registers itself as an event listener to the RowUpdating event. Whenever data inside a row changes, the object of the CommandBuilder class automatically generates an SQL statement and uses the SelectCommand property to commit the changes made in DataSet.

OLEDB provider in .NET Framework has the OleDbCommandBuiider class; whereas, the SQL provider has the SqlCommandBuilder class.

23. Explain the architecture of ADO.NET in brief.

AD0.NET consists of two fundamental components:

o The DataSet, which is disconnected from the data source and does not need to know where the data that it holds is retrieved from.

o The .net data provider, which allows you to connect your application to the data source and execute the SQL commands against it.


The data provider contains the Connection, Command,DataReader, and DataAdapter objects. TheConnection object provides connectivity to the database. The Command object provides access to database commands to retrieve and manipulate data in a database. The DataReader object retrieves data from the database in the readonly and forward-only mode. The DataAdapter object uses Command objects to execute SQL commands. The DataAdapter object loads the DataSet object with data and also updates changes that you have made to the data in the DataSet object back to the database.

24. Describe the disconnected architecture of ADO.NET's data access model.

ADO.NET maintains a disconnected database access model, which means, the application never remains connected constantly to the data source. Any changes and operations done on the data are saved in a local copy (dataset) that acts as a data source. Whenever, the connection to the server is re-established, these changes are sent back to the server, in which these changes are saved in the actual database or data source.

? What are the usages of the Command object in ADO.NET?

The following are the usages of the Command object in AD0.NET:

The Command object in AD0.NET executes a command against the database and retrieves a DataReader or DataSet object.

  • It also executes the INSERT, UPDATE, or DELETE command against the database.
  • All the command objects are derived from the DbCommand class.
  • The command object is represented by two classes: SqlCommand and OleDbCommand.
  • The Command object provides three methods to execute commands on the database:
    • The ExecuteNonQuery() method executes a Transact-SQL statement against the connection and returns the number of rows affected.
    • The ExecuteScalar() method returns a single value from a database query.
    • The ExecuteReader() method returns a result set by using the DataReader object.

? What are the pre-requisites for connection pooling?

The prerequisites for connection pooling are as follows:

  • There must be multiple processes to share the same connection describing the same parameters and security settings.
  • The connection string must be identical.

? What is connection pooling?

Connection pooling refers to the task of grouping database connections in cache to make them reusable because opening new connections every time to a database is a time-consuming process. Therefore, connection pooling enables you to reuse already existing and active database connections, whenever required, and increasing the performance of your application.

You can enable or disable connection pooling in your application by setting the pooling property to either true or false in connection string. By default, it is enabled in an application.

? What are the various methods provided by the DataSet object to generate XML?

The various methods provided by the DataSet object to generate XML are:

  • ReadXml() - Reads XML document into a DataSet object.
  • GetXml() - Returns a string containing an XML document.
  • WriteXml() - Writes an XML data to disk.

? Out of Windows authentication and SQL Server authentication, which authentication technique is considered as a trusted authentication method?

The Windows authentication technique is considered as a trusted authentication method because the username and password are checked with the Windows credentials stored in the Active Directory.

The SQL Server Authentication technique is not trusted as all the values are verified by SQL Server only.

? How would you connect to a database by using .NET?

The connection class is used to connect a .NET application with a database

31. Which adapter should you use, if you want to get the data from an Access database?

OleDbDataAdapter is used to get the data from an Access database.

32. Which object is used to add a relationship between two DataTable objects?

The DataRelation object is used to add relationship between two DataTable objects.

33. What are different types of authentication techniques that are used in connection strings to connect .NET applications with Microsoft SQL Server?

.NET applications can use two different techniques to authenticate and connect with SQL Server. These techniques are as follows:

o The Windows Authentication option

o The SQL Server Authentication option

34. Explain the new features in ADO.NET Entity Framework 4.0.

ADO.NET Entity Framework 4.0 is introduced in .NET Framework 4.0 and includes the following new features:

o Persistence Ignorance - Facilitates you to define your own Plain Old CLR Objects (POCO) which are independent of any specific persistence technology.

o Deferred or Lazy Loading - Specifies that related entities can be loaded automatically whenever required. You can enable lazy loading in your application by setting the DeferredLoadingEnabled property to true.

o Self-Tracking Entities - Refers to the entities that are able to track their own changes. These changes can be passed across process boundaries and saved to the database.

o Model-First Development - Allows you to create your own EDM and then generate relational model (database) from that EDM with matching tables and relations.

o Built-in Functions - Enables you to use built-in SQL Server functions directly in your queries.

o Model-Defined Functions - Enables you to use the functions that are defined in conceptual schema definition language (CSDL).

35. What is the difference between the Clone() and Copy() methods of the DataSet class?

The Clone() method copies only the structure of a DataSet . The copied structure includes all the relation, constraint, andDataTable schemas used by the DataSet. TheClone() method does not copy the data, which is stored in the DataSet.

The Copy() method copies the structure as well as the data stored in the DataSet.

36. What is the use of DataView?

User-defined view of a table is contained in a DataView. A complete table or a small section of table depending on some criteria can be presented by an object of the DataView class. You can use this class to sort and find data within DataTable.

The DataView class has the following methods:

o Find() - Finds a row in a DataView by using sort key value.

o FindRows() - Uses the sort key value to match it with the columns of DataRowView objects. It returns an array of all the corresponding objects of DataRowView whose columns match with the sort key value.

o AddNew() - Adds a new row to the DataView object.

o Delete() - Deletes the specified row from the DataView object according to the specified index.

37. What are the parameters that control most of connection pooling behaviors?

The parameters that control most of connection pooling behaviors are as follows:

o Connect Timeout

o Max Pool Size

o Min Pool Size

o Pooling

38. How can you add or remove rows from the DataTable object of DataSet?

The DataRowCollection class defines the collection of rows for the DataTable object in a DataSet. The DataTable class provides the NewRow() method to add a new DataRow to DataTable. The NewRow method creates a new row, which implements the same schema as applied to the DataTable. The following are the methods provided by the DataRowCollection object:

o Add() - Adds a new row to DataRowCollection.

o Remove()- Removes a DataRow object from DataRowCollection.

o RemoveAt() - Removes a row whose location is specified by an index number.

39. Explain in brief DataAdapter class in ADO.NET.

The DataAdapter class retrieves data from the database, stores data in a dataset, and reflects the changes made in the dataset to the database. The DataAdapter class acts as an intermediary for all the communication between the database and the DataSet object. TheDataAdapter Class is used to fill a DataTable orDataSet Object with data from the database using the Fill() method. The DataAdapter class applies the changes made in dataset to the database by calling the Update() method.

The DataAdapter class provides four properties that represent the database command:

SelectCommand , InsertCommand, DeleteCommand, and UpdateCommand.

What are the major difference between classic ADO and ADO.NET?

Following are some major differences:

  • In ADO, we have a Recordset and in ADO.NET we have a DataSet.
  • In Recordset, we can only have one table. If we want to accommodate more than one table, we need to do inner join and fill the Recordset. A DataSet can have multiple tables.
  • All data is persisted in XML as compared to classic ADO where data is persisted in binary format.

Executes the command defined in the CommandText property against the connection defined in the Connection property for a query that does not return any row (an UPDATE, DELETE, or INSERT). Returns an Integer indicating the number of rows affected by the query.

  • ExecuteReader

Executes the command defined in the CommandText property against the connection defined in the Connection property. Returns a "reader" object that is connected to the resulting row set within the database, allowing the rows to be retrieved.

  • ExecuteScalar

Executes the command defined in the CommandText property against the connection defined in the Connection property. Returns only a single value (effectively the first column of the first row of the resulting row set, any other returned columns and rows are discarded). It is fast and efficient when only a "singleton" value is required.

These objects connect one or more Command objects to a DataSet object. They provide logic that would get data from the data store and populates the tables in the DataSet, or pushes the changes in the DataSet back into the data store.

  • An OleDbDataAdapter object is used with an OLE-DB provider
  • A SqlDataAdapter object uses Tabular Data Services with MS SQL Server.

(B) What are basic methods of a DataAdapter?

These are the most commonly used methods of a DataAdapter:

  • Fill

Executes the Select command to fill the DataSet object with data from the data source. It an also be used to update (refresh) an existing table in a DataSet with changes made to the data in the original data source if there is a primary key in the table in the DataSet.

  • FillSchema

Uses the SelectCommand to extract just the schema for a table from the data source, and creates an empty table in the DataSet object with all the corresponding constraints.

  • Update

Calls the respective InsertCommand, UpdateCommand, or DeleteCommand for each inserted, updated, or deleted row in the DataSet so as to update the original data source with the changes made to the content of the DataSet. This is a little like the UpdateBatch method provided by the ADO Recordset object, but in the DataSet, it can be used to update more than one table.

(B) What is a DataSet object?

The DataSet provides the basis for disconnected storage and manipulation of relational data. We fill it from a data store, work with it while disconnected from that data store, then reconnect and flush changes back to the data store if required.

(B) What are the various objects in a DataSet?

DataSet has a collection of DataTable objects within the Tables collection. Each DataTable object contains a collection of DataRow objects and a collection of DataColumn objects. There are also collections for primary keys, constraints, and default values used in this table, which is called as constraint collection, and the parent and child relationships between the tables. Finally, there is a DefaultView object for each table. This is used to create a DataView object based on the table, so that the data can be searched, filtered, or otherwise manipulated while displaying the data.

Note : Look back again to the main diagram for the ADO.NET architecture for visualizing this answer in pictorial form.

(B) How can we connect to Microsoft Access, FoxPro, and Oracle etc.?

Microsoft provides the System.Data.OleDb namespace to communicate with databases like Access, Oracle, etc. In short, any OLE DB-compliant database can be connected using the System.Data.OldDb namespace.

Note : A small sample of OLEDB is provided in WindowsAppOleDb which uses Nwind.mdb in the bin directory to display data in a listbox.

Hide Copy Code

Private Sub loadData()

Dim strPath As String

strPath = AppDomain.CurrentDomain.BaseDirectory

Dim objOLEDBCon As New OleDbConnection("Provider=Microsoft.Jet." & _

"OLEDB.4.0;Data Source =" & strPath & "Nwind.mdb")

Dim objOLEDBCommand As OleDbCommand

Dim objOLEDBReader As OleDbDataReader

Try

objOLEDBCommand = New OleDbCommand("Select FirstName from Employees")

objOLEDBCon.Open()

objOLEDBCommand.Connection = objOLEDBCon

objOLEDBReader = objOLEDBCommand.ExecuteReader()

Do While objOLEDBReader.Read()

lstNorthwinds.Items.Add(objOLEDBReader.GetString(0))

Loop

Catch ex As Exception

Throw ex

Finally

objOLEDBCon.Close()

End Try

End Sub

The main code is in the LoadData method which actually loads the data in the list box.

Note : This source code has the connectionstring hard coded in the program itself which is not a good programming practice. For Windows applications, the best place to store the connectionstring is “App.config”. Also note that the AppDomain.CurrentDomain.BaseDirectory function gives the current path of the running exe which is “BIN” and the MDB file is in that directory. Also note, the Finally block executes irrespective of if there is an error or not. This ensures that all the connections to the datastore are freed. It is a best practice to put all clean up statements in a Finally block thus ensuring that the resources are deallocated properly.

(B) How do we connect to SQL Server, which namespace do we use?

Below is the code required. We will try to understand the code in a more detailed manner. For this sample, we will also need a SQL table setup, which I have imported, using the DTS wizard.

Hide Shrink Copy Code

Private Sub LoadData()

' note :- with and end with makes your code more readable

Dim strConnectionString As String

Dim objConnection As New SqlConnection

Dim objCommand As New SqlCommand

Dim objReader As SqlDataReader

Try

' this gets the connectionstring from the app.config file.

' note if this gives error see where the MDB file is stored

' in your pc and point to thastrConnectionString = AppSettings.Item("ConnectionString")

' take the connectiostring and initialize the connection object

With objConnection

.ConnectionString = strConnectionString

.Open()

End With

objCommand = New SqlCommand("Select FirstName from Employees")

With objCommand

.Connection = objConnection

objReader = .ExecuteReader()

End With

' looping through the reader to fill the list box

Do While objReader.Read()

lstData.Items.Add(objReader.Item("FirstName"))

Loop

Catch ex As Exception

Throw ex

Finally

objConnection.Close()

End Try

Hide Copy Code

<appSettings>

<add key="Connectionstring" value="Server=ERMBOM1-IT2;User ID=sa;Database=Employees"/>

</appSettings>

Note : The above code is provided in CD in the folder WindowsAppSqlClient. Comments in the code explain a lot but we will iterate through the code later. LoadData is the main method which loads the data from SQL Server. Before running this code, you have to install SQL Server in your machine. As we are dealing with SQLClient, we need to setup a database in SQL Server. For this sample, I have imported Nwind.mdb in the “SampleAccessDatabase” folder in CD into SQL Server. Depending on the computer you will have to change the connectionstring in the Web.config file.

For setting up the sample SQL table, we can use the DTS import wizard to import the table. See the below figure which uses Microsoft Access as the data source. While importing the database, give the database name as “Employees”.

Figure: 9.2 Loading “Nwind.mdb” in SQL SERVER for the sample

Figure: 9.3 Load only the Employee table.

To make it simple, we will only import the employee table as that is the only thing needed in our sample code.

Figure: 9.4 View of loaded Employee table

Now from interview point of view, definitely you are not going to say the whole source code which is given in the book. The interviewer expects a broader answer of the steps needed to connect to SQL Server. You only have to explain the LoadData method in a broader way. Following are the steps to connect to SQL Server:

  • First imports the namespace “System.Data.SqlClient”.
  • Create a connection object as shown in the LoadData method.

Hide Copy Code

With objConnection

.Connection String = strConnectionString

.Open ()

End With

  • Create the command object with the SQL. Also, assign the created connection object to the command object and execute the reader.

Hide Copy Code

ObjCommand = New SqlCommand ("Select First Name from Employees")

With objCommand

.Connection = objConnection

Breeder = .Execute Reader ()

End With

  • Finally loop through the reader and fill the list box. If VB programmers are expecting the move next command, it has been replaced by Read() which returns True if there is any data to be read. If Read() returns False that means that it’s the end of the data reader and there is no more data to be read.

Hide Copy Code

Do while objReader.Read ()

lstData.Items.Add (objReader.Item ("First Name"))

Loop

  • Do not forget to close the connection object.

Note : In LoadData, you will see that the connectionstring is stored in the Web.config file and is loaded using AppSettings.Item(“ConnectionString”). While running this sample live on your database, do not forget to change this connectionstring according to your machine name and SQL Server or else the source code will not run.

Source: Contents are provided by Technicalsymposium Google Group Members.
Disclaimer: All the above contents are provided by technicalsymposium.com Google Group members.
Further, this content is not intended to be used for commercial purpose. Technicalsymposium.com is not liable/responsible for any copyright issues.

Technical Symposium.Com All Jobs & Certifications
Lecture Notes and Scholarships & Project Details

Fresher Jobs Details
job detailsAll Fresher Software Jobs Details
job detailsAll Government Jobs Details
job detailsAll Internships Details
job detailsOff-Campus Interviews/Walk-in Details
job detailsAll Competitive Exam Details
job detailsBank Clerk/Officers Jobs Details
job detailsB.Sc/M.Sc Graduate Fresher Jobs
job detailsAll Technical Jobs Details
job detailsAll State/Central Government Jobs Details
Conference/Symposium Details
job detailsAll International Conference Details
job detailsAll National Conference Details
job detailsAll Symposium/Workshop Details
job detailsUniversity Conferences Details
job detailsIIT/NIT/IIM Conference Details
job detailsComputer Science Conference Details
job detailsElectronics Conferences Details
job detailsMechanical Conferences Details
job detailsAll Latest Conferences Details
Calendar of Events Details
job detailsJanuary – List of All Event Details
job detailsFebruary – List of All Event Details
job detailsMarch– List of All Event Details
job detailsApril – List of All Event Details
job detailsMay – List of All Event Details
job detailsJune – List of All Event Details
job detailsJuly – List of All Event Details
job detailsAugust – List of All Event Details
job detailsAll Months - List of All Events Details
GATE Question Papers & Syllabus
job detailsAll GATE Previous Year Question Papers
job detailsGATE Syllabus for All Branches
job detailsGATE-Computer Science Question Papers
job detailsGATE – Mechanical Question Papers
job detailsGATE – ECE Question Papers
job detailsGATE- EEE Question Papers
job detailsGATE – Civil Engineering Question Papers
job detailsGATE – All Branches Question Papers
job detailsGATE Exam Pattern Details
IES Question Papers & Syllabus
job detailsIES Complete Information
job detailsIES Previous Year Question Papers
job detailsIES Syllabus for All Branches
job detailsIES – Mechanical Question Papers
job detailsIES - E & T Question Papers
job detailsIES - EEE Question Papers
job detailsIES -Civil Engineering Question Papers
job detailsIES - All Branches Question Papers
job detailsIES - Exam Pattern Details
All Companies Placement Materials
job detailsTCS Placement Papers
job detailsWIPRO Placement Papers
job detailsZOHO Placement Papers
job detailsCTS Placement Papers
job detailsINFOSYS Placement Papers
job detailsARICENT Placement Papers
job detailsSBI Placement Papers
job detailsRRB Placement Papers
job detailsBANK/IBPS Placement Papers
Aptitude Round Materials
job details Problem on Numbers
job detailsProblem on Trains
job detailsTime and Work
job detailsSimple Interest
job detailsAptitude Short- Cut Formulas
job detailsAptitude Tricks
job detailsOdd Man Out Series
job detailsSimplification Problems
job detailsProfit & Loss
Technical Round Materials
job detailsJAVA Technical Round Q & A
job detailsC Technical Round Q & A
job detailsC++ Technical Round Q & A
job detailsASP.NET Technical Round Q & A
job detailsData Structure Technical Round Q & A
job detailsSQL Technical Round Q & A
job detailsC# Technical Round Q & A
job detailsPHP Technical Round Q & A
job detailsJ2EE Technical Round Q & A
Software Programs and Lab Manuals
job detailsSurvey Lab Manuals
job detailsCAD/CAM Lab Manuals
job detailsOOPS/C++ Lab Manuals
job detailsJAVA/Internet Programming Manuals
job detailsList of All C Programs with Source Code
job detailsList of All Data Structure Programs
job detailsC Aptitude Programs
job detailsMicroprocessor & Micro Controller Manuals
job detailsAll Engineering Branches Lab Manuals
Anna University Syllabus & Question Papers
job detailsB.E/B.Tech Previous Year Question Papers
job detailsBE-Computer Science Syllabus
job detailsBE-Mechanical Engineering Syllabus
job detailsBE-Civil Engineering Syllabus
job detailsBE-ECE Syllabus
job detailsBE-EEE Syllabus
job detailsMBA/MCA Syllabus
job detailsBE-Aeronautical Engineering Syllabus
job detailsBE-Biomedical Syllabus
IBPS/Bank Syllabus & Question Papers
job detailsIBPS Clerk Exam Syllabus
job detailsIBPS Clerk Question Papers
job detailsIBPS Probationary Officers Syllabus
job detailsIBPS PO Question Papers
job detailsIBPS RRB Exam Syllabus
job detailsIBPS Special Officers Exam Syllabus
job detailsSBI Clerk/PO Syllabus
job detailsAll Private Banks PO/Clerk Syllabuses
job detailsAll Nationalized Bank Po/Clerk Syllabuses
Civil Engineering Lecture Notes
job detailsFirst Semester Lecture Notes
job detailsSecond Semester Lecture Notes
job detailsThird Semester Lecture Notes
job detailsFourth Semester Lecture Notes
job detailsFifth Semester Lecture Notes
job detailsSixth Semester Lecture Notes
job detailsSeventh Semester Lecture Notes
job detailsEighth Semester Lecture Notes
job detailsLab Manuals
Mechanical Engineering Lecture Notes
job detailsFirst Semester Lecture Notes
job detailsSecond Semester Lecture Notes
job detailsThird Semester Lecture Notes
job detailsFourth Semester Lecture Notes
job detailsFifth Semester Lecture Notes
job detailsSixth Semester Lecture Notes
job detailsSeventh Semester Lecture Notes
job detailsEighth Semester Lecture Notes
job detailsLab Manuals
Computer Science Engineering Lecture Notes
job detailsFirst Semester Lecture Notes
job detailsSecond Semester Lecture Notes
job detailsThird Semester Lecture Notes
job detailsFourth Semester Lecture Notes
job detailsFifth Semester Lecture Notes
job detailsSixth Semester Lecture Notes
job detailsSeventh Semester Lecture Notes
job detailsEighth Semester Lecture Notes
job detailsLab Manuals
MCA Lecture Notes
job detailsFirst Semester Lecture Notes
job detailsSecond Semester Lecture Notes
job detailsThird Semester Lecture Notes
job detailsFourth Semester Lecture Notes
job detailsFifth Semester Lecture Notes
job detailsSixth Semester Lecture Notes
job detailsSeventh Semester Lecture Notes
job detailsEighth Semester Lecture Notes
job detailsLab Manuals
MBA Lecture Notes
job detailsFirst Semester Lecture Notes
job detailsSecond Semester Lecture Notes
job detailsThird Semester Lecture Notes
job detailsFourth Semester Lecture Notes
job detailsFifth Semester Lecture Notes
job detailsSixth Semester Lecture Notes
job detailsSeventh Semester Lecture Notes
job detailsEighth Semester Lecture Notes
job detailsLab Manuals
ECE Lecture Notes
job detailsFirst Semester Lecture Notes
job detailsSecond Semester Lecture Notes
job detailsThird Semester Lecture Notes
job detailsFourth Semester Lecture Notes
job detailsFifth Semester Lecture Notes
job detailsSixth Semester Lecture Notes
job detailsSeventh Semester Lecture Notes
job detailsEighth Semester Lecture Notes
job detailsLab Manuals
EEE Lecture Notes
job detailsFirst Semester Lecture Notes
job detailsSecond Semester Lecture Notes
job detailsThird Semester Lecture Notes
job detailsFourth Semester Lecture Notes
job detailsFifth Semester Lecture Notes
job detailsSixth Semester Lecture Notes
job detailsSeventh Semester Lecture Notes
job detailsEighth Semester Lecture Notes
job detailsLab Manuals
Biotechnology Lecture Notes
job detailsFirst Semester Lecture Notes
job detailsSecond Semester Lecture Notes
job detailsThird Semester Lecture Notes
job detailsFourth Semester Lecture Notes
job detailsFifth Semester Lecture Notes
job detailsSixth Semester Lecture Notes
job detailsSeventh Semester Lecture Notes
job detailsEighth Semester Lecture Notes
job detailsLab Manuals
Chemical Engineering Lecture Notes
job detailsFirst Semester Lecture Notes
job detailsSecond Semester Lecture Notes
job detailsThird Semester Lecture Notes
job detailsFourth Semester Lecture Notes
job detailsFifth Semester Lecture Notes
job detailsSixth Semester Lecture Notes
job detailsSeventh Semester Lecture Notes
job detailsEighth Semester Lecture Notes
job detailsLab Manuals
Biomedical Engineering Lecture Notes
job detailsFirst Semester Lecture Notes
job detailsSecond Semester Lecture Notes
job detailsThird Semester Lecture Notes
job detailsFourth Semester Lecture Notes
job detailsFifth Semester Lecture Notes
job detailsSixth Semester Lecture Notes
job detailsSeventh Semester Lecture Notes
job detailsEighth Semester Lecture Notes
job detailsLab Manuals
Aeronautical Engineering Lecture Notes
job detailsFirst Semester Lecture Notes
job detailsSecond Semester Lecture Notes
job detailsThird Semester Lecture Notes
job detailsFourth Semester Lecture Notes
job detailsFifth Semester Lecture Notes
job detailsSixth Semester Lecture Notes
job detailsSeventh Semester Lecture Notes
job detailsEighth Semester Lecture Notes
job detailsLab Manuals
B.Sc (All Major Branches) Lecture Notes
job detailsMaths / Statistics Lecture Notes
job detailsPhysics Lecture Notes
job detailsChemistry Lecture Notes
job detailsElectronics Lecture Notes
job detailsComputer Science/IT Lecture Notes
job detailsAgriculture Lecture Notes
job detailsBiotechnology/Biomedical Lecture Notes
job detailsNursing Lecture Notes
job detailsFashion Technology Lecture Notes
M.Sc (All Major Branches) Lecture Notes
job detailsComputer Science/IT Lecture Notes
job detailsAgriculture Lecture Notes
job detailsBiotechnology/Biomedical Lecture Notes
job detailsNursing Lecture Notes
job detailsFashion Technology Lecture Notes
job detailsMaths / Statistics Lecture Notes
job detailsPhysics Lecture Notes
job detailsChemistry Lecture Notes
job detailsElectronics Lecture Notes
B.Com/M.Com Lecture Notes
job detailsFirst Semester Lecture Notes
job detailsSecond Semester Lecture Notes
job detailsThird Semester Lecture Notes
job detailsFourth Semester Lecture Notes
job detailsFifth Semester Lecture Notes
job detailsSixth Semester Lecture Notes
job detailsLab Manuals
job detailsCommerce Placement Materials
job detailsCommerce Placement Materials
BBA Lecture Notes
job detailsFirst Semester Lecture Notes
job detailsSecond Semester Lecture Notes
job detailsThird Semester Lecture Notes
job detailsFourth Semester Lecture Notes
job detailsFifth Semester Lecture Notes
job detailsSixth Semester Lecture Notes
job detailsLab Manuals
job detailsPlacement MaterialsEighth Semester Lecture Notes
job detailsFresher Jobs Details
BCA Lecture Notes
job detailsFirst Semester Lecture Notes
job detailsSecond Semester Lecture Notes
job detailsThird Semester Lecture Notes
job detailsFourth Semester Lecture Notes
job detailsFifth Semester Lecture Notes
job detailsSixth Semester Lecture Notes
job detailsLab Manuals
job detailsPlacement Materials
job detailsFresher Jobs Details

Hosting by Yahoo!

About-Us    Contact-Us    Site-map

©copyright All rights are reserved to technicalsymposium.com