1、在Execute SQL Task组件中创建临时表,需要使用create显示创建,不能使用select into。
2、Dump数据到SqlServer中,存在数据文件情况下,Bulk Insert Task组件快于Data Flow Task。在Data Flow Task中,使用OLE DB Destination快于ADO NET Destination,设置OLE数据访问模式为fast。
如:
3、使用Bulk Insert Task直接从源DB导出数据到目标DB,需要先使用Data Flow Task将数据导入指定文件中。虽然Bulk速度很快,但是数据导入文件的速度受IO限制,所以当数据文件不存在情况下使用Bulk并不理想。
4、Lookup is a case sensitive and blank space sensitive.
So need trim the lookup column data and use either UPPER/LOWER case for comparison.
5、数据类型对照
SSIS->DB
double-precision float [DT_R8]->FLOAT
string [DT_STR]->CHAR
four-byte signed integer [DT_I4]->INT
database timestamp [DT_DBTIMESTAMP]->DATETIME
6、Error:The multi-part identifier could not be bound.
解决:不使用alias别名,直接使用表名应用列
7、大批量数据的更新方法和速度
1)在Data Flow Task中使用OLE DB Command直接更新
具体做法可参见:http://blog.csdn.net/zjcxc/article/details/1202876
2)先使用Execute SQL Task 创建临时表,然后使用Data Flow Task数据导入临时表,最后使用Execute SQL Task 执行Update 语句,根据临时表更新目标表
具体做法可参见:http://bidn.com/blogs/DanMatisis/ssas/689/ssis-updating-a-table-with-a-temp-table-not-an-ole-db-command
3)在数据库中创建物理表,使用Data Flow Task数据导入物理表,最后使用Execute SQL Task 执行Update 语句,根据物理表更新目标表
具体做法可参见:http://www.ssistalk.com/2009/10/29/ssis-why-is-my-data-flow-so-slow-with-an-ole-db-command-component/
速度1<2<3
原理:
1)OLE DB Command是逐条更新,每条数据的更新都需要扫描全表,慢于后两种方法的批量数据更新
2)数据导入物理表可以使用fast load(参考上面第2条) 方式,速度快于导入临时表
注意:
如果使用第2种方法,必须将目标数据源的Connection的属性RetainSameConnection设置成true。这样视为保证在Execute SQL Task 中创建的临时表可以继续在Data Flow Task中使用。大家都知道数据库一个连接一旦关闭,这个连接所创建的临时表也就消失,就是这个原因。
在Data Flow Task中,使用OLE DB Destination将数据导入临时表时,必须将OLE DB Destination的属性ValidateExtranalMetadata设置成false。因为在package运行之前,临时表是不存在的,所以一旦验证package就会失败。
在OLE DB Destination中使用New按钮创建临时表时,临时表名需要使用[]括起来。如Create table [##Temptable]...
8、like关键字的替代方法
Column LIKE '%abc%'
SSIS Expression:
Column LIKE 'abc%'
SSIS Expression:
Column
or
LEFT(
Column
, X) == "value"
or
Column LIKE '%abc'
SSIS Expression:
RIGHT(
, X) == "value"
or
LEFT(REVERSE(
), X) == "value"
9、case when 关键字的替代方法
case when column = "a" then 1
when column = "b" then 2
else 3 end
<Expression>
column == "a"?1:column == "b"?2:3
10、error:cannot convert between unicode and non-unicode string data types.
Resolve:convert the column data type to DT_STR (If you know the size)/ DT_TEXT in the data convertion transformation.
11、Convert Blank/Empty into NULL use
Derived Column
1- set the DEFAULT(NULL) for EVERY column that needs this behaviour
2-set up some Derived Column option in the package to return NULL if the value is missing.
TRIM(<YourColumnName>) == "" ?
(DT_STR,4,1252)NULL(DT_STR,4,1252) : <YourColumnName>
FYI:http://www.bidn.com/blogs/DonnyJohns/ssas/1919/handling-null-or-implied-null-values-in-an-ssis-derived-column
- 大小: 4.5 KB
分享到:
相关推荐
这一指南旨在为用户提供关于SSIS的基本概念、实用技巧以及来自有经验用户的建议。 #### 二、SSIS在SQL Server 2008中的新特性 随着SQL Server 2008的发布,SSIS也迎来了一系列重要的更新和增强功能。这些新特性...
对于已有SSIS经验的用户来说,继续使用SSIS更为便捷。 #### 七、总结 本文档详细介绍了如何利用SSIS从MsSql迁移到MySQL的具体步骤,包括前期准备、项目构建、任务配置以及测试与部署等关键环节。通过这些步骤,能够...
同时,也需要技术人员具备扎实的SQL Server知识和经验,以便更好地应对迁移过程中可能出现的各种挑战。通过对DTS到SSIS迁移过程的深入了解和规划,可以确保项目的顺利进行,从而充分利用SQL Server 2008的新特性。
- **Recursive Wrap-up**: 总结递归SSIS包的优点和应用场景。 6. **What The Sorts?!** - **Sort Configuration**: 介绍SSIS中排序组件的配置选项。 - **String Comparisons**: 讨论字符串比较的高级策略。 - ...
- 成果展示与经验总结 #### 四、总结 《Wrox Professional SQL Server 2005 Integration Services》是一本全面覆盖SQL Server 2005 Integration Services各个方面的重要参考书。无论是初学者还是经验丰富的开发...
总结来说,"SQL Server Integration Services:从 Project REAL 中获得的经验教训"这篇文章揭示了从DTS迁移到SSIS的过程中可能出现的复杂性和挑战,提供了宝贵的实施策略和技巧,对于那些正在进行或计划进行类似升级...
Elizabeth Vitt,Intellimentum和Hitachi Consulting的专家,以及Donald Farmer和Ashvini Sharma,Microsoft Corporation的成员,以及Stacia Misner,Hitachi Consulting的代表,共同提供了宝贵的洞察和经验,...
"融智技术学院官方论坛.url"是一个链接,指向一个在线社区或论坛,用户可以在其中讨论SQL Server 2012集成服务的相关问题,获取技术支持,或者与其他专业人士交流经验。 总结而言,微软SQL Server 2012集成服务发布...
SQL Server 2008是微软公司推出的一款关系型数据库管理系统,它在企业级数据管理、数据存储和分析...在学习过程中,不断练习和解决问题,将理论知识与实践经验相结合,是成长为一名合格的SQL Server管理员的关键步骤。
#### 八、总结 SQL Server 2005数据仓库设计涵盖了从数据装载到查询优化的全过程,旨在构建一个高性能、高可用性的数据仓库系统。通过上述介绍的关键技术和实践方法,可以帮助初学者快速掌握SQL Server 2005数据...
总结起来,这个项目旨在将传统的SSIS数据集成流程迁移到AWS云环境中,利用Lambda的无服务器特性,实现更灵活、可扩展的数据处理。开发者需要掌握C#编程、AWS服务操作、SSIS包设计和云安全等相关技能。通过此项目,...
总结,SQL Server 2005数据库简明教程全面涵盖了从基础到进阶的各种主题,适合初学者和有一定经验的学习者参考。通过深入学习并实践教程中的内容,你将能够熟练掌握SQL Server 2005的诸多功能,并能应对实际工作中...
该书由Reza Rad撰写,他拥有超过10年的数据库和软件应用经验,尤其在数据仓库方面有丰富的实战经历。 #### 二、基础知识介绍 - **Microsoft SQL Server 2014**: 这是一款由微软公司开发的关系型数据库管理系统...
### Pro SQL Server 2012 ...无论是初学者还是有一定经验的专业人士,都能从中受益匪浅。本书不仅提供了理论指导,更重要的是提供了大量实战案例,帮助读者将理论知识转化为实践技能,为自己的职业生涯增添宝贵的财富。
总结来说,《Microsoft SQL Server 管理员手册》全面讲解了SQL Server的各项管理技能,无论你是初学者还是经验丰富的管理员,都能从中获得宝贵的指导,提升你在SQL Server领域的专业能力。通过学习和实践,你将能够...
这本“数据库学习笔记”很可能是对SQL Server的深入探索和实践总结。 首先,笔记可能会涵盖SQL Server的基本概念,如数据库、表、索引、视图等。数据库是存储数据的容器,而表则是数据的具体组织形式。索引可以加速...