欢迎来到天天文库
浏览记录
ID:18422173
大小:83.00 KB
页数:8页
时间:2018-09-17
《c#操作excel(多种方法比较)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、C#操作excel(多种方法比较) 我们在做excel资料的时候,通常有以下方法。一.导入导出excel常用方法:1.用查询表的方式查询并show在数据集控件上。代码publicstaticstringstrCon="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=C:\08.xls;ExtendedProperties=Excel8.0";publicstaticDataSetds;protectedvoidPage_Load(objectsender,EventArgse){O
2、leDbConnectionconn=newOleDbConnection(strCon);stringsql="select*from[Sheet1$]";conn.Open();OleDbDataAdaptermyCommand=newOleDbDataAdapter(sql,strCon);ds=newDataSet();myCommand.Fill(ds,"[Sheet1$]");conn.Close();datagrid1.DataMember="[Sheet1$]";datagrid1.DataSource=ds;dat
3、agrid1.DataBind();//Excel.Applicationexcel=newExcel.Application();//excel.Application.Workbooks.Add(true);//excel.Visible=true;} 2.一个一个单元格的进行插入 代码1stringstr=@"DataSource=IT-428E4EA4B0C7SQLEXPRESS;InitialCatalog=TestBase;IntegratedSecurity=True";2SqlConnectionconn=newS
4、qlConnection(str);3conn.Open();4intn=0;5for(inti=1;i<20;i++)6{7if(n>3)8break;9elsebeconsistentwithinthesamedisk.Alternateunifiedcorerequirementsplacedontheterminalstripterminals,onlineidentityandensurethecoppercoreisnotexposed.6.4.6enclosurewithinthesametothecablecorep
5、rovidesbindingintoacircle,harnesstiespacingisgenerally100mm;branchofficesshallbebindingonbothends,eachcore10if(msheet.Cells.get_Range("A"+i,Type.Missing).Text.ToString()==""&&n<=3)11{n++;}12else13{14 //循环获取excel单元格的值一次一次的插入,excuteSql为执行的存储过程15 excuteSql(msheet.Cells.ge
6、t_Range("B"+i,Type.Missing).Text.ToString(),16msheet.Cells.get_Range("B"+(i+1),Type.Missing).Text.ToString(),17msheet.Cells.get_Range("B"+(i+2),Type.Missing).Text.ToString(),18conn);19i=i+3;2021}22}2324conn.Close();二快速导入导出1.我们都知道当向db里批量插入数据的时候我们会选择SqlBulkCopyif (dataTa
7、ble!=null && dataTable.Rows.Count!=0) { sqlBulkCopy.WriteToServer(dataTable); } 这个可以看 深山老林新发的一篇SQLServer中批量插入数据方式的性能对比下面是SqlBulkCopy的方法,这个方法有一个弊端就是当excel某一列即有文字,还有日期的时候,会出现null值,我在网上查了一些资料说连接字串加上;HDR=YES;IMEX=1'的时候会都当做字符处理,但是还是会出现一些
8、bug,所以建议最好先把excel数据分析到datatable里然后再用SqlBulkCopy倒入数据库 代码1//blockcopytoDBfromExcel2//Byxijun,3//step1createanexcelfil
此文档下载收益归作者所有