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

导入.csv文件至SQL Server时斯拉夫字母乱码问题咨询

解决SQL Server导入CSV时斯拉夫字母乱码问题
  • 确认CSV文件的真实编码
    不要默认认定是ANSI-1250,用Notepad++这类文本编辑器打开CSV,查看「编码」菜单里的实际编码。斯拉夫语系常见的还有UTF-8(带/不带BOM)、Windows-1251,乱码大概率是编码匹配错误导致的。

  • 导入向导的核心设置调整

    1. 进入SQL Server导入和导出向导,选择CSV数据源后,打开「高级」选项,把所有包含特殊字符的列的「数据类型」改为DT_WSTR(对应SQL的nvarchar类型),拒绝默认的DT_STR。
    2. 在「数据源」配置页,从「编码」下拉框里选择你刚确认的CSV真实编码(比如UTF-8、Windows-1251),不要硬套ANSI-1250。
    3. 到目标SQL表设置环节,确保对应字段的类型是nvarchar或nchar——varchar仅支持单字节编码,存储斯拉夫多字节字符必然乱码。
  • 向导失效时改用BULK INSERT命令
    用T-SQL命令能更精准控制编码,示例如下:

    BULK INSERT YourTargetTable
    FROM 'C:\YourFile.csv'
    WITH (
        FIELDTERMINATOR = ',',
        ROWTERMINATOR = '\n',
        CODEPAGE = '65001', -- 对应UTF-8,若为Windows-1251则填'1251'
        DATAFILETYPE = 'widechar',
        TABLOCK
    )
    

    注意替换表名、文件路径、分隔符,CODEPAGE参数必须和CSV实际编码一致。

  • 额外检查项

    • 导入后查看数据时,确保查询工具(比如SSMS)的显示设置正确:在SSMS的「工具」→「选项」→「环境」→「字体和颜色」里,选择支持斯拉夫字符的字体(比如Consolas、Arial Unicode MS)。
    • 如果CSV是从Excel导出的,导出时要选择「UTF-8(带BOM)」格式,避免编码信息丢失。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 11:59:53