To insert records in batches, you can use sqldataadapter.Example:
String SQL = " Select Item1, item2, item3 from tablea " ;
Sqlconnection CN = New Sqlconnection ( " Server = (local); uid = sa; Pwd =; database = examonline " );
Sqldataadapter da = New Sqldataadapter (SQL, CN );
Dataset DS = New Dataset ();
Try
{
CN. open ();
Da. Fill (DS,"Dstable1");
}
Finally
{
CN. Close ();
}
// Append the batch data to DS
Checkbox CB = New Checkbox ();
Datarow Dr;
For ( Int I = 0 ; I < Datagrid1.items. Count; I ++ )
{
CB = (Checkbox) maid [I]. findcontrol ( " Checkbox1 " );
If (Cb. Checked = True )
{
Dr = DS. Tables [ " Dstable1 " ]. Newrow ();
Dr [ " Item1 " ] = (Label) maid [I]. findcontrol ( " Label1 " ). Text;
Dr [ " Item2 " ] = (Label) maid [I]. findcontrol ( " Label2 " ). Text;
Dr [ " Item3 " ] = (Label) maid [I]. findcontrol ( " Label3 " ). Text;
DS. Tables [ " Dstable1 " ]. Rows. Add (DR );
}
}
// Preparations before adding data in batches
SQL = " Insert into tablea (Item1, item2, item3) values (@ Item1, @ item2, @ item3) " ;
Da. insertcommand = New Sqlcommand (SQL, CN );
Sqlparameter Param = New Sqlparameter ();
Param = Da. insertcommand. Parameters. Add ( New Sqlparameter ( " @ Item1 " , Sqldbtype. Char, 50 ));
Param. sourceversion = Datarowversion. Current;
Param. sourcecolumn = " Item1 " ;
Param = Da. insertcommand. Parameters. Add ( New Sqlparameter ( " @ Item2 " , Sqldbtype. Char, 50 ));
Param. sourceversion = Datarowversion. Current;
Param. sourcecolumn = " Item2 " ;
Param = Da. insertcommand. Parameters. Add ( New Sqlparameter ( " @ Item3 " , Sqldbtype. Char, 50 ));
Param. sourceversion = Datarowversion. Current;
Param. sourcecolumn = " Item3 " ;
// Batch add data
Try
{
CN. open ();
Da1.update (DS,"Dstable1");
}
Catch (Exception ex)
{
Label1.text="Database Error:" +Ex. Message. tostring ();
}
Finally
{
CN. Close ();
}