Click here to Skip to main content
15,885,998 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
respected sir / madam
i have a problem that i have few records saved in a datatable Rinvoice having fields (InvoiceNo,InvoiceDate,KotNo,KotTime,KotDate,Quantity,ItemCode, ItemName,Department,Kitchen,Rate,SalesTax,SurchargePercentage, Discount,DiscountPercentage,DiscountPercentage,Amount,Cost,Paid, PartyCode,RoomTable,Server,TaxPaid,ServiceCharges,Pax,BillTime, User,ExpTax,Initials,Type,InclusiveTax,TaxAmount)

i have first created this datatable then bind this datatable and finally i am passing this to a class file where i am using sqlbulkcopy for saving the data to the database.

plz anyone can tell how to insert multiple records by usiing the dataadpater(with or witout commandbuilder)

i m listing the code which i m using :

using(SqlBulkCopy oBulkCopy=new SqlBulkCopy(conRInvoice))
                    {  
oBulkCopy.DestinationTableName = "rinvoice";
oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["InvoiceNo"].ColumnName, "inv_no");
oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["InvoiceDate"].ColumnName, "inv_date");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["KotNo"].ColumnName, "kot_no");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["KotTime"].ColumnName, "kot_time");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["KotDate"].ColumnName, "kot_date");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["Quantity"].ColumnName, "qty");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["ItemCode"].ColumnName, "item_code");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["ItemName"].ColumnName, "item_name");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["Department"].ColumnName, "deptt");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["Kitchen"].ColumnName, "kitchen");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["Rate"].ColumnName, "rate");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["SalesTax"].ColumnName, "sales_tax");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["SurchargePercentage"].ColumnName, "surc_per");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["Discount"].ColumnName, "discount");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["DiscountPercentage"].ColumnName, "disc_per");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["Amount"].ColumnName, "amount");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["Cost"].ColumnName, "cost");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["Paid"].ColumnName, "paid");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["PartyCode"].ColumnName, "party_code");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["RoomTable"].ColumnName, "room_table");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["Server"].ColumnName,"server");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["TaxPaid"].ColumnName, "tax_paid");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["ServiceCharges"].ColumnName, "serv_chg");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["Pax"].ColumnName,"pax");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["BillTime"].ColumnName, "bill_time");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["User"].ColumnName, "user");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["ExpTax"].ColumnName, "exp_tax");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["Initials"].ColumnName, "initials");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["Type"].ColumnName, "type");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["InclusiveTax"].ColumnName, "incltax");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["TaxAmount"].ColumnName, "tax_amt");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["TaxCode"].ColumnName, "tax_code");

oBulkCopy.ColumnMappings.Add(dtbInvoiceRecord.Columns["AltGlCode"].ColumnName, "altglcode");
oBulkCopy.WriteToServer(dtbInvoiceRecord);
}
Posted
Updated 27-Jul-11 5:58am
v3

1 solution

The easiest way I have found is to actually create a DataSet (either programmatically or using the DataSet schema designer for a strongly-typed DataSet). You can create a DataSetAdapter for that, or even roll your own fairly easily (there are examples on MSDN at http://msdn.microsoft.com/en-us/library/acb32th4(v=VS.90).aspx[^]).

Then you just add new DataRows to the DataTable(s) you need, then call Update (either on the typed DataSet or DataSetAdapter depending on how you implemented it) and the rows are inserted/updated/deleted automatically.
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900