question43:ssis的job发送HTML格式的电子邮件
解决方案:如果要将每个job执行的开始时间,结束时间发送电子邮件到某一邮箱,可以使用SqlServer数据库自带的系统库msdb库,通过这个库可以查看作业执行的历史记录。
question44:SqlServer数据库的定时备份:在“管理里面”新建作业维护,然后在job里面调度这个维护计划,定时执行。
如果要把截止当前7天前的数据库备份删除,还需要在维护计划里面加一个清楚历史记录,清楚维护计划的控件。必须将3个步骤的先后顺序标明清楚
question45:ssis需求及其业务的分析:
首先我们得明确整个流程是怎么走的,还有就是抽取的数据源哪些是要过滤的,比如过滤重复的,某个字段为空的,在某个时间段内的。此表是否金额哪些表关联等等。将数据源的数据插入目标端哪些字段。是否需要进行类型转换或者合并排序等操作。是否有默认值,默认值的规则是什么。
验证数据的时候:不仅要验证目的端的数据是否有空值出现,数据量是否对,数据的准确性都要一个个验证;是否与需求有所出入。
question46:SSIS生成的文件的命名方式:“文件名+日期”的格式
@[User::OutPutFilePath]+"\\"+@[User::OutPutFileName]+(DT_STR,4,1251)DATEPART("yyyy",@[System::StartTime])+
RIGHT("0"+(DT_STR,4,1251)DATEPART("mm",@[System::StartTime]),2)+
RIGHT("0"+(DT_STR,4,1251)DATEPART("dd",@[System::StartTime]),2)+".txt"
这里的双引号不要转成单引号否则报错,变量的值不需要加后缀。
question47:在ssis中将存储在excle里面的数据导入数据库
ssis将一个excle不同sheet页的数据插入同一个表
解决方案:
1.为了64位的ssis能够支持excle,在项目上设置Run64BitRuntime为false。
2.一个excle文件下面有多个sheet,名称为SqlResult1,SqlResult2,SqlResult3,SqlResult4,SqlResult5等等。
注意:这里的变量命名方式:变量名一定要是SheetName,值一定要是excle里面的一个sheet的名称后面再加$.
然后新建的excle连接管理器里面设置excle的具体路径即可。
为保险起见用用C#做测试:MessageBox.Show(Dts.Variables["SheetName"].Value.ToString());