使用sqlbulkcopy将数据从xml存储到db [英] store data from xml to db using sqlbulkcopy
问题描述
您好我在数据表中存储xml(xml大小为100 MB)值,并使用sqlbulkcopy在数据库表中存储数据表值。在此操作期间,我收到数据类型不匹配错误。
任何人都可以告诉我如何摆脱这个错误。
在此先感谢
connectionString = GetDatabaseConnectionPath();
ds.ReadXml( @ .. \..\XML\edition_report20140822.xml< /跨度>);
sourceData = ds.Tables [ 0 ];
使用(SqlBulkCopy bulkCopy =
new SqlBulkCopy(destinationConnection, SqlBulkCopyOptions.Default,transaction))
{
// bulkCopy.ColumnMappings。清除();
// 列映射
// bulkCopy.ColumnMappings.Add(edition_eanisbn13,szISBN);
// bulkCopy.ColumnMappings.Add(temp_edition_format,szFormat);
// bulkCopy.ColumnMappings.Add(temp_binding_short_name,szFormatAbbreviation);
// bulkCopy.ColumnMappings.Add(edition_product_type,szMedia);
// bulkCopy.ColumnMappings.Add(producttype,szMediaAbbreviation);
// < span class =code-comment> bulkCopy.ColumnMappings.Add(edition_publication_date,dtPublicationDate);
// bulkCopy.ColumnMappings.Add(work_cover_title,szTitlePrefixAndTitle);
// bulkCopy.ColumnMappings.Add(work_sort_title,szTitleAndTitlePrefix);
// bulkCopy.ColumnMappings.Add(work_sub_title,szSubTitle);
// bulkCopy.ColumnMappings.Add(edition_product_type,szPrimaryEditionEAN13);
// bulkCopy.ColumnMappings.Add(group_titles_series,szSeries);
// bulkCopy.ColumnMappings.Add(group_sequence_number_series,szVolume);
bulkCopy.DestinationTableName = tblTitle跨度>;
bulkCopy.WriteToServer(copyDataTable);
}
< blockquote>这些链接可能对您有用
http://forums.asp.net/t/1830023.aspx?SqlBulkCopy+Problem+in+Copy + data + from + XML + to + Sql + Server + DB [ ^ ]
http://stackoverflow.com/questions/7532052/writing-xml-data-to-sql-server-using-sqlbulkcopy-in-c-sharp-asp-net [<一个href =http://stackoverflow.com/questions/7532052/writing-xml-data-to-sql-server-using-sqlbulkcopy-in-c-sharp-asp-nettarget =_ blanktitle = 新窗口> ^ ]
Hi I am storing xml(xml size is 100 mb) value in datatable and store datatable value in database table using sqlbulkcopy. During this operation, I am getting datatype mismatch error.
can anyone tell me how to get rid of this error.
Thanks in Advance
connectionString = GetDatabaseConnectionPath();
ds.ReadXml(@"..\..\XML\edition_report20140822.xml");
sourceData = ds.Tables[0];
using (SqlBulkCopy bulkCopy =
new SqlBulkCopy(destinationConnection, SqlBulkCopyOptions.Default, transaction))
{
// bulkCopy.ColumnMappings.Clear();
//column mappings
//bulkCopy.ColumnMappings.Add("edition_eanisbn13", "szISBN");
//bulkCopy.ColumnMappings.Add("temp_edition_format", "szFormat");
//bulkCopy.ColumnMappings.Add("temp_binding_short_name", "szFormatAbbreviation");
//bulkCopy.ColumnMappings.Add("edition_product_type", "szMedia");
//bulkCopy.ColumnMappings.Add("producttype", "szMediaAbbreviation");
//bulkCopy.ColumnMappings.Add("edition_publication_date", "dtPublicationDate");
//bulkCopy.ColumnMappings.Add("work_cover_title", "szTitlePrefixAndTitle");
//bulkCopy.ColumnMappings.Add("work_sort_title", "szTitleAndTitlePrefix");
//bulkCopy.ColumnMappings.Add("work_sub_title", "szSubTitle");
//bulkCopy.ColumnMappings.Add("edition_product_type", "szPrimaryEditionEAN13");
//bulkCopy.ColumnMappings.Add("group_titles_series", "szSeries");
//bulkCopy.ColumnMappings.Add("group_sequence_number_series", "szVolume");
bulkCopy.DestinationTableName = "tblTitle";
bulkCopy.WriteToServer(copyDataTable);
}
these links may be useful for you
http://forums.asp.net/t/1830023.aspx?SqlBulkCopy+Problem+in+Copy+data+from+XML+to+Sql+Server+DB[^]
http://stackoverflow.com/questions/7532052/writing-xml-data-to-sql-server-using-sqlbulkcopy-in-c-sharp-asp-net[^]
这篇关于使用sqlbulkcopy将数据从xml存储到db的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!