我试图将数据从平面文件转换为SQL日期。我使用变量来分隔月份,日期和年份,并在需要时添加必要的“0”,然后将它们连接在一起。这个工作正常工作,除非我遇到一个空白的日期,并且会抛出三个错误:“长度-1对于函数”SUBSTRING“无效。长度参数不能为负。将长度参数更改为零或a正值“,”评估函数“SUBSTRING”失败,错误代码为0xC004708B“,以及”评估函数“LEN”失败,错误代码为0xC00470C5。“。我有一个变量的日期1995年1月2日找到“/”使用ŸFINDSTRING(@[User::Scan_Date] , "/", 1)
长度-1对于“SUBSTRING”功能无效。 SSIS中的长度参数不能为负数
,然后我有一个月的例子是
@[User::Y] < 1 ? (DT_STR, 2, 1252) NULL(DT_STR, 2, 1252) : (LEN(SUBSTRING(@[User::Scan_Date] , 1, @[User::Y] -1)) < 2 ? "0" + SUBSTRING(@[User::Scan_Date] , 1, @[User::Y] -1) : SUBSTRING(@[User::Scan_Date] , 1, @[User::Y] -1))
正如我所说的,表达式工作正常,如果有日期,但如果它是空白的,那么我收到一个错误。