VS2005 TS SP1
SQL 2005 SP2 BI Studio
某企业客户提供的异常数据
在某企业客户目前Informix数据当中存在很多小于1753-01-01的无效数据,而由于SQL 2005的DateTime 数据类型的数据域是从 1753 年 1 月 1 日到 9999 年 12 月 31 日,会导致从Informix通过SSIS向SQL Server写入数据时出错。
根据对问题的具体分析,给出以下几种解决办法:
1.从数据源清理根除无效数据;
2.通过将目标数据表的数据类型设置成整型或字符型解决;
3.通过编写包含IF逻辑判断子句的SQL语句解决;
4.通过SSIS扩展脚本组件编写逻辑代码块解决;
5.通过SSIS扩展开发可视化数据流组件来解决;
经过与某企业客户技术人员的讨论,决定采用对系统影响最小,不需改动数据库和SQL代码,不需编写逻辑代码块的第5种方式来解决,即开发SSIS扩展可视化数据流组件。
1.拷贝DateTimeLimiter.dll到
C:\Program Files\Microsoft SQL Server\90\DTS\PipelineComponents
注:文件夹位置可能会因SQL安装位置而不同;
2.打开Visual Studio 2005 命令提示工具,输入:
gacutil.exe -iF "c:\Program Files\Microsoft Sql Server\90\DTS\PipelineComponents\DateTimeLimiter.dll"
3.打开SQL Server 2005 SSIS项目,选择并打开数据流任务
从左侧工具栏中“选择项”对话框中选取“SSIS数据流项”中的时间转换组件(如图)
1.从数据流转换栏目中找到“时间转换”组件,并拖拽到数据流任务中
2.使用方式与数据转换类似,可在数据源和数据目标之间完成日期数据项的1753问题修复
测试对比结果:
未使用时间转换组件时:
1753-1-1,1.0,A,湖滨南路五龙大厦龙启阁603室,0.0
1753-2-1,2.0,O,?0.0
1979-7-12,3.0,T,2227826 8800681,0.0
1752-1-1,4.0,C,湖滨南路五龙大厦龙启阁603室,0.0
1752-12-31,5.0,H,2227826 8800681,0.0
使用时间转换组件后:
1753-1-1, 1.0,A,湖滨南路五龙大厦龙启阁603室,0.0
1753-2-1, 2.0,O,?0.0
1979-7-12, 3.0,T,2227826 8800681,0.0
1753-1-1, 4.0,C,湖滨南路五龙大厦龙启阁603室,0.0
1753-1-1, 5.0,H,2227826 8800681,0.0
分享到:
相关推荐
SQL Server Integration Service (SSIS) 是一种用于数据集成、转换和加载的企业级工具,它在SQL Server 2005及后续版本中扮演着重要角色。SSIS 是Microsoft为构建Business Intelligence (BI) 应用提供的一部分,与...
数据仓库与SQL Server Integration Services (SSIS):深入解析与应用指南 数据仓库与SQL Server Integration Services (SSIS)是现代企业数据管理和分析的核心组成部分。SSIS作为Microsoft SQL Server平台的一部分,...
基于SQLServer2005 Integration Service的数据导入导出的案例, XML源->数据表->Excel文件,使用数据转换组件,XML组件,Excel 文件组件,利用事务控制和隔离机制管理多个组件件的数据同步
MS SQL Server 2005 的SSIS(SQL Server Integration Services),它和其他的ETL工具,如Informatic 在对ETL的处理手法上大同小异,区别不大,都是按照ETL和DW的概念来开发和使用的。
SQL Server Integration Service(SSIS)是一款功能强大的数据集成工具,由 Microsoft 开发,用于将不同的数据源集成到一起。SSIS 提供了一个图形化的界面,允许用户设计、开发和管理数据集成项目。下面是 SSIS 入门...
### SQL Server Integration Services (SSIS) 入门手册 #### SSIS 概览 SQL Server Integration Services (SSIS) 是 Microsoft 提供的一款强大的企业级数据整合平台,它首次出现在 SQL Server 2005 中,作为 ...
sql server integration services 安装包,下载可用。
在企业级数据库管理和数据处理中,SQL Server Integration Services (SSIS) 是一个强大的工具,用于构建数据集成和ETL(提取、转换、加载)解决方案。SSIS 包含一系列组件,如数据流任务、控制流任务和事件处理,...
- 添加执行步骤,选择“SQL Server Integration Service 包”作为类型,并指定 SSIS 包文件路径。 - 创建定时执行计划,设定具体的执行时间,例如每晚12点。 9. **关键步骤说明**: - SSIS 包的文件保护级别设置...
SQL Server 2005中的SSIS(SQL Server Integration Services)是一种强大的ETL(Extract, Transform, Load)工具,用于在不同数据源之间提取、转换和加载数据。SSIS为构建企业级的数据集成解决方案提供了全面、可靠...
**SQL Server 2005 ETL专家系列:SQL Server 2005 Integration Services的扩展能力** 在数据仓库和商业智能(BI)领域,提取、转换和加载(ETL)是至关重要的过程,用于从各种数据源收集数据,对其进行处理,并将其加载...
SQL Server 2005 ETL专家系列之四:SQL Server 2005 Integration Service的扩展能力 SQL Server 2005 ETL专家系列之五:SQL Server 2005 Integration Service的高级应用 SQL Server 2005 ETL专家系列之六:SQL ...
SQL Server 2005 Integration Services(简称SSIS)是微软提供的一款强大的数据集成和转换工具,用于在企业级环境中执行ETL(提取、转换、加载)任务。它是在SQL Server 2000的Data Transformation Services(DTS)...
SQL Server Integration Services (SSIS) 作为一款企业级的提取、转换、加载(ETL)工具,在SQL Server 2005/2008版本中扮演着重要角色。而之前的SQL Server 2000版本中的Data Transformation Services (DTS) 在2005...
**SQL Server Integration Services (SSIS)** 是Microsoft Business Intelligence (BI) 解决方案的重要组成部分,专门用于实现数据集成和工作流任务。SSIS的强大之处在于能够高效地处理大量数据迁移、清洗和转换的...
它包含了一系列预定义的任务和数据流组件,但有时预定义的功能可能无法满足特定业务需求,这时就需要开发自定义组件来扩展SSIS的能力。 自定义组件分为两类:自定义控制流组件和自定义数据流组件。 1. **自定义...
**Microsoft SQL Server 2008 Integration Services (SSIS)** SQL Server 2008 Integration Services(简称SSIS)是微软提供的一款强大的数据集成和转换工具,它主要用于处理大量数据的ETL(Extract, Transform, ...
10. **可扩展性与自定义组件**:SSIS允许开发人员创建自定义任务和转换,以满足特定业务需求或优化性能。 通过学习这一系列课程,IT专业人士将掌握如何有效地管理和运行SQL Server 2005 Integration Services,从而...
【SQL Server 2005 ETL专家系列-05 SQL Server 2005 Integration Service的高级应用】 本课程是SQL Server 2005 ETL专家系列的一部分,主要聚焦于SQL Server 2005 Integration Services (SSIS) 的高级应用。ETL...
教程名称:SQL Server 2008 Integrate Service基础开发案例系列视频课程课程目录:【】(1):SSIS基本结构、开发和部署【】(10):向BIDS追加自定义组件【】(2):一个常见的ETL流程【】(3):使用参数和循环【】(4):...