使用SSIS将SQL Server 2016的BigInt导出至Excel 2016的类型映射问题
SSIS导出SQL Server BigInt至Excel 2016的类型映射方案
- 优先选用Excel的Number类型:
- SQL Server BigInt的取值范围是-9,223,372,036,854,775,808到9,223,372,036,854,775,807,Excel的Number类型(双精度浮点数)可完整覆盖该范围,不会丢失精度。
- 在SSIS类型映射中,将SQL Server的
BigInt映射为Excel的DT_R8(双精度浮点数),导出后在Excel中把该列小数位设为0,即可显示为整数形式。
- 备选方案:Excel的Text类型:
- 若无需在Excel中对该列进行数值运算,可映射为Text类型,避免格式兼容问题。SSIS中对应
DT_WSTR或DT_STR类型,导出后内容以文本形式存储。
- 若无需在Excel中对该列进行数值运算,可映射为Text类型,避免格式兼容问题。SSIS中对应
- 避坑提示:
- 不要使用Excel的Integer类型,其最大值仅为2,147,483,647,远小于BigInt的上限,会导致数据溢出丢失。
内容的提问来源于stack exchange,提问作者James
相关产品推荐
相关产品推荐

