Alt+Insert快捷插入空行是最轻量即时的单条补数方式,支持自动处理自增主键、需手动填写NOT NULL字段、保存后才真正写入。

直接在表的数据视图里按 Alt + Insert 就能插一条空行,填完保存即可——这是最轻量、最即时的方式,适合单条或几条手动补数,不需要写 SQL,也不依赖权限或配置。
在数据视图里用快捷键插入新行
DBeaver 的表格数据视图(右键表 → “查看数据”)原生支持快速编辑。只要光标聚焦在数据区域,按下 Alt + Insert(Windows/Linux)或 Cmd + N(macOS),就会新增一行带绿色背景的空白记录。
- 字段值可直接输入;遇到
NOT NULL但无默认值的列,必须填,否则保存失败,错误信息类似Column 'xxx' cannot be null - 自增主键(
AUTO_INCREMENT)列会自动留空,提交时由数据库生成,别手动填数字,否则可能触发重复键错误Duplicate entry 'X' for key 'PRIMARY' - 修改后需点击工具栏的保存按钮(或按
Ctrl + S),DBeaver 才会真正执行INSERT,不保存=没写入
复制现有行再改字段值
当新数据和某条已有记录结构一致、仅需微调几个字段时,“复制一行”比从头填更快。选中目标行,点击下方工具栏的“复制行”图标(两个重叠的方块),或右键 → “复制所选行”。
- 复制后的新行仍为绿色,所有字段值都原样继承,包括
id这类主键——务必手动清空或改掉它,否则保存时报错Duplicate entry - 如果表有时间戳字段(如
created_at)设了CURRENT_TIMESTAMP默认值,复制时它也会被带过来;若想让它自动刷新,得删掉该字段的值,留空即可 - 外键字段(如
user_id)复制后仍是旧值,检查是否需要更新,避免插入后关联数据不存在
用 SQL 编辑器手写 INSERT(适合带逻辑的单条)
当需要精确控制值(比如插入含特殊字符、函数结果、子查询值),或者想留档复用时,直接写 INSERT 更可靠。在 DBeaver 的 SQL 编辑器里写好语句,执行前先用 SELECT 验证字段名和类型是否匹配。
- 推荐写全字段名:例如
INSERT INTO `user` (name, email, created_at) VALUES ('张三', 'zhang@example.com', NOW());,避免因表结构变更导致列数错位 - 字符串值必须用单引号包裹,数值不用;插入
NULL时就写NULL,别加引号,否则变成字符串'NULL' - 执行后注意底部状态栏提示,成功是
1 row(s) affected,失败则显示具体错误,比如Unknown column 'xxx' in 'field list'表示字段名拼错了
批量插入别硬敲,但单条真没必要上存储过程
看到网上一堆“用存储过程插 5 万条”的教程,容易误以为单条也得走这套流程。其实完全不必:存储过程适合固定模式+大批量+重复执行的场景,对单条而言,启动开销大、调试麻烦、还要求 CREATE PROCEDURE 权限。
- 如果你只是临时加一条测试数据,
Alt + Insert是最快路径;想复用逻辑,存个 SQL 片段更轻便 - 真要批量(>100 条),优先考虑 DBeaver 内置的“导入数据”(右键表 → 导入数据 → 选 CSV/Excel),比手写几十行
INSERT不易出错 - 唯一要注意的是:所有这些操作默认在事务里,关闭连接前没点保存,数据就丢了——这个细节很多人第一次用就踩坑


















