SSIS在设置日期时间值时失败

时间:2018-06-06 14:53:36

标签: sql-server date datetime ssis date-formatting

我有两台服务器。它们都使用区域和语言以及德语dd.mm.yyyy

中的DateTime格式运行

我部署了一个使用datetime参数的SSIS包,而其中一个服务器接受格式dd.mm.yyyy而另一个服务器不接受。{/ p>

参数值设置如下:

SELECT @ssis_command = @ssis_command + ' /SET "\"\Package.Variables[User::business_ts].Properties[Value]\"";"\"' + CONVERT(VARCHAR(50), GETUTCDATE(), 104) + ' ' + REVERSE(SUBSTRING(REVERSE(CONVERT(VARCHAR(50), GETUTCDATE(), 114)), 5, 46)) + '\"" '

select CONVERT(VARCHAR(50), GETUTCDATE(), 104) + ' ' + REVERSE(SUBSTRING(REVERSE(CONVERT(VARCHAR(50), GETUTCDATE(), 114)), 5, 46))

所以我按以下格式获取日期时间:dd.mm.yyyy hh:mm:ss但第二台服务器需要英国/法国格式:mm/dd//yyyy hh:mm:ss

两台服务器都有英文版的SQL Server。

两个服务器中DBCC USEROPTIONS的输出完全相同。

textsize    2147483647
language    us_english
dateformat  mdy
datefirst   7
lock_timeout    -1
quoted_identifier   SET
arithabort  SET
ansi_null_dflt_on   SET
ansi_warnings   SET
ansi_padding    SET
ansi_nulls  SET
concat_null_yields_null SET
isolation level read committed
SSIS包的

Locale Id设置为德国

对于期望英国日期格式的服务器中可能出现什么问题的任何想法? SQL Server Integration Services是否有任何默认日期格式?

Windows Server 2016

SQLServer 2017

编辑:

这是一个包含SSIS包IDE属性窗口的屏幕截图。在设计时,它是dd.mm.yyyy格式与德语(德国)LocaleID,但在XML视图中它显示mm / dd / yyyy格式。 enter image description here

enter image description here

<DTS:Variable
  DTS:CreationName=""
  DTS:Description="Timestamp for validity. (send to the package at ignition)"
  DTS:DTSID="{4D953920-D7BA-46E8-9683-45FDEE817661}"
  DTS:IncludeInDebugDump="2345"
  DTS:Namespace="User"
  DTS:ObjectName="business_ts">
  <DTS:VariableValue
    DTS:DataType="7">1/1/1950</DTS:VariableValue>
</DTS:Variable>

0 个答案:

没有答案