在 SSIS 中将 excel 列从常规转换为日期

Convert excel column from General to Date in SSIS

我在 SQL 中有一个 nvarchar(50) 列,格式为 mm/dd/yyyy。我正在尝试使用 SSIS 在 excel 中导入此数据。在 ssis 包中,我在执行 SQL 任务中创建了一个数据类型为 Date 的列 Date_1 (因为 .xlsx 文件需要动态创建)并且在我的数据流任务中我正在转换 Date_1迄今为止(DT_DATE)。但是在数据迁移之后,当我检查我的文件列时 Date_1 是一般数据类型而不是日期。有人可以帮我如何将 General 列转换为 Date

您在Microsoft Excel 界面中显示的下拉列表与数据类型无关它是Number Format 属性 用于更改值的方式显示在 Excel.

要更改此 属性,您需要在脚本任务中使用 Microsoft.Interop.Excel 库并更改 Excel.Range.NumberFormat 属性。例如:

Range rg = (Excel.Range)xlWorksheet.Cells[1,1];
rg.EntireColumn.NumberFormat = "MM/dd/yyyy";

参考资料