jho*_*owe 3 ssis ssis-expressions
大家好,正在尝试转换
2014 年 1 月 16 日 --> 2014 年 1 月 16 日。有任何想法吗???我试图避免 ? 一月:1?2 月 : 2 等
SSMS 会很高兴地使用 SELECT MONTH('16JAN2014') 来获取月数,但是 MONTH("16JAN2014" ) 在 SSIS 中不起作用。
嗯...尝试过代码,但在下面不断出现错误...

使用脚本组件来执行转换!当然一定要设置你的读/写变量!在 .NET 框架中使用特定的区域设置非常容易,因此脚本组件应该比信任数据库为您正确执行转换要好。
使用脚本组件从字符串中解析日期时间值
using System.Globalization;
...
public void Main()
{
String str = ( String )Dts.Variables[ "StringVariable" ].Value;
// Good candidate for another variable, this is just an example.
String format = "ddMMMyyyy";
CultureInfo provider = CultureInfo.InvariantCulture;
DateTime dt = DateTime.Parse( str, format, provider );
Dts.Variables[ "DateTimeVariable" ].Value = dt;
Dts.TaskResult = ( int )ScriptResults.Success;
}
Run Code Online (Sandbox Code Playgroud)
在 VB 中,如果这就是你的滚动方式™
Imports System.Globalization
...
Public Sub Main()
Dim str As String = Dts.Variables("StringVariable").Value
Dim format As String = "ddMMMyyyy"
Dim provider As CultureInfo = CultureInfo.InvariantCulture
Dim dt As DateTime = Date.ParseExact(str, format, provider)
Dts.Variables("DateTimeVariable").Value = dt
Dts.TaskResult = ScriptResults.Success
End Sub
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5454 次 |
| 最近记录: |