gpt4 book ai didi

sql - 导出包含大文本列的 SQL Server 表

转载 作者:行者123 更新时间:2023-12-04 22:29:42 25 4
gpt4 key购买 nike

我必须从 SQL Server 导出一个表,该表包含一个包含大量文本内容的列,文本的最大长度可达 100,000 个字符。

当我使用 Excel 作为导出目标时,我发现此文本的长度被限制并截断为 32,765。

是否有保留长度的导出格式?

笔记:

  • 我最终会将这些数据导入另一个 SQL Server
  • 目标 SQL Server 位于另一个网络中,因此链接服务器和其他本地选项不可行
  • 我无法访问实际的服务器,因此很难生成备份
  • 最佳答案

    Excel specifications and limits 中所述单个 Excel 单元格中最多可存储 32,767 个字符;因此为什么您的数据被截断。

    您最好导出为 CSV,然而 ,请注意 bcp 中不支持引用标识的 CSV 文件/BULK INSERT直到 SQL Server 2019(当前为预览版)。您可以使用 || 之类的字符但是,要表示分隔的字段,如果您有任何换行符,您也需要选择不同的行分隔符。然而,SSIS 和其他 ETL 工具确实支持引用标识的 CSV 文件;所以你可以使用类似的东西。

    否则,如果您需要导出如此长的值并希望尽可能多地使用 Excel(由于那些糟糕的 ACE 驱动程序,我个人实际上不建议这样做),我建议导出 (n)varchar(MAX)值到其他东西,如文本文件,并使用包含的主键的值命名每个文件。然后,当您导入数据时,您可以检索 (n)varchar(MAX)再次从每个单独的文件中获取值。

    关于sql - 导出包含大文本列的 SQL Server 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54225640/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com