菜鸟求救:在线等
我想用C#实现一个数据导出、导入功能,就是把excel中的数据导入到SQLSEVER数据库中,请问那个老大能帮我一下,有没有源代码?小弟感激不尽 问题点数:20、回复次数:6Top
1 楼theodiact(theodiact)回复于 2006-03-01 10:55:26 得分 0
帮你UP一下Top
2 楼bm1978(king)回复于 2006-03-01 11:21:55 得分 0
有办法!
Top
3 楼idda(碗掉了,头大个疤)回复于 2006-03-01 14:03:19 得分 0
excel可以用OLE DB读取的,然后把数据遍历写如SQL SERVER.Top
4 楼songxiaozhao(雨朋)回复于 2006-03-01 14:08:08 得分 0
帮定了
看看下面的代码
ConStr=ConfigurationSettings.AppSettings["ConStr"];
Conn=new SqlConnection(ConStr);
string fileName=Server.MapPath("")+"\\upload"+"\\test.xls";//先放到此文件夹下
myFile.PostedFile.SaveAs(fileName);
string extName=System.IO.Path.GetExtension(myFile.PostedFile.FileName);
if(extName!=".xls"||extName.Length<1)
{
Response.Write( "<script language=javascript>alert('数据导入失败.可能是文件格式或路径不正确!!!');</script>");
return;
}//
string mystring="Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = '"+fileName+"'"+";Extended Properties=Excel 8.0";
OleDbConnection cnnxls = new OleDbConnection (mystring);
OleDbDataAdapter myDa =new OleDbDataAdapter("select * from [Sheet1$]",cnnxls);
DataSet myDs =new DataSet();
myDa.Fill(myDs,"fzr");
if(myDs.Tables[0].Rows.Count<=0)
{
Response.Write( "<script language=javascript>alert('文件中可能没有数据,请检查后重新导入!');</script>");
return;
}
fzrid=new int[myDs.Tables[0].Rows.Count];
string strSql = "";
string CnnString="Provider=SQLOLEDB;"+ConStr;
OleDbConnection conn =new OleDbConnection(CnnString);
OleDbCommand myCmd =null;
try
{
conn.Open ();
for(int i=0; i<myDs.Tables[0].Rows.Count; i++)
{
strSql="insert into FZRJBQK(XM,XB,NL,GZDW,ZW,ZC,BYYX,XL,ZY,LXFS,EMAIL,CDGJJXMQK,QDDKYCGJSHJLQK,ZYXSJGRZQK,XYBLJLQK) values ('";
strSql += myDs.Tables[0].Rows[i]["XM"].ToString() + "', '";
strSql += myDs.Tables[0].Rows[i]["XB"].ToString() + "', '";
strSql += myDs.Tables[0].Rows[i]["NL"].ToString() + "', '";
strSql += myDs.Tables[0].Rows[i]["EMAIL"].ToString() + "')";
strSql +="select @@IDENTITY";
try
{
myCmd=new OleDbCommand(strSql,conn);
fzrid[i]=int.Parse(myCmd.ExecuteScalar().ToString().Trim());
}
catch
{
Response.Write( "<script language=javascript>alert('数据导入失败!');</script>");
return;
}
}
}
catch
{
Response.Write( "<script language=javascript>alert('数据导入失败!');</script>");
return;
}
finally
{
conn.Close();
}
Response.Write("<script language=javascript>alert('操作成功.共导入"+myDs.Tables[0].Rows.Count+"条记录!');</script>");
}
Top
5 楼sino133125()回复于 2006-03-06 16:51:48 得分 0
谢谢以上的各位仁兄了,谢谢大家的支持Top
6 楼sino133125()回复于 2006-03-06 16:57:12 得分 0
songxiaozhao(雨朋)谢谢你了啊
看来你是c#的高手啊,以后要多多向你请教!
我就是还想问下,把sqlserver中的记录excel怎么实现?能不能在帮帮我啊Top




