记忆博客园

只为成功找方法,不为失败找借口!__[じ浪漫記憶ve]

remanticmemoryID:RemanticMemory
60435次访问,排名1558好友0人,关注者0
RemanticMemory的文章
原创 134 篇
翻译 0 篇
转载 29 篇
评论 14 篇
RemanticMemory的公告
☆最大的敌人就是自己☆
net交流群20489595
最近评论
hdnero:wow power leveling
hdnero:wow power leveling
zhanshuizhu:重新注册一下IIS
13446:沙发
湖州人,顶顶。
二斌:透死他妈的好赖找不到
文章分类
收藏
相册
成长历程
激情岁月
旅游风光
站点信息
久游IT网
渐飞IT人阵地
渐飞网络(JFCMS)
存档
软件项目交易
订阅我的博客
XML聚合  FeedSky
订阅到鲜果
订阅到Google
订阅到抓虾
订阅到BlogLines
订阅到Yahoo
订阅到GouGou
订阅到飞鸽
订阅到Rojo
订阅到newsgator
订阅到netvibes

原创 自己写的excel导入sqlserver函数 收藏

新一篇:  C#中使用Excel

public static bool import_excel(string excelPath)
    {
     bool result = false;
     //本地连接】
     string myConnectString = "Server=localhost;Database=database;uid=sa;pwd=×××××;";
     SqlConnection objConnection = new SqlConnection(myConnectString);

    //创建一个excel应用程序

     Excel.Application objApplication = new Excel.Application();
     //创建一个工作簿
     Excel._Workbook objWorkbook = objApplication.Workbooks.Add(excelPath);
     Excel._Worksheet sh  = new WorksheetClass();
     try
     {
      string strSql = string.Empty;
      StringBuilder objBuilder = new StringBuilder();
      string mubiaotable = string.Empty;
      
      //如果只想用程序控制该excel而不想让用户操作时候,可以设置为false
      objApplication.Visible = false;
      objApplication.UserControl = true;
      // sheetName为Excel文件中Sheet的名子
     string sheetName  = string.Empty;
  
  
      //然后通过它里面Excel.Application,Excel.Workbook,Excel.Worksheet,Excel.Range对像获得一些你想要的信息
      for (int i = 1; i<= objWorkbook.Sheets.Count;i++)
      {
       取得excel 的工作表
       sh = ( Excel._Worksheet)objWorkbook.Sheets[i];
       objConnection.Open();
       objBuilder.Append(sh.Name);
       objBuilder.Append("$");
       //excel工作表名
       sheetName = objBuilder.ToString();
      //sqlserver的表名
       mubiaotable = objBuilder.ToString();
  
       //把excel的工作表读出写入sqlserver表(sql语句经常出错)
       strSql =" select * into "+mubiaotable+" from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 5.0;HDR=YES;DATABASE="+excelPath+"',"+sheetName+")";
       SqlCommand  objCMD = new SqlCommand(strSql,objConnection);
       objCMD.ExecuteNonQuery();
       objConnection.Close();
      //
       objBuilder.Remove(0,objBuilder.Length);
      }
      result = true;
     退出应用程序
      objApplication.Quit();

     }
     catch(CSystem.CException ex)
     {
      throw new CSystem.CException(ex.ToString());
     }
     //释放进程
     finally
     {
      System.Runtime.InteropServices.Marshal.ReleaseComObject(objApplication);
      System.Runtime.InteropServices.Marshal.ReleaseComObject(objWorkbook);
      System.Runtime.InteropServices.Marshal.ReleaseComObject(sh);
      objApplication = null;
      objWorkbook    = null;
      sh             =  null;
      GC.Collect();
      objConnection.Close();
      objConnection = null;  
     }
     return result;
    }  

 

发表于 @ 2007年04月18日 16:00:00|评论(loading...)|编辑

旧一篇: Cookie使用中的一些要点及问题

评论

#斯蒂芬 发表于2007-10-15 16:33:18  IP: 124.89.87.*
发表评论  


登录
Csdn Blog version 3.1a
Copyright © RemanticMemory