What is a SqlCommandBuilder in ADO.NET
SqlCommandBuilder class in ADO.NET provides the feature of reflecting the changes
made to a DataSet or an instance of the SQL server data. When an instance of the SqlCommandBuilder
class is created, it automatically generates Transact-SQL statements for the single table updates
that occur. The object of the SqlCommandBuilder acts as a listener for RowUpdating events, whenever
the DataAdapter property is set.
The SqlCommandBuilder object automatically generates the values contained within the SqlDataAdapter's
InsertCommand, UpdateCommand and DeleteCommand properties based on the initial SelectCommand.
The advantage here is that you will not need to write SqlCommand & SqlParameter Types explicitly.
Basically the command builder object builds these objects on the fly. The command builder object actually
reads the metadata of the method called. After the builder object reads the underlying schema of the adapter's
method, it autogenerates an underlying insert, update & delete command object.
See code example below...
//Code below in C#...
Call Stored Procedure
DataSet ds = new DataSet();
SqlConnection cn = new SqlConnection("strSomeConnectionString");
//Autogenerate Insert, Update & Delete commands
SqlDataAdapter da = new SqlDataAdapter("Select from t_Something", cn);
SqlCommandBuilder scb = new SqlCommand(da);
//Fill the dataset
More Interview Questions...