怎么用C#读excel表格中的数据并存到SQL SERVER中 如excel表格中有:UsrName,UsrPwd,Age这三个字段,我想把他存到SQL SERVER中的users表(包含上面的三字段)中,请问用代码的方式怎么实现啊? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 private DataSet ReadExcel(string strFileName) { string strConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source =" +strFileName + ";Extended Properties = Excel 8.0"; OleDbConnection oleConnection = new OleDbConnection(strConnection); try { string strCommondText = " SELECT * FROM [Sheet1$] "; oleConnection.Open(); DataSet dsRead = new DataSet(); OleDbDataAdapter oleAdper = new OleDbDataAdapter(strCommondText,oleConnection); oleAdper.Fill(dsRead,"Pantent"); return dsRead; } catch(System.Exception) { throw new ApplicationException("读取数据源文件时出错"); } finally { oleConnection.Close(); } }/* 从DataSet 中再存入数据库中*/ 顶1楼的。但是如果记录条数很多时,使用DataReader从excel获取数据,再插入到SQL SERVER会不会更好一点呢? 和我原来写的方法基本上一样,但是会报这样的错误System.Exception: 方法ReadExcel发生错误 ---> System.Data.OleDb.OleDbException: 创建文件失败。是不是我的excel文件的问题啊? string conExcel= "Provider=Microsoft.Jet.OLEDB.4.0; DataSource=E:\fagaiwei.xls;Extended Properties = Excel 8.0";public DataSet GetFromExcel() { OleDbConnection objCn=new OleDbConnection(); OleDbDataAdapter objCmd; DataSet ds=new DataSet(); string sqlExcel="select * from [Sheet1$]"; try { objCn.ConnectionString=conExcel; objCn.Open(); objCmd=new OleDbDataAdapter(sqlExcel,objCn); objCmd.Fill(ds,"temp"); objCn.Close(); } catch(Exception e) { throw(new Exception("方法GetFromExcel发生错误",e)); } finally { if(objCn.State!=ConnectionState.Closed) { objCn.Close(); } } return ds; } 好像有一点不同string conExcel= @"Provider=Microsoft.Jet.OLEDB.4.0; DataSource=E:\fagaiwei.xls;Extended Properties = Excel 8.0"; 晕,是Data Source而不是DataSource,而且要注意你的(Exception e),这里“e”好容易疏忽,最好用别的名字。 如何处理一个页面打开另外一个人进不了? foreach语句 指定的转换无效。 net 怎样读取二进制的音频文件显示在Web 页面中 求助 图片资源的问题。 DataSet 集合使用过滤条件,填充combox的问题 ComponentOne C1Chart 改变单个数据点的样式问题 中文显示成乱码 刚装好了水晶报表,一头雾水,没有发现能在VS环境中进行报表设计的界面,在哪儿找到? 问一个简单的替换问题,在线等答案给分 VS.NET2005 C#问题 求C#工资源码
{
string strConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source =" +strFileName + ";Extended Properties = Excel 8.0";
OleDbConnection oleConnection = new OleDbConnection(strConnection);
try
{
string strCommondText = " SELECT * FROM [Sheet1$] ";
oleConnection.Open();
DataSet dsRead = new DataSet();
OleDbDataAdapter oleAdper = new OleDbDataAdapter(strCommondText,oleConnection);
oleAdper.Fill(dsRead,"Pantent");
return dsRead;
}
catch(System.Exception)
{
throw new ApplicationException("读取数据源文件时出错");
}
finally
{
oleConnection.Close();
}
}/*
从DataSet 中再存入数据库中
*/
但是如果记录条数很多时,使用DataReader从excel获取数据,再插入到SQL SERVER会不会更好一点呢?
System.Exception: 方法ReadExcel发生错误 ---> System.Data.OleDb.OleDbException: 创建文件失败。
是不是我的excel文件的问题啊?
{
OleDbConnection objCn=new OleDbConnection();
OleDbDataAdapter objCmd;
DataSet ds=new DataSet();
string sqlExcel="select * from [Sheet1$]";
try
{
objCn.ConnectionString=conExcel;
objCn.Open();
objCmd=new OleDbDataAdapter(sqlExcel,objCn);
objCmd.Fill(ds,"temp");
objCn.Close();
}
catch(Exception e)
{
throw(new Exception("方法GetFromExcel发生错误",e));
}
finally
{
if(objCn.State!=ConnectionState.Closed)
{
objCn.Close();
}
}
return ds;
}
string conExcel= @"Provider=Microsoft.Jet.OLEDB.4.0; DataSource=E:\fagaiwei.xls;Extended Properties = Excel 8.0";
而且要注意你的(Exception e),这里“e”好容易疏忽,最好用别的名字。