在 SSIS 中将 varchar 数据类型转换为日期时间
Posted
技术标签:
【中文标题】在 SSIS 中将 varchar 数据类型转换为日期时间【英文标题】:Conversion of varchar data type to datetime in SSIS 【发布时间】:2020-09-25 13:03:16 【问题描述】:我正在尝试在 SSMS 上运行一个存储过程,我在 SSIS 上开发并在 SSMS 上调用它,我遇到了数据转换问题,这是我所做的设置和错误
当我像这样在 ssms 上运行它时:
执行 dbo.PS_00790_SyntheseDG_Commission_EchF_InfoTechq @DateDebPer = '01/01/2015' , @DateFinPer = '31/12/2020'
它可以工作,但我想使用 ssis 包从 ssis_catalogue 运行它
【问题讨论】:
【参考方案1】:不要使用模棱两可的日期格式。如果您正在使用字符串作为日期,则使用yyyyMMdd
或yyyy-MM-ddThh:mm:ss.nnnnnnn
。然而,SSIS 有一个 datetime
数据类型,因此请改用它,并且首先不要遭受任何隐式转换。
【讨论】:
我对另一个存储过程做了同样的事情,它可以工作!但不是在这个:( 做了 what @wassimremmas 吗? 我在屏幕截图中所做的相同设置 但是在屏幕截图中,变量的数据类型是 string...这些显然是日期,所以请使用datetime
数据类型。
如果变量的数据类型[User::DateDebPer]
是datetime
并且参数在执行T-SQL 任务参数中配置为date
那么问题与SSIS 无关问题出在您的程序定义中,@wassimremmas 。你应该发布它的定义。以上是关于在 SSIS 中将 varchar 数据类型转换为日期时间的主要内容,如果未能解决你的问题,请参考以下文章
在 MySQL 中将 int 转换为 varchar 数据类型
如何在 SQL Server 中将 varchar 数据转换为时间