导入Excel的数据到SQL

页面:
<asp:FileUpload ID="fuload" runat="server" style="width: 175px;"/>
<input type="button" value="导入" class="Btn2" οnclick="page.saveAvatar();" />
后台:
if (fuload.FileName == "")
{
      RegisterStartupScript("error", "未选择导入文件!!!");
      return;
}
//导入文件的的格式错误
string fileExtenSion = Path.GetExtension(fuload.FileName);
if (fileExtenSion.ToLower() != ".xls" && fileExtenSion.ToLower() != ".xlsx")
{
       RegisterStartupScript("error", "导入文件格式不对,文件格式:.xls或.xlsx");
       return;
}
//判断文件夹是否存在
if (Directory.Exists(Server.MapPath("App_Data")) == false)
{
       Directory.CreateDirectory(Server.MapPath("App_Data"));
}
string FileName = "App_Data/" + Path.GetFileName(fuload.FileName);
//删除指定文件
//if (File.Exists(Server.MapPath(FileName)))
//{
//    File.Delete(Server.MapPath(FileName));
//}
//删除指定文件夹下所有文件
foreach (string d in Directory.GetFileSystemEntries(Server.MapPath("App_Data")))
{
     if (File.Exists(d))
     {
           File.Delete(d);//直接删除其中的文件
      }
}
fuload.SaveAs(Server.MapPath(FileName));

//HDR=Yes,这代表第一行是标题,不做为数据使用,如果用HDR=No,则表示第一行不是标题
string connstr2003 = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath(FileName) + ";Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'";
string connstr2007 = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Server.MapPath(FileName) + ";Extended Properties=\"Excel 12.0;HDR=YES\"";
OleDbConnection conn;
if (fileExtenSion.ToLower() == ".xls")
{
      conn = new OleDbConnection(connstr2003);
}
else
{
       conn = new OleDbConnection(connstr2007);
}
conn.Open();
string sql1 = "select * from [tb_Customers$]";
OleDbCommand cmd1 = new OleDbCommand(sql1, conn);
DataTable ctmdt = new DataTable();//创建一个DataTable表,用于存储从excel表中读取的数据
OleDbDataReader ord1 = cmd1.ExecuteReader();
ctmdt.Load(ord1);
ord1.Close();
conn.Close();
//插入数据到SQL

......

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值