- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
C#操作excel(多种方法比较)
我们在做excel资料的时候,通常有以下方法。一.导入导出excel常用方法:
用查询表的方式查询并show在数据集控件上。
代码
publicstaticstringstrCon=Provider=Microsoft.Jet.OLEDB.4.0;DataSource=C:\\08.xls;ExtendedProperties=Excel8.0;
publicstaticDataSetds;
protectedvoidPage_Load(objectsender,EventArgse)
{
OleDbConnectionconn=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;datagrid1.DataBind();
//Excel.Applicationexcel=newExcel.Application();
//excel.Application.Workbooks.Add(true);
//excel.Visible=true;
}
一个一个单元格的进行插入
代码
代码
1
stringstr=@DataSource=IT-428E4EA4B0C7\SQLEXPRESS;InitialCatalo
g=TestBase;IntegratedSecurity=True;
2
3
4
5
6
7
8
9
10
SqlConnectionconn=newSqlConnection(str);conn.Open();
intn=0;
for(inti=1;i20;i++)
{
if(n3)
break;else
if(msheet.Cells.get_Range(A+i,Type.Missing).Text.ToStri
15
excuteSmqslh(eet.Cells.get_Range(B+
i,Type.Missing).
Text.ToString(),
16
msheet.Cells.get_RangBe(+(i+1),
Type.Missing).Tex
t.ToString(),
17
msheet.Cells.get_RangBe(+(i+2),
Type.Missing).Tex
t.ToString(),
18
c)o;nn
19
i=i3;+
20
21
}
22
}
23
24
conn.Close();
ng()==
ng()==n=3)
11 {n++;}
12 else
13 {
14 //循环获取excel单元格的值一次一次的插入,excuteSql为执行的存储过程
我们都知道当向db里批量插入数据的时候我们会选择SqlBulkCopy
if(dataTable!=nulldataTable.Rows.Count!=0)
{
sqlBulkCopy.WriteToServer(dataTable);
}
这个可以看深山老林新发的一篇SQLServer中批量插入数据方式的性能对比下面是
代码1//blockcopytoDBfromExcel23//Byxijun,//step1createanexcelfile C:\Inetpub\wwwroot\test.xls,fillcell(1,1)withData,cell(1,2)withnameSqlBulkCopy的方法,这个方法有一个弊端就是当excel某一列即有文字,还有日期的时候,
代码
1//blockcopytoDBfromExcel
2
3
//Byxijun,
//step1createanexcelfile C:\Inetpub\wwwroot\test.xls,fillcel
l(1,1)withData,cell(1,2)withname
4
//step2createtablenamedDatawith2col
文档评论(0)