为什么要 Excel 转 SQL?
业务同事给你的往往是 Excel 或 CSV,而数据库需要的是结构化 SQL。无论是测试造数、历史数据迁移,还是把 CSV 导出变成批量 INSERT 脚本,Excel 转 SQL 都是最快的方式。
本教程以 ComTools 免费 Excel 转 SQL 在线工具 为例,讲解完整流程。
第一步:准备表格
| 规则 | 说明 |
|---|---|
| 第 1 行 | 列名(表头,必填) |
| 数据 | 从第 2 行开始 |
| 格式 | .xlsx、.xlsm、.xltx、.xltm、.csv |
旧版 .xls |
先在 Excel 中另存为 .xlsx |
| CSV 编码 | 建议 UTF-8;BOM 可自动识别 |
上传前清理:去掉合并单元格表头、修正重复列名、统一日期格式(推荐 yyyy-MM-dd)。
第二步:上传并选择语句类型
打开 Excel 转 SQL 工具 并上传文件。在顶栏配置:
- Sheet — 多工作表时选择目标页
- 语句类型 — INSERT(新增)、UPDATE(修改)、DELETE(删除)、SELECT(校验)
- 表名 — 如
dbo.Users或#TempImport临时表 - 数据库类型 — SQL Server、MySQL、PostgreSQL、SQLite、Oracle
可选:包含建表语句、批量 INSERT、字段名加引号。
第三步:映射矩阵
在映射矩阵中将 Excel 列对应到数据库字段:
- 脚本列 — 目标字段名
- 选用 — 是否参与生成
- 生成数据 — GUID、Today、固定 1/0
- WHERE / SET — UPDATE、DELETE 时使用
列头可左右拖动排序、向下拖动删除列、右侧调整列宽。
第四步:生成并下载 SQL
点击 Generate SQL。小文件可复制预览;大文件(500 行以上)建议 下载 .sql。
务必先在 测试库 执行,大批量建议每 500–1000 行分批运行。
选哪种语句类型?
| 目标 | 类型 | 延伸阅读 |
|---|---|---|
| 导入新数据 | INSERT | INSERT 教程 |
| 修改已有记录 | UPDATE | UPDATE 教程 |
| 按主键删除 | DELETE | DELETE 教程 |
| 完整导入流程 | 综合 | 导入指南 |
支持的数据库
- SQL Server —
dbo.Table、#temp临时表 - MySQL — 反引号标识符
- PostgreSQL — 双引号标识符
- SQLite — 本地测试
- Oracle — 企业环境
工具会自动适配引号、NULL 与标识符语法。
常见错误
| 错误 | 处理 |
|---|---|
| 无效列名 | 映射矩阵中与数据库字段名完全一致 |
| 类型转换失败 | 清理整数列中的非数字文本 |
| 主键冲突 | 改用 UPDATE,或先用 Excel 去重 |
| CSV 中文乱码 | 另存为 UTF-8 CSV |
详见 常见错误页。