地址 CSV 欄名對不上系統欄位,匯入前怎麼做欄位對照表?

欄名相似不代表語意相同。來源的 city 可能放縣市,目標系統的 City 可能要求鄉鎮市區;address1 可能含完整地址,也可能只放道路門牌。匯入前要建立欄位對照表,使用幾筆虛構資料驗證,而不是看到英文名稱就自動連線。
欄位對照表至少要有五欄
| 來源欄 | 來源範例 | 目標欄 | 轉換 | 結論 |
|---|---|---|---|---|
| county | 範例市 | region | 不轉字 | 待目標說明確認 |
| district | 示範區 | city | 不轉字 | 可能 |
| street | 學習路8號 | address_line_1 | 保留原文 | 可映射 |
| unit | 3樓之2 | address_line_2 | 不自行改成室號 | 可映射 |
| memo | 放管理室 | delivery_note | 不放地址欄 | 可映射 |
這張表的「結論」描述欄位映射是否有證據,不是地址本身是否存在。若目標系統提供範例匯入檔、欄位說明或錯誤訊息,優先以它們為準;沒有文件時,先用少量測試資料,不要一次匯入整批。
實作流程
- 先列出來源檔所有欄名、型別、空值率與兩三筆去識別範例。
- 取得目標系統的匯入模板,確認必填欄、最大長度與允許值。
- 對每欄填入一個且只有一個目標用途;無法確認就標未映射。
- 對拆分或合併操作寫明規則,例如縣市與行政區不得互換。
- 產生十筆測試檔,包含缺區、含樓室、英文地址與配送備註。
- 測試匯入後讀回,確認每個值落在預期欄,而不是只看「成功」訊息。
- 正式匯入前凍結這版對照表,變更欄位時另開版本。
Power Query 可以重命名、拆分與轉型,但它不會知道業務系統的 City 真正代表哪一層。若一個來源欄要拆到多個目標欄,可先用地址欄位拆分工具取得候選,再把不能可靠拆出的列留給人工。
完整地址的批次分流可用批次地址整理工具;整理過程與原始欄保存方式見Excel 地址批次整理指南。匯入成功只代表系統接受檔案,不表示欄位語意、地址存在或投遞結果正確,正式上線前仍要抽查讀回資料。
欄位對應修正後,再按重複地址名單整理指南比對來源識別與地址元件,避免因欄名錯置誤刪資料。
不只欄名,還要核對粒度與必填性
來源的 address 可能是一整串中文地址,目標的 address_line_1 卻只接受道路門牌;來源的 postal_code 可能只有前三碼,目標欄則要求完整碼。即使欄名完全相同,資料粒度仍可能不相容。對照表應增加 source_definition、target_definition、required、allowed_length、example_readback。
遇到 City/District/Region 等易混欄位,先找目標系統官方說明,再用一筆虛構資料匯入並讀回顯示頁。若讀回後縣市重複、區名消失或地址被截斷,就表示映射仍錯,不應擴大到整批。
上線前做負面測試
刻意準備缺行政區、過長地址、空白郵遞區號、樓室另欄與同名欄位,確認目標系統會明確拒絕或保留,而不是靜默移位。另放一個唯一測試標記在非敏感欄,檢查它沒有被寫進地址欄。
正式匯入後,按來源 record_id 抽查第一筆、最後一筆、每種例外和隨機樣本。對照表、轉換版本與匯入時間一起保存;目標欄位改版時重新驗證,不沿用舊映射。格式整理成功不表示業務欄位放對位置,兩項驗收要分開記錄。
多語欄名也要固定字典
同一來源可能把「縣市」改成 County,或把「地址二」翻成 Address 2。不要每月靠人猜欄名,建立接受別名清單與拒絕未知欄名規則。遇到新欄名先停在預覽,更新資料字典並補測試;靜默忽略未知欄可能讓整批樓室資料消失。