じJF[CMS]ve

努力去工作,用心去生活!

用户操作
[即时聊天] [发私信] [加为好友]
JFStudioID:RemanticMemory
69247次访问,排名1549,好友1人,关注者1人。
努力工作, 用心生活.
RemanticMemory的文章
原创 131 篇
翻译 0 篇
转载 29 篇
评论 17 篇
RemanticMemory的公告
☆最大的敌人就是自己☆
net交流群20489595
最近评论
Rs:谢谢分享
Rs:后面的答案呢。。谢谢分享。
chinarenkai:大哥。我现在在用PD开发一个学生信息管理系统。问题蛮多的。首先,就是不是蛮会用PD建立表与表的合适的关系。请教一下啊!
chinarenkai:大哥。我现在在用PD开发一个学生信息管理系统。问题蛮多的。首先,就是不是蛮会用PD建立表与表的合适的关系。请教一下啊!
山贼:这样真的行了吗?貌似不行吧
文章分类
收藏
相册
成长历程
激情岁月
旅游风光
站点信息
久游IT网
渐飞IT人阵地
渐飞网络(JFCMS)
存档
订阅我的博客
XML聚合  FeedSky

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

新一篇:  C#中使用Excel  | 旧一篇: Cookie使用中的一些要点及问题

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...)|编辑|收藏

新一篇:  C#中使用Excel  | 旧一篇: Cookie使用中的一些要点及问题

评论

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


登录
Csdn Blog version 3.1a
Copyright © RemanticMemory