c#怎么调用SSIS Package将数据库数据导入

技术c#怎么调用SSIS Package将数据库数据导入本篇内容主要讲解“c#怎么调用SSIS Package将数据库数据导入”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“c

本文主要讲解“c#如何调用SSIS包导入数据库数据”。感兴趣的朋友不妨看看。本文介绍的方法简单、快速、实用。让边肖学习“c#如何调用SSIS包导入数据库数据”!

(1)背景

如何将数据库中的数据导入EXCEL文件,我们经常会遇到。本文将比较几种常用的方法,并以SSIS为例详细说明其用法。作者认为基于SSIS的方法应该是处理海量数据的最有效的方法。个人认为这是推荐的方法。所以,我决定把我知道的,我总结的全部写出来。首先,提高我的写作和表达能力。二是让更多的读者在具体应用中解决将海量数据导入Excel的效率问题。

(二)方法比较

方案一:SSIS(SQL Server数据集成服务)追求效率,制作Package的过程有点复杂(容易出错)。

方案二:使用COM。Excel组件。一般可以基本满足操作,但数据量大时可能会慢一些。下面的代码我自己稍微修改了一下,如下图:这个方法主要是循环一个一个写单元格,基本方法是Excel。WriteValue (refvt、refcf、refca、refchl、refrowindex、refcolindex、refstr、refcell格式)。当数据量较大时,正效率仍然有影响。

公共字符串数据优势(系统。Data.DataTable[] dts,字符串strTitle,字符串FilePath,Hashtable nameList,字符串[] titles)

{

COM。Excel.cExcelFile excel=new COM。excel . cexcelfile();

//当文件大于10时清空所有文件!

ClearFile(文件路径);

//文件名

字符串文件名=strTitle DateTime。现在. ToString(' yyyymmdhhmmssff ')'。xls ';

//生成相应的文件

excel。CreateFile(文件路径文件名);

//设置边距

COM。excel . cexcelfile . margintypes mt1=COM。excel . cexcelfile . margintypes . xlstop margin;

COM。excel . cexcelfile . margintypes mt2=COM。excel . cexcelfile . margintypes . xlsleftfmargin;

COM。excel . cexcelfile . margintypes mt3=COM。excel . cexcelfile . margintypes . xls light margin;

COM.Excel.cExcelFile。

MarginTypes mt4 = COM.Excel.cExcelFile.MarginTypes.xlsBottomMargin;
            double height = 2.2;
            excel.SetMargin(ref mt1, ref height);
            excel.SetMargin(ref mt2, ref height);
            excel.SetMargin(ref mt3, ref height);
            excel.SetMargin(ref mt4, ref height);
            //设置字体!!
            COM.Excel.cExcelFile.FontFormatting ff = COM.Excel.cExcelFile.FontFormatting.xlsNoFormat;
            string font = "宋体";
            short fontsize = 14;
            excel.SetFont(ref font, ref fontsize, ref ff);
            byte b1 = 1, b2 = 12;
            short s3 = 12;
            excel.SetColumnWidth(ref b1, ref b2, ref s3);

            string header = "页眉";
            string footer = "页脚";
            excel.SetHeader(ref header);
            excel.SetFooter(ref footer);

            COM.Excel.cExcelFile.ValueTypes vt = COM.Excel.cExcelFile.ValueTypes.xlsText;
            COM.Excel.cExcelFile.CellFont cf = COM.Excel.cExcelFile.CellFont.xlsFont0;
            COM.Excel.cExcelFile.CellAlignment ca = COM.Excel.cExcelFile.CellAlignment.xlsCentreAlign;
            COM.Excel.cExcelFile.CellHiddenLocked chl = COM.Excel.cExcelFile.CellHiddenLocked.xlsNormal;
            // 报表标题
            int cellformat = 1;     
            int rowIndex = 1;//起始行
            int colIndex = 0;
            foreach (System.Data.DataTable dt in dts)
            {              
                colIndex = 0;
                //取得列标题               
                foreach (DataColumn colhead in dt.Columns)
                {
                    colIndex++;
                    string name = colhead.ColumnName.Trim();
                    object namestr = (object)name;
                    excel.WriteValue(ref vt, ref cf, ref ca, ref chl, ref rowIndex, ref colIndex, ref namestr, ref cellformat);
                }
                //取得表格中的数据           
                foreach (DataRow row in dt.Rows)
                {        

到此,相信大家对“c#怎么调用SSIS Package将数据库数据导入”有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/115008.html

(0)

相关推荐

  • 怎样解析Java的异常处理机制

    技术怎样解析Java的异常处理机制这期内容当中小编将会给大家带来有关怎样解析Java的异常处理机制,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。你觉得自己是一个Java专家吗?是否肯定

    攻略 2021年10月23日
  • DG主库忘记force logging情况下insert append了nologgin表操作是怎样的

    技术DG主库忘记force logging情况下insert append了nologgin表操作是怎样的这篇文章给大家介绍DG主库忘记force logging情况下insert append了nologgin表操作是

    攻略 2021年11月30日
  • 立方厘米和升,一升和一立方米怎么换算

    技术立方厘米和升,一升和一立方米怎么换算在线科普啊立方厘米和升!升在国际单位制中表示为L,其次级单位为毫升(mL)。升与其他容积单位的换算关系为:
    1L=1000mL=0.001立方米=1立方分米=1000立方厘米
    1L

    生活 2021年10月21日
  • 骑马的英语,关于骑马的英语作文高中

    技术骑马的英语,关于骑马的英语作文高中Since ancient times, people riding with a saying called Centaur with success.This word expl

    生活 2021年10月21日
  • Linux系统移远EC20 4G模块移植的方法是怎样的

    技术Linux系统移远EC20 4G模块移植的方法是怎样的这篇文章给大家介绍Linux系统移远EC20 4G模块移植的方法是怎样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。硬件平台:迅为i.MX

    攻略 2021年10月22日
  • 丽江到香格里拉要多久,丽江古城去香格里拉怎么坐车

    技术丽江到香格里拉要多久,丽江古城去香格里拉怎么坐车丽江古城到香格里拉大概有200公里左右丽江到香格里拉要多久,最方便的到达和游玩方式是乘坐旅游专线车,旅游专线车有只发香格里拉的,有中停游玩上虎跳峡,有中停游玩中虎跳峡的

    生活 2021年10月24日