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

为什么我在MySQL Workbench中无法向SQL数据库插入值?

问题排查结果

核心原因

  • 字段长度溢出:建表时将Vinicola表的emailVinicola字段类型设置为VARCHAR(15),但待插入的邮箱地址(比如vinhosdurigan@yahoo.com)长度远超15个字符,触发字段长度校验规则,导致所有Vinicola表的插入语句执行失败。
  • 外键依赖连锁失败:Vinho表的codVinicola字段关联Vinicola表的主键,Vinicola无有效数据的前提下,Vinho的插入操作会触发外键约束失败,无法写入数据。
  • 额外可能原因:若你使用的MySQL Workbench关闭了事务自动提交,插入语句执行后没有手动提交事务,也会导致数据没有持久化到表中。

解决方案

  1. 先调整Vinicola表的邮箱字段长度,执行以下修改语句:
ALTER TABLE `mydb`.`Vinicola` MODIFY COLUMN `emailVinicola` VARCHAR(50) NULL;
  1. 按原有顺序重新执行插入语句,保证先插入Regiao表数据,再插入Vinicola表数据,最后插入Vinho表数据,符合外键依赖逻辑。
  2. 执行完插入操作后,若未开启自动提交,手动执行COMMIT;命令提交事务,或点击MySQL Workbench界面的提交按钮完成数据写入。

验证方法

执行以下查询语句确认数据是否写入成功:

SELECT * FROM `mydb`.`Regiao`;
SELECT * FROM `mydb`.`Vinicola`;
SELECT * FROM `mydb`.`Vinho`;

内容的提问来源于stack exchange,提问作者Gabriel Pulga

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 21:27:02