You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Data Studio导入含连字符的GUIDS数据时列拆分问题求助

解决SQL Server Import扩展误将连字符识别为分隔符的问题
  • 调整导入向导的分隔符配置
    在SQL Server Import扩展的导入流程中,找到指定分隔符的步骤,取消勾选“连字符(-)”作为分隔符选项。如果文件仅含单列数据,甚至可以选择“无分隔符”模式,让工具直接将整行内容识别为单一列。

  • 使用格式文件强制单列映射
    创建XML格式文件,明确定义文件仅包含1列,直接读取整行内容。示例格式文件如下:

    <?xml version="1.0"?>
    <BCPFORMAT xmlns="http://schemas.microsoft.com/sqlserver/2004/bulkload/format" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <RECORD>
        <FIELD ID="1" xsi:type="CharTerm" TERMINATOR="\r\n" MAX_LENGTH="36"/>
      </RECORD>
      <ROW>
        <COLUMN SOURCE="1" NAME="GUIDColumn" xsi:type="SQLNVARCHAR"/>
      </ROW>
    </BCPFORMAT>
    

    导入时选择该格式文件,即可强制将每行完整内容导入到目标列,保留所有连字符。

  • 临时预处理文件
    用文本编辑器的批量替换功能,给每行GUID添加双引号(例如将00-15-BC-00-19-09-2B-E4替换为"00-15-BC-00-19-09-2B-E4"),然后在导入向导中设置双引号为文本限定符,工具会将引号内的内容视为单一列,不会拆分连字符。

  • 改用T-SQL BULK INSERT命令
    跳过图形化工具,直接用T-SQL命令精准控制导入逻辑:

    BULK INSERT YourTargetTable
    FROM 'D:\YourGUIDFile.txt'
    WITH (
        FIELDTERMINATOR = '\n',
        ROWTERMINATOR = '\r\n',
        DATAFILETYPE = 'char'
    );
    

    该命令会将每行完整内容导入到目标表的单列中,完全保留连字符格式。


内容的提问来源于stack exchange,提问作者user25774566

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 11:47:05