DBeaver导出单表结构为XML最稳路径是右键表→Export Data→选XML格式并勾选“Export DDL only”;导出整库DDL XML需全选表后批量操作,每张表生成独立XML文件,不支持跨schema或视图等对象。

直接导出单表结构为 XML,用 DBeaver 右键菜单最稳;想导出整库 DDL(不含数据)的 XML,必须勾选“Export DDL only”——漏掉这一步会混入大量数据行,文件膨胀且难解析。
右键表 → Export Data → 选 XML 格式
这是最快路径,适用于 MySQL、PostgreSQL、Oracle 等主流数据库。操作时注意三点:
- 在数据库导航树中**右键点击具体表名**(不是库名或 schema),再选
Export Data,否则导出选项可能灰显或不可用 - 导出向导第二步“Output Settings”里,
Format下拉框选XML,别误选XML (with data)或其他变体(DBeaver 24.1+ 界面已明确区分) - 如果只要字段定义(列名、类型、是否为空、主键等),务必勾选
Export DDL only;不勾则默认导出查询结果集,含实际数据,XML 文件体积陡增且结构混乱
导出整库结构 XML 需绕过“转储数据库”功能
工具 → 转储数据库 生成的是 SQL 文本(.sql),不是 XML。要获得整库 DDL 的 XML,只能批量操作表:
- 在导航树中展开目标库 → 展开
Tables节点 → 按住Ctrl多选多个表(或Ctrl+A全选) - 右键任意一个被选中的表 →
Export Data→ 向导中仍选XML格式,并确认勾选Export DDL only - 输出路径建议设为单独文件夹,因多表导出会生成多个
table_name.xml文件(命名由outputFilePattern控制,默认含表名和时间戳)
XML 导出内容与常见兼容性问题
DBeaver 生成的 XML 是自描述结构,但非标准 XSD,不同数据库导出字段略有差异:
- MySQL 表导出含
节点,带type、nullable、key属性;PostgreSQL 还多default和identity字段 - 若后续要用 Python 或 XSLT 加工,注意 DBeaver 默认编码是
UTF-8,但导出设置里可手动改成GBK(尤其 Windows 下喂给旧系统时) - 避免用 Excel 直接双击打开 XML 文件——它会尝试用 XML 导入向导解析,但 DBeaver 的 XML 不符合 Excel 期望的扁平 schema,大概率报错或显示空白
真正容易被忽略的是:XML 导出不支持跨 schema 批量选择(比如同时选 public 和 audit 下的表),必须分 schema 操作;另外,视图、函数、存储过程无法通过此路径导出为 XML,它们不在 Export Data 覆盖范围内。










