将超过 255 列的数据导出到 Excel 的解决方法
Workaround for exporting data to Excel with more than 255 columns
SSMS 和 SSRS 到 Excel 在复制粘贴时启用超过 255 列。
SSIS 不允许将超过 255 列导出到 Excel 2007。
有没有办法覆盖它?
参考link。最好是在 SSIS 中创建一个脚本,以将内容复制为 csv 格式。您可以使用 c# 或 VB.Net.
问题
当exporting to an Excel Files using Sql server data tools
时有很多限制
解决方法
您可以采取一些解决方法来实现此目的:
- 创建一个数据流任务,将您的数据导出到
FlatFile
(csv)
- 将目标文件名存储在变量中
- 创建另一个数据流任务,使用具有类似功能的脚本任务将您的 csv 文件转换为 Excel 文件
注意:您必须将Microsoft.Office.Interop.Excel.dll
文件添加到以下目录(.Net Framework dll目录)C:\Windows\Microsoft.NET\Framework\v2.0.50727
和(sql服务器数据工具dll目录) C:\Program Files\Microsoft SQL Server0\DTS\Binn
(使用 vs 2005 和 sql 2008)然后将此 dll 作为参考添加到您的脚本任务中
Imports Microsoft.Office.Interop
Public Sub ConvertCSVToExcel(Fromcsv As String, Toxlsx As String)
Dim Exl As New Excel.Application()
Try
Dim wb1 As Excel.Workbook = Exl.Workbooks.Open(Fromcsv, Format:=4)
wb1.SaveAs(Toxlsx, FileFormat:=XlFileFormat.xlOpenXMLWorkbook)
wb1.Close()
Exl.Quit()
Catch ex As Exception
Exl.DisplayAlerts = False
Exl.Quit()
End Try
End Sub
第三方组件
或者您必须使用第三方组件,例如 cozyRoc SSIS+
旁注
如果您希望从 excel 导入超过 255 列的数据,您可以按照此 Link
参考资料
第三方组件
解决方法
仅供任何人访问此页面并使用 SQL 服务器导入和导出向导 导出到 excel
在选项卡中 查看数据类型映射
数据类型映射部分:==> 双击长度超过 255 个字符的列,打开其 Column Conversion Details 对话框,然后关闭它
然后在结束的旁边...Lool
SSMS 和 SSRS 到 Excel 在复制粘贴时启用超过 255 列。
SSIS 不允许将超过 255 列导出到 Excel 2007。 有没有办法覆盖它?
参考link。最好是在 SSIS 中创建一个脚本,以将内容复制为 csv 格式。您可以使用 c# 或 VB.Net.
问题
当exporting to an Excel Files using Sql server data tools
时有很多限制解决方法
您可以采取一些解决方法来实现此目的:
- 创建一个数据流任务,将您的数据导出到
FlatFile
(csv) - 将目标文件名存储在变量中
- 创建另一个数据流任务,使用具有类似功能的脚本任务将您的 csv 文件转换为 Excel 文件
注意:您必须将Microsoft.Office.Interop.Excel.dll
文件添加到以下目录(.Net Framework dll目录)C:\Windows\Microsoft.NET\Framework\v2.0.50727
和(sql服务器数据工具dll目录) C:\Program Files\Microsoft SQL Server0\DTS\Binn
(使用 vs 2005 和 sql 2008)然后将此 dll 作为参考添加到您的脚本任务中
Imports Microsoft.Office.Interop
Public Sub ConvertCSVToExcel(Fromcsv As String, Toxlsx As String)
Dim Exl As New Excel.Application()
Try
Dim wb1 As Excel.Workbook = Exl.Workbooks.Open(Fromcsv, Format:=4)
wb1.SaveAs(Toxlsx, FileFormat:=XlFileFormat.xlOpenXMLWorkbook)
wb1.Close()
Exl.Quit()
Catch ex As Exception
Exl.DisplayAlerts = False
Exl.Quit()
End Try
End Sub
第三方组件
或者您必须使用第三方组件,例如 cozyRoc SSIS+
旁注
如果您希望从 excel 导入超过 255 列的数据,您可以按照此 Link
参考资料
第三方组件
解决方法
仅供任何人访问此页面并使用 SQL 服务器导入和导出向导 导出到 excel
在选项卡中 查看数据类型映射 数据类型映射部分:==> 双击长度超过 255 个字符的列,打开其 Column Conversion Details 对话框,然后关闭它 然后在结束的旁边...Lool