我想将XML数据插入SQL服务器数据库,但它不是将数据插入数据库

问题描述:

我想从给定的excel文件创建xml,然后将xml数据插入到数据库中。它正在生成XML文件并将其保存在给定位置,现在我已经将文件读入数据集但是我要插入数据库中这个数据集





我正在使用Windows表单应用程序



我尝试过:



I want to create xml from given excel file and then that xml data should be inserted into database. It is generating XML file and save it on given location now I have read file into data set but this dataset I want to insert into database


I am using Windows form application

What I have tried:

string fsReadXml = savefiledialog.ToString();
                   int i = fsReadXml.IndexOf('\\');
                   if (i >= 0) fsReadXml = fsReadXml.Substring(i - 2);   // here I am getting path of XML file

                   DataSet reportData = new DataSet();
                   reportData.ReadXml(fsReadXml);        // Xml file data is loaded in dataset
                   //reportData.ReadXml(Server.MapPath("yourfile.xml"));
                   SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["DBConnectionString"].ConnectionString);
                   SqlBulkCopy sbc = new SqlBulkCopy(connection);
                   sbc.DestinationTableName = "tblCompanyData12";

                   sbc.ColumnMappings.Add("Sales", "Sales");
                   sbc.ColumnMappings.Add("TradedSales", "TradedSales");
                   sbc.ColumnMappings.Add("TotalSales", "TotalSales");
                   sbc.ColumnMappings.Add("Taxes", "Taxes");
                   sbc.ColumnMappings.Add("NetSales", "NetSales");
                   sbc.ColumnMappings.Add("RowMaterial", "RowMaterial");
                   sbc.ColumnMappings.Add("Power", "Power");
                   sbc.ColumnMappings.Add("Consumables", "Consumables");
                   sbc.ColumnMappings.Add("Salaries", "Salaries");
                   sbc.ColumnMappings.Add("ManufacturingCost", "ManufacturingCost");
                   sbc.ColumnMappings.Add("OtherExpenses", "OtherExpenses");
                   sbc.ColumnMappings.Add("TotalCost", "TotalCost");
                   sbc.ColumnMappings.Add("OperatingProfit", "OperatingProfit");
                   sbc.ColumnMappings.Add("Depreciation", "Depreciation");
                   sbc.ColumnMappings.Add("Interest", "Interest");
                   sbc.ColumnMappings.Add("Profitpostinterest", "Profitpostinterest");
                   sbc.ColumnMappings.Add("IncomeTax", "IncomeTax");
                   sbc.ColumnMappings.Add("NetProfit", "NetProfit");
                   sbc.ColumnMappings.Add("ID", "ID");




                   label1.Text = "File Saved Successfully";







如何将数据集的数据插入到我在谷歌上搜索过的sql server但是它正在使用数据适配器但是在这里我不能使用数据适配器所以你能为ny问题提供解决方案吗




How to Insert data of data set to sql server I have searched on google but it is using data adapter but here i can not use data adapter so would you provide solution for ny problem please

似乎你错过了将数据写入服务器之后做映射。

将以下行添加到最后一行,看看是否有效 -

Seems you have missed to write data to server after doing the mapping.
Add following line to the last and see if that works-
sbc.WriteToServer(reportData.Tables[0]);





请让我知道结果。



希望,它有帮助:)



Please let me know the result.

Hope, it helps :)