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

BigQuery导入本地CSV文件后两列值异常问题求助

排查BigQuery导入CSV后School_Name/School_Code列值异常的思路与解决办法

一、先确认CSV文件本身的内容是否正确

  • 用纯文本编辑器(比如Notepad++、VS Code)打开CSV,别用Excel(避免自动格式转换或隐藏字符),重点检查:
    • School_Name和School_Code列的实际值,有没有真的是空值或者不符合预期的内容
    • 列顺序是否和BigQuery表的Schema完全对应,会不会是列错位导致数据填到了错误的字段里
    • CSV的分隔符是否正确(比如是不是用了分号而非逗号),分隔符不对会直接导致列解析混乱
    • 空值的表示:CSV里的空单元格是不是被写成了'NULL'字符串、空格或者其他特殊字符,BigQuery没识别成NULL反而填充了默认值

二、检查BigQuery导入时的参数配置

  • 导入过程中盯着这几个关键参数:
    • 字段分隔符:必须和CSV实际用的分隔符一致,错了就会列映射错误
    • 跳过表头:如果CSV有表头行,一定要勾选这个选项,不然表头会被当成数据行,后面的列全乱套
    • 空值处理:确认导入设置里是否把CSV的空值正确解析为BigQuery的NULL,而不是自动填充'Default'或'0'
    • 允许字段省略:如果CSV里这两列确实存在空值,必须开启这个选项,防止BigQuery强制填充默认值满足约束

三、验证BigQuery表的Schema配置

  • 打开表的Schema详情,检查这两个列的属性:
    • 有没有设置默认值约束(比如DEFAULT 'Default'、DEFAULT '0'),要是有,导入时空值会被自动替换成默认值
    • 列的模式(Mode)是不是NULLABLE,如果设成了REQUIRED,BigQuery会自动填默认值来满足非空要求
    • 确认数据类型确实是STRING,别误设成INTEGER或者其他类型,导致转换出错

四、测试小批量数据导入

  • 从原CSV里截个10行左右的小样(要包含空值和非空值的情况),存成新的CSV文件,导入到临时表试试:
    • 如果小样导入正常,说明原CSV大概率有格式问题(比如某一行有未闭合的引号,导致后面的列解析全乱)
    • 如果小样还是异常,那问题肯定在Schema或者导入参数上,再针对性排查

五、排查CSV的编码问题

  • 检查CSV的编码格式(比如UTF-8、GBK),BigQuery默认认UTF-8,要是CSV是其他编码,可能导致字符解析错误,触发默认值填充
  • 可以把CSV转成UTF-8编码后再重新导入

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 07:47:07