Master technical and career interviews with structured answers—short definition, real examples, pitfalls, and how to answer in 60–90 seconds.
The Command object is used to execute SQL queries or stored procedures against a database. It encapsulates the SQL statement or stored procedure and returns results. Example: SqlCommand command = new SqlCommand("SELECT *…
Follow: ExecuteNonQuery: Executes SQL commands that do not return data (e.g., INSERT, UPDATE, DELETE). Example: command.ExecuteNonQuery(); (used to insert a record). ExecuteReader: Executes SQL commands that return rows…
The ConnectionString contains information required to connect to the database, such as the database server, database name, credentials, and other configurations. Example: string connectionString = "Data Source=server_nam…
SqlConnection: Used specifically for connecting to SQL Server databases. OleDbConnection: A more general connection class that can connect to a variety of data sources, such as MS Access, Excel, Oracle, etc. Example: Use…
SQLCommand: A SQL command is a string of SQL code (like SELECT, INSERT, etc.) that is executed directly against the database. Stored Procedure: A precompiled collection of SQL statements that can be executed as a unit. I…
Connection Pooling allows multiple applications or threads to reuse existing database connections instead of opening a new connection each time. It improves performance by reducing the overhead of opening and closing con…
Disconnected model: ADO.NET uses a disconnected model (DataSet/DataTable), which allows applications to work offline, reducing the load on the database. Better performance: ADO.NET allows better resource management and c…
examples. DataSet: Works in a disconnected mode and holds multiple tables and relationships. You can navigate and manipulate the data offline. Example: Use a DataSet to hold customer and order data for offline processing…
The CommandTimeout property specifies the amount of time (in seconds) before a command is considered to have timed out. If the command execution takes longer than the specified time, an error is raised. Example: SqlComma…
Answer: The SqlDataAdapter serves as a bridge between a DataSet (or DataTable) and the database. It is responsible for: What interviewers expect A clear definition tied to ADO.NET in ADO.NET projects Trade-offs (performa…
To update the database using a DataSet: What interviewers expect A clear definition tied to ADO.NET in ADO.NET projects Trade-offs (performance, maintainability, security, cost) When you would and would not use it in pro…
mount of data quickly and do not need to modify the data. It requires an open connection to the database and reads data sequentially, one row at a time. Example: SqlCommand command = new SqlCommand("SELECT CustomerName F…
The SqlDataReader is used to retrieve data from the database in a forward-only and read-only manner. It is more efficient than a DataSet when you need to retrieve a large amount of data quickly and do not need to modify…
Answer: dapter.Fill(dataset, "Customers"); // Fills the DataSet with data from the "Customers" table What interviewers expect A clear definition tied to ADO.NET in ADO.NET projects Trade-offs (performance, maintainabilit…
The Fill() method of the DataAdapter is used to populate a DataSet or DataTable with data from the database. It executes the SELECT query defined in the DataAdapter and fills the specified DataSet or DataTable with the r…
Answer: In ADO.NET, database connections are managed using the Connection object, such as SqlConnection for SQL Server. The process involves: What interviewers expect A clear definition tied to ADO.NET in ADO.NET project…
To execute a stored procedure using ADO.NET: What interviewers expect A clear definition tied to ADO.NET in ADO.NET projects Trade-offs (performance, maintainability, security, cost) When you would and would not use it i…
DataSet is a collection of DataTable objects, and it can hold multiple tables and relationships between them. It is used for handling disconnected data and can work offline, and it can also support complex structures, su…
To bind a DataTable to a GridView in ASP.NET: What interviewers expect A clear definition tied to ADO.NET in ADO.NET projects Trade-offs (performance, maintainability, security, cost) When you would and would not use it…
DO.NET exceptions are typically handled using try-catch blocks. This helps to capture any errors during database operations such as connection failures, query issues, or command execution errors. Example: try { SqlConnec…
The SqlConnection object is responsible for opening a connection to a SQL Server database. It represents the physical connection to the data source and must be open before executing commands (like SqlCommand) or reading…
Strongly Typed DataSet: A DataSet that is generated from an XSD (XML Schema Definition) file, which defines the structure of the data (tables, columns, relationships). It provides type safety and compile-time checking. L…
Answer: transaction in ADO.NET is a sequence of database operations that are executed as a single unit. If one operation fails, all previous operations are rolled back. You can manage transactions using the SqlTransactio…
You can execute multiple transactions sequentially by managing multiple SqlTransaction objects. Each transaction can either be committed or rolled back based on the success or failure of the operations. Example: SqlConne…
Answer: In ADO.NET, the Command object is used to execute SQL queries or stored procedures. The main types of Command objects are: What interviewers expect A clear definition tied to ADO.NET in ADO.NET projects Trade-off…
ADO.NET ADO.NET Core Tutorial · ADO.NET
The Command object is used to execute SQL queries or stored procedures against a
database. It encapsulates the SQL statement or stored procedure and returns results.
Example:
SqlCommand command = new SqlCommand("SELECT * FROM Customers",
connection);
SqlDataReader reader = command.ExecuteReader();ADO.NET ADO.NET Core Tutorial · ADO.NET
Follow:
UPDATE, DELETE).
It returns a DataReader.
cell of data).
aggregate values).
ADO.NET ADO.NET Core Tutorial · ADO.NET
The ConnectionString contains information required to connect to the database, such as
the database server, database name, credentials, and other configurations.
Example:
string connectionString = "Data Source=server_name;Initial
Catalog=database_name;User ID=user_name;Password=password;";ADO.NET ADO.NET Core Tutorial · ADO.NET
data sources, such as MS Access, Excel, Oracle, etc.
Example:
Use SqlConnection for SQL Server:
SqlConnection sqlConnection = new SqlConnection(connectionString);
OleDbConnection oleDbConnection = new
OleDbConnection(connectionString);
ADO.NET ADO.NET Core Tutorial · ADO.NET
etc.) that is executed directly against the database.
executed as a unit. It can contain more complex logic, including control-of-flow and
error handling.
Example:
ADO.NET ADO.NET Core Tutorial · ADO.NET
Connection Pooling allows multiple applications or threads to reuse existing database
connections instead of opening a new connection each time. It improves performance by
reducing the overhead of opening and closing connections repeatedly.
Example: When using SQL Server, the connection pool automatically manages the reuse of
connections.
ADO.NET ADO.NET Core Tutorial · ADO.NET
which allows applications to work offline, reducing the load on the database.
large data volumes efficiently.
XML data.
ADO.NET ADO.NET Core Tutorial · ADO.NET
examples.
You can navigate and manipulate the data offline.
processing.
the database. It is faster for reading large amounts of data in a streaming manner.
in a single-pass, forward-only manner.
ADO.NET ADO.NET Core Tutorial · ADO.NET
The CommandTimeout property specifies the amount of time (in seconds) before a
command is considered to have timed out. If the command execution takes longer than the
specified time, an error is raised.
Example:
SqlCommand command = new SqlCommand("SELECT * FROM Customers",
connection);
command.CommandTimeout = 30; // Timeout after 30 seconds
Intermediate ADO.NET QuestionsADO.NET ADO.NET Core Tutorial · ADO.NET
Answer: The SqlDataAdapter serves as a bridge between a DataSet (or DataTable) and the database. It is responsible for:
In a production ADO.NET application, teams apply this when handling user-facing features or integration boundaries. For example, you might use it during a sprint where reliability and observability matter—logging metrics, validating edge cases, and documenting the decision in an ADR so future developers understand why the approach was chosen.
Tip: Practice aloud on Toolliyo mock interview or the Interview Q&A section before your real interview.
ADO.NET ADO.NET Core Tutorial · ADO.NET
To update the database using a DataSet:
In a production ADO.NET application, teams apply this when handling user-facing features or integration boundaries. For example, you might use it during a sprint where reliability and observability matter—logging metrics, validating edge cases, and documenting the decision in an ADR so future developers understand why the approach was chosen.
Tip: Practice aloud on Toolliyo mock interview or the Interview Q&A section before your real interview.
ADO.NET ADO.NET Core Tutorial · ADO.NET
mount of data quickly and do not need to modify the data. It requires an open connection to
the database and reads data sequentially, one row at a time.
Example:
SqlCommand command = new SqlCommand("SELECT CustomerName FROM
Customers", connection);
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
Console.WriteLine(reader["CustomerName"]);
}
reader.Close();
ADO.NET ADO.NET Core Tutorial · ADO.NET
The SqlDataReader is used to retrieve data from the database in a forward-only and
read-only manner. It is more efficient than a DataSet when you need to retrieve a large
amount of data quickly and do not need to modify the data. It requires an open connection to
the database and reads data sequentially, one row at a time.
Example:
SqlCommand command = new SqlCommand("SELECT CustomerName FROM
Customers", connection);
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
Console.WriteLine(reader["CustomerName"]);
reader.Close();
ADO.NET ADO.NET Core Tutorial · ADO.NET
Answer: dapter.Fill(dataset, "Customers"); // Fills the DataSet with data from the "Customers" table
In a production ADO.NET application, teams apply this when handling user-facing features or integration boundaries. For example, you might use it during a sprint where reliability and observability matter—logging metrics, validating edge cases, and documenting the decision in an ADR so future developers understand why the approach was chosen.
Tip: Practice aloud on Toolliyo mock interview or the Interview Q&A section before your real interview.
ADO.NET ADO.NET Core Tutorial · ADO.NET
The Fill() method of the DataAdapter is used to populate a DataSet or DataTable with data
from the database. It executes the SELECT query defined in the DataAdapter and fills the
specified DataSet or DataTable with the results.
Example:
SqlDataAdapter adapter = new SqlDataAdapter("SELECT * FROM
Customers", connection);
DataSet dataset = new DataSet();
Follow:
adapter.Fill(dataset, "Customers"); // Fills the DataSet with data
from the "Customers" table
ADO.NET ADO.NET Core Tutorial · ADO.NET
Answer: In ADO.NET, database connections are managed using the Connection object, such as SqlConnection for SQL Server. The process involves:
In a production ADO.NET application, teams apply this when handling user-facing features or integration boundaries. For example, you might use it during a sprint where reliability and observability matter—logging metrics, validating edge cases, and documenting the decision in an ADR so future developers understand why the approach was chosen.
Tip: Practice aloud on Toolliyo mock interview or the Interview Q&A section before your real interview.
ADO.NET ADO.NET Core Tutorial · ADO.NET
To execute a stored procedure using ADO.NET:
In a production ADO.NET application, teams apply this when handling user-facing features or integration boundaries. For example, you might use it during a sprint where reliability and observability matter—logging metrics, validating edge cases, and documenting the decision in an ADR so future developers understand why the approach was chosen.
Tip: Practice aloud on Toolliyo mock interview or the Interview Q&A section before your real interview.
ADO.NET ADO.NET Core Tutorial · ADO.NET
relationships between them. It is used for handling disconnected data and can work
offline, and it can also support complex structures, such as parent-child relationships.
can be used for simpler scenarios where only one table of data is needed.
Example:
ADO.NET ADO.NET Core Tutorial · ADO.NET
To bind a DataTable to a GridView in ASP.NET:
In a production ADO.NET application, teams apply this when handling user-facing features or integration boundaries. For example, you might use it during a sprint where reliability and observability matter—logging metrics, validating edge cases, and documenting the decision in an ADR so future developers understand why the approach was chosen.
Tip: Practice aloud on Toolliyo mock interview or the Interview Q&A section before your real interview.
ADO.NET ADO.NET Core Tutorial · ADO.NET
DO.NET exceptions are typically handled using try-catch blocks. This helps to capture any
errors during database operations such as connection failures, query issues, or command
execution errors.
Example:
try
{
SqlConnection connection = new SqlConnection(connectionString);
connection.Open();
SqlCommand command = new SqlCommand("SELECT * FROM Customers",
connection);
SqlDataReader reader = command.ExecuteReader();
}
catch (SqlException ex)
{
Console.WriteLine("Database error: " + ex.Message);
}
catch (Exception ex)
{
Console.WriteLine("General error: " + ex.Message);
}ADO.NET ADO.NET Core Tutorial · ADO.NET
The SqlConnection object is responsible for opening a connection to a SQL Server
database. It represents the physical connection to the data source and must be open before
executing commands (like SqlCommand) or reading data (using SqlDataReader or
SqlDataAdapter).
Example:
SqlConnection connection = new SqlConnection(connectionString);
connection.Open();
// Execute database commands
connection.Close();
ADO.NET ADO.NET Core Tutorial · ADO.NET
Definition) file, which defines the structure of the data (tables, columns,
relationships). It provides type safety and compile-time checking.
meaning you access tables and columns by name at runtime. This offers flexibility but
no compile-time checking.
Example:
intellisense.ADO.NET ADO.NET Core Tutorial · ADO.NET
Answer: transaction in ADO.NET is a sequence of database operations that are executed as a single unit. If one operation fails, all previous operations are rolled back. You can manage transactions using the SqlTransaction object. Steps:
In a production ADO.NET application, teams apply this when handling user-facing features or integration boundaries. For example, you might use it during a sprint where reliability and observability matter—logging metrics, validating edge cases, and documenting the decision in an ADR so future developers understand why the approach was chosen.
Tip: Practice aloud on Toolliyo mock interview or the Interview Q&A section before your real interview.
ADO.NET ADO.NET Core Tutorial · ADO.NET
You can execute multiple transactions sequentially by managing multiple SqlTransaction
objects. Each transaction can either be committed or rolled back based on the success or
failure of the operations.
Example:
SqlConnection connection = new SqlConnection(connectionString);
connection.Open();
SqlTransaction transaction1 = connection.BeginTransaction();
SqlTransaction transaction2 = connection.BeginTransaction();
Follow:
try
// First transaction
SqlCommand command1 = new SqlCommand("UPDATE Customers SET
Balance = Balance - 100", connection, transaction1);
command1.ExecuteNonQuery();
transaction1.Commit();
Advanced ADO.NET Questions
ADO.NET ADO.NET Core Tutorial · ADO.NET
Answer: In ADO.NET, the Command object is used to execute SQL queries or stored procedures. The main types of Command objects are:
In a production ADO.NET application, teams apply this when handling user-facing features or integration boundaries. For example, you might use it during a sprint where reliability and observability matter—logging metrics, validating edge cases, and documenting the decision in an ADR so future developers understand why the approach was chosen.
Tip: Practice aloud on Toolliyo mock interview or the Interview Q&A section before your real interview.