读取Excel到SQL数据库(方法二)

 public void putExcelIntoSQL(string strPath,string strSheetName)
  {
   try
   {
    string strConn=System.Configuration.ConfigurationSettings.AppSettings["strCon"];
    strConn="Provider=SQLOLEDB;User ID=sa;Initial Catalog=myDatabase;password=;datasource=localhost";
    OleDbConnection Olecon=new OleDbConnection(strConn);
    string sql="";
    sql="insert INTO tableTest ";
    sql = sql + " select JAN";
    sql = sql + ",商品名";
    sql = sql + ",部門,状態";
    sql = sql + ",棚卸単位";
    sql = sql + ",棚卸単位入数";
    sql = sql + ",棚卸原単";
    sql = sql + ",棚卸売単 ";
    sql = sql + "FROM  OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source=/"";
    sql = sql + strPath + "/"" ;
    sql = sql + ";User ID=Admin;Password=;Extended properties=Excel 5.0')...["+ strSheetName +"$]";
    OleDbCommand oleCmd=new OleDbCommand(sql,Olecon);
    Olecon.Open();
    oleCmd.ExecuteNonQuery();
    Olecon.Close();
   }
   catch(Exception ex)
   {
    throw ex;
   }
  }

 

 

注意:Excel中若有混合类型的数据,则有可能出现读取数据丢失现象,

可以通过修改注册表来解决:

在HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Jet/4.0/Engines/Excel中修改TypeGuessRows的值,最好修改为0。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值