我有一个 SSIS 包用于加载数据;如您所知,数据文件中有 Y/N char(1) 标志,当我尝试将它们作为位标志加载到 SQL Server 时。我将数据文件中的列指定为 String [DT_STR]
,并使用以下表达式进行数据转换以将它们转换为布尔值(即使一开始将它们指定为 DT_BOOL,我也收到了相同的转换错误,尽管 SSIS 要求我说明哪些值应被视为布尔值):
[ColumnName] == "Y" ? (DT_BOOL)1 : (DT_BOOL)0
运行该程序包时出现错误,并显示 无效的转换规范字符值
和 由于可能会丢失数据,因此无法转换该值
,实际导入到SQL Server(通过OLE DB Destination)时发生了这种情况。
我还需要做什么才能正确地进行转换?