Ssis
ssis 轉換 ddmonyyyy dd/mm/yyyy
大家好,正在嘗試轉換
2014 年 1 月 16 日 –> 2014 年 1 月 16 日。有任何想法嗎???我試圖避免可怕的表達?簡:1?FEB : 2 等等等等。
SSMS 會很樂意執行 SELECT MONTH(‘16JAN2014’) 來獲取月數,但是 MONTH(“16JAN2014”) 在 SSIS 中不起作用。
嗯…嘗試了程式碼,但下面不斷出現錯誤…
使用腳本組件執行轉換!當然一定要設置你的讀/寫變數!在 .NET 框架中使用特定的語言環境設置非常容易,因此腳本組件應該優於信任數據庫為您正確執行轉換。
使用腳本組件從字元串中解析 DateTime 值
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; }
在 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